-
-
Notifications
You must be signed in to change notification settings - Fork 319
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Generator functions in Textfile subst expansion are being called with for_signature=True #4037
Comments
Likely this is coming to light due to pr #4021 where |
Okay, after getting a headache going through needless recursion, it's pretty clear where this comes from: in s = s(target=lvars['TARGETS'],
source=lvars['SOURCES'],
env=self.env,
for_signature=(self.mode != SUBST_CMD)) The mode comes straight down from how we were called into this chain - the value of |
surprisingly, it breaks nothing in the testsuite, and fixes the case in this report. |
Yup. Seems like the right solution to me! |
If the substable element is a callable, only set for_signature true if the mode is SUBST_SIG. Previously it was set even if the mode was SUBST_RAW. Fixes SCons#4037 Signed-off-by: Mats Wichmann <[email protected]>
Describe the bug
The following program used to write
val
totarget
, but with current HEAD, it now writessig
:Required information
Link to SCons Users thread discussing your issue.
Discussed on discord with @bdbaddog and @mwichmann.
Version of SCons
HEAD
Version of Python
N/A
Which python distribution if applicable (python.org, cygwin, anaconda, macports, brew,etc)
N/A
How you installed SCons
Clone of master
What Platform are you on? (Linux/Windows and which version)
Linux, but I'm pretty sure this is platform independent
How to reproduce your issue? Please include a small self contained reproducer. Likely a SConstruct should do for most issues.
See the above repo. With SCons 4.2 and older the file
target
will be produced and containval
, but on HEAD at f6cefb2 it now containssig
. This broke one of the MongoDB custom tools.How you invoke scons (The command line you're using "scons --flags some_arguments")
You can run the above reproducer just by running
scons
.The text was updated successfully, but these errors were encountered: