FLiT icon indicating copy to clipboard operation
FLiT copied to clipboard

Incremental Build test does not correctly test executable build

Open JohnJacobsonIII opened this issue 3 years ago • 0 comments

Bug Report

Description

The incremental build test in tst_incremental_build.py currently relies on make --touch to test the make system. Due to the PHONY indirection added to fix #333 this no longer works; make --touch assumes a recipe updates its target directly and thus touches the target, but the separation of recursive calls means executables are built indirectly in recursive make calls, and not directly by the no-op recipe in their rule.

Suggested Fix

Per @mikebentley15, using the existing fake compilers fake_gcc4.py or fake_clang34.py should correctly identify when Make generates the file, instead of relying on the make --touch logic, but will also still allow for efficient testing.

Alternatively (if for some reason this doesn't work) we could call make and inspect modification times directly, or use some method to determine when files are being updated to maintain this test.

JohnJacobsonIII avatar Jun 15 '21 17:06 JohnJacobsonIII