summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cscript9
-rw-r--r--wscript3
2 files changed, 12 insertions, 0 deletions
diff --git a/cscript b/cscript
index 973bc06a..01e1ef16 100644
--- a/cscript
+++ b/cscript
@@ -47,6 +47,15 @@ def build(target, options):
cmd += ' --static'
if target.distro == 'centos':
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'
+ if target.distro == 'mageia' and target.version == '6':
+ # Mageia 6 pulls the same stunt except it's libxml++ that requires C++11
+ cmd += ' --force-cpp11'
elif target.platform == 'windows':
cmd += ' --target-windows --disable-gcov --disable-tests'
if target.version == 'xp':
diff --git a/wscript b/wscript
index 3e041517..47085046 100644
--- a/wscript
+++ b/wscript
@@ -51,10 +51,13 @@ def options(opt):
opt.add_option('--disable-examples', action='store_true', default=False, help='disable building of examples')
opt.add_option('--enable-openmp', action='store_true', default=False, help='enable use of OpenMP')
opt.add_option('--jpeg', default='oj2', help='specify JPEG library to build with: oj1 or oj2 for OpenJPEG 1.5.x or OpenJPEG 2.1.x respectively')
+ 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', '-D_FILE_OFFSET_BITS=64', '-D__STDC_FORMAT_MACROS'])
+ if conf.options.force_cpp11:
+ conf.env.append_value('CXXFLAGS', ['-std=c++11', '-DBOOST_NO_CXX11_SCOPED_ENUMS'])
gcc = conf.env['CC_VERSION']
if int(gcc[0]) >= 4 and int(gcc[1]) > 1:
conf.env.append_value('CXXFLAGS', ['-Wno-maybe-uninitialized'])