diff options
| author | Carl Hetherington <cth@carlh.net> | 2017-12-09 21:41:30 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2017-12-09 21:41:30 +0000 |
| commit | f0fcb39e39d2924c46a8cfd7642f68debd44e368 (patch) | |
| tree | ffaa00a24a1944631fc6303be5c439bfed7ca637 | |
| parent | 476c0e9c7c129909ccbb914feacd977e2f60228b (diff) | |
Try to handle Centos's C++11 situation more nicely.
| -rw-r--r-- | cscript | 6 | ||||
| -rw-r--r-- | wscript | 3 |
2 files changed, 9 insertions, 0 deletions
@@ -31,6 +31,12 @@ def build(target, options): # Centos builds using static boost, which means tests don't # build as test/tests.cc defines BOOST_TEST_DYN_LINK cmd += ' --disable-tests' + if target.version == '7': + # Centos 7 ships with glibmm 2.50.0 which requires C++11 + # but its compiler (gcc 4.8.5) defaults to C++97. Go figure. + # I worry that this will cause ABI problems but I don't have + # a better solution. + cmd += ' --force-cpp11' elif target.platform == 'windows': cmd += ' --target-windows' target.command(cmd) @@ -29,10 +29,13 @@ def options(opt): opt.add_option('--target-windows', action='store_true', default=False, help='set up to do a cross-compile to Windows') opt.add_option('--static', action='store_true', default=False, help='build statically') opt.add_option('--disable-tests', action='store_true', default=False, help='disable building of tests') + opt.add_option('--force-cpp11', action='store_true', default=False, help='force use of C++11') def configure(conf): conf.load('compiler_cxx') conf.env.append_value('CXXFLAGS', ['-Wall', '-Wextra', '-O2']) + if conf.options.force_cpp11: + conv.end.append_value('CXXFLAGS', ['-std=c++11']) conf.env.TARGET_WINDOWS = conf.options.target_windows conf.env.STATIC = conf.options.static |
