Also try against 4.1.0 (recently released) On Mon, Feb 1, 2021 at 10:44 AM Bill Deegan <b...@baddogconsulting.com> wrote:
> Any chance you can file this on SCons's github repo? > > On Mon, Feb 1, 2021 at 10:39 AM Robert Luberda <rob...@debian.org> wrote: > >> Package: scons >> Version: 4.0.1+dfsg-2 >> Severity: normal >> Tags: upstream >> >> Hi, >> >> I'm attaching a simple test project that: >> - contains hello2.c file that is symbolic link to hello.c file; >> - and sets 'MD5-timestamp' as the decider function. >> >> Previously (what I'm proving at the bottom of this mail) scons used >> to build hello2 when hello.c was changed. In the current version of >> scons only hello gets rebuilt. >> >> # Initial compilation with scons 4: >> robert@vox:/tmp/proj$ scons --debug=explain >> scons: Reading SConscript files ... >> scons: done reading SConscript files. >> scons: Building targets ... >> scons: building `hello.o' because it doesn't exist >> gcc -o hello.o -c hello.c >> scons: building `hello' because it doesn't exist >> gcc -o hello hello.o >> scons: building `hello2.o' because it doesn't exist >> gcc -o hello2.o -c hello2.c >> scons: building `hello2' because it doesn't exist >> gcc -o hello2 hello2.o >> scons: done building targets. >> >> # The following command changes both hello.c and hello2.c... >> robert@vox:/tmp/proj$ sed -i -e 's/word/WoRd/i' hello.c >> >> # ... but hello2.c is not rebuilt: >> robert@vox:/tmp/proj$ scons --debug=explain >> scons: Reading SConscript files ... >> scons: done reading SConscript files. >> scons: Building targets ... >> scons: rebuilding `hello.o' because: >> `hello.c' changed >> `/usr/bin/gcc' changed >> gcc -o hello.o -c hello.c >> scons: rebuilding `hello' because: >> `hello.o' changed >> `/usr/bin/gcc' changed >> gcc -o hello hello.o >> scons: done building targets. >> >> robert@vox:/tmp/proj$ scons -v >> SCons by Steven Knight et al.: >> SCons: v4.0.1.c289977f8b34786ab6c334311e232886da7e8df1, >> 2020-07-17 01:50:03, by bdbaddog on ProDog2020 >> SCons path: ['/usr/lib/python3/dist-packages/SCons'] >> Copyright (c) 2001 - 2020 The SCons Foundation >> >> >> >> After downgrading scons to 3.1.2+dfsg-0.1, it works as I would expect: >> >> # Initial compilation with scons 3: >> robert@vox:/tmp/proj$ scons --debug=explain >> scons: Reading SConscript files ... >> scons: done reading SConscript files. >> scons: Building targets ... >> scons: building `hello.o' because it doesn't exist >> gcc -o hello.o -c hello.c >> scons: building `hello' because it doesn't exist >> gcc -o hello hello.o >> scons: building `hello2.o' because it doesn't exist >> gcc -o hello2.o -c hello2.c >> scons: building `hello2' because it doesn't exist >> gcc -o hello2 hello2.o >> scons: done building targets. >> >> # Still both files are changed by the following command: >> robert@vox:/tmp/proj$ sed -i -e 's/word/WORd/i' hello.c >> # ... and both are rebuilt: >> robert@vox:/tmp/proj$ scons --debug=explain >> scons: Reading SConscript files ... >> scons: done reading SConscript files. >> scons: Building targets ... >> scons: rebuilding `hello.o' because: >> `hello.c' changed >> `/usr/bin/gcc' changed >> gcc -o hello.o -c hello.c >> scons: rebuilding `hello' because: >> `hello.o' changed >> `/usr/bin/gcc' changed >> gcc -o hello hello.o >> scons: rebuilding `hello2.o' because: >> `hello2.c' changed >> `/usr/bin/gcc' changed >> gcc -o hello2.o -c hello2.c >> scons: rebuilding `hello2' because: >> `hello2.o' changed >> `/usr/bin/gcc' changed >> gcc -o hello2 hello2.o >> scons: done building targets. >> >> robert@vox:/tmp/proj$ scons -v >> SCons by Steven Knight et al.: >> script: v3.1.2.bee7caf9defd6e108fc2998a2520ddb36a967691, >> 2019-12-17 02:07:09, by bdeegan on octodog >> engine: v3.1.2.bee7caf9defd6e108fc2998a2520ddb36a967691, >> 2019-12-17 02:07:09, by bdeegan on octodog >> engine path: ['/usr/lib/scons/SCons'] >> Copyright (c) 2001 - 2019 The SCons Foundation >> >> >> Regards, >> robert >> >> >> -- System Information: >> Debian Release: bullseye/sid >> APT prefers unstable-debug >> APT policy: (990, 'unstable-debug'), (990, 'unstable'), (990, >> 'testing'), (990, 'stable'), (500, 'stable-updates'), (500, 'unstable'), >> (500, 'stable') >> Architecture: amd64 (x86_64) >> Foreign Architectures: i386 >> >> >> Versions of packages scons depends on: >> ii python3 3.9.1-1 >> ii python3-pkg-resources 51.3.3-1 >> >> scons recommends no packages. >> >> scons suggests no packages. >> >> -- no debconf information >> >