Various playlist editor developments and fixes.
[dcpomatic.git] / wscript
diff --git a/wscript b/wscript
index eff2b04387a239897bd363ff2f9ea74e5219880c..c61b86782229a692d02e6b5fd0f914dc4f3d6f5c 100644 (file)
--- a/wscript
+++ b/wscript
@@ -73,6 +73,7 @@ def options(opt):
     opt.add_option('--workaround-gssapi', action='store_true', default=False, help='link to gssapi_krb5')
     opt.add_option('--force-cpp11',       action='store_true', default=False, help='force use of C++11')
     opt.add_option('--variant',           help='build variant (swaroop-studio, swaroop-theater)', choices=['swaroop-studio', 'swaroop-theater'])
+    opt.add_option('--enable-player-stress-test', action='store_true', default=False, help='build the player with stress testing enabled') 
     opt.add_option('--use-lld',           action='store_true', default=False, help='use lld linker')
 
 def configure(conf):
@@ -113,12 +114,15 @@ def configure(conf):
     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-unused-result'])
-    if int(gcc[0]) >= 9:
-        conf.env.append_value('CXXFLAGS', ['-Wno-deprecated-copy'])
-    have_c11 = int(gcc[0]) >= 4 and int(gcc[1]) >= 8 and int(gcc[2]) >= 1
+    if conf.env['CXX_NAME'] == 'gcc':
+        gcc = conf.env['CC_VERSION']
+        if int(gcc[0]) >= 4 and int(gcc[1]) > 1:
+            conf.env.append_value('CXXFLAGS', ['-Wno-unused-result'])
+        if int(gcc[0]) >= 9:
+            conf.env.append_value('CXXFLAGS', ['-Wno-deprecated-copy'])
+        have_c11 = int(gcc[0]) >= 4 and int(gcc[1]) >= 8 and int(gcc[2]) >= 1
+    else:
+        have_c11 = False
 
     if conf.options.enable_debug:
         conf.env.append_value('CXXFLAGS', ['-g', '-DDCPOMATIC_DEBUG', '-fno-omit-frame-pointer'])
@@ -130,6 +134,9 @@ def configure(conf):
         if conf.options.variant.startswith('swaroop-'):
             conf.env.append_value('CXXFLAGS', '-DDCPOMATIC_VARIANT_SWAROOP')
 
+    if conf.options.enable_player_stress_test:
+        conf.env.append_value('CXXFLAGS', '-DDCPOMATIC_PLAYER_STRESS_TEST')
+
     if conf.options.use_lld:
         try:
             conf.find_program('ld.lld')
@@ -326,8 +333,8 @@ def configure(conf):
     if conf.options.static_dcp:
         conf.check_cfg(package='libdcp-1.0', atleast_version='1.6.7', args='--cflags', uselib_store='DCP', mandatory=True)
         conf.env.DEFINES_DCP = [f.replace('\\', '') for f in conf.env.DEFINES_DCP]
-        conf.env.STLIB_DCP = ['dcp-1.0', 'asdcp-cth', 'kumu-cth', 'openjp2']
-        conf.env.LIB_DCP = ['glibmm-2.4', 'ssl', 'crypto', 'bz2', 'xslt']
+        conf.env.STLIB_DCP = ['dcp-1.0', 'asdcp-carl', 'kumu-carl', 'openjp2']
+        conf.env.LIB_DCP = ['glibmm-2.4', 'ssl', 'crypto', 'bz2', 'xslt', 'xerces-c']
     else:
         conf.check_cfg(package='libdcp-1.0', atleast_version='1.6.7', args='--cflags --libs', uselib_store='DCP', mandatory=True)
         conf.env.DEFINES_DCP = [f.replace('\\', '') for f in conf.env.DEFINES_DCP]
@@ -441,6 +448,9 @@ def configure(conf):
     conf.env['CXXFLAGS_AVCODEC'] = []
     conf.env['CXXFLAGS_AVUTIL'] = []
 
+    if conf.env.TARGET_LINUX:
+        conf.env.LIB_X11 = ['X11']
+
     # Boost
     if conf.options.static_boost:
         conf.env.STLIB_BOOST_THREAD = ['boost_thread']