[Scons-users] Hierarchical builds not possible (TAR/RPM packaging)
Werner Reisberger
wr at pure.ch
Tue Jan 4 02:52:09 EST 2022
The RPM packaging fails when I call it in a lower directory with
Sconscript(...). The reason is, that the intermediate TAR file contains
the directory where the SConstruct file is.
I tried to make a tar file in a sub directory without the upper path but
wasn't successful. The call
SConscriptChdir(1)
SConscript('build/SConscript')
does not have any effect although the SCons man page says:
By default, scons changes its working directory to the directory
in which each subsidiary SConscript file lives.
My setup:
- => SConstruct file
build/SConscript
build/bin/a.sh
Whatever I try the builded base.tar.gz contains
build/bin/a.sh
instead of
bin/a.sh
This behaviour breaks completly the building of RPM's in subdirectories
My test can be retrieved here:
https://github.com/wrbr/sconstest/tree/main/build
I also see contradictory statements on the user page and on the man
page. The user page says:
>> ... unlike standard recursive use of Make, SCons stays in the
>> top-level directory (where the SConstruct file lives)
https://scons.org/doc/production/HTML/scons-user/ch14s02.html
That's also what my tests are showing. However, according to the man
page there should be a way to mimic the make behaviour with
SConscriptChdir(1).
Please explain.
Thanks, Werner
More information about the Scons-users
mailing list