Changes to SCons compiler selection flags on master

30 views
Skip to first unread message

Andrew Morrow

unread,
Apr 14, 2015, 3:27:43 PM4/14/15
to mongo...@googlegroups.com

Hi mongodb-dev -

A change has recently been made to the MongoDB master branch that revises how compiler selection with SCons works. The longstanding --cc and --cxx SCons Options have been replaced with the new CC and CXX SCons Variables.

A scons invocation that previously looked like this:

scons --cc=/path/to/cc --cxx=/path/to/c++

should now be written like this:

scons CC=/path/to/cc CXX=/path/to/c++

Additionally, support for loading Variable values (CCFLAGS, CC, CXX, LDFLAGS, etc.) from files has been introduced via a new build option called --variables-files.

You can pass a file to --variables-files with --variables-files=foo.vars, or pass multiple files by quoting and space delimiting: --variables-files="foo.vars bar.vars".

Please see the following files for examples of how to write a file for use with --variables-files to either select the compilers from the current shell CC and CXX variables, or to propagate the entire calling shell environment into subordinate SCons commands:

etc/scons/compilers_from_env.vars
etc/scons/propagate_shell_environment.vars

In addition, please note that the flags --propagate-shell-environment, --cc-use-shell-environment, and --cxx-use-shell-environment have been removed, as the effects of those flags can now be achieved by using the files provided in the etc/scons directory with the --variables-files flag.

If you are interested in the details, please see the following commits:


Thanks,
Andrew

Reply all
Reply to author
Forward
0 new messages