Add -x32/-x64 suffix to boost libraries when building for Windows. v1.6.8
authorCarl Hetherington <cth@carlh.net>
Tue, 22 Feb 2022 21:58:19 +0000 (22:58 +0100)
committercah <cah@ableton.com>
Fri, 25 Feb 2022 13:51:48 +0000 (14:51 +0100)
cscript
wscript

diff --git a/cscript b/cscript
index 48d437ca329f967d82a458223590347fa12fb5c0..92e771fb582a32e82937f222dffb4b9f5f29bb99 100644 (file)
--- a/cscript
+++ b/cscript
@@ -22,7 +22,7 @@ import os
 option_defaults = { 'force-cpp11': False }
 
 def dependencies(target, options):
-    return (('asdcplib', 'bb09615'), ('libdcp', 'v1.8.7'))
+    return (('asdcplib', '97918d86caf4b5a2296a0d3092f1e2e69b9af9e5'), ('libdcp', 'v1.8.8'))
 
 def build(target, options):
     cmd = './waf configure --prefix=%s' % target.directory
@@ -33,7 +33,7 @@ def build(target, options):
     if target.debug:
         cmd += ' --enable-debug'
     if target.platform == 'windows':
-        cmd += ' --target-windows --disable-tests'
+        cmd += f' --target-windows-{target.bits} --disable-tests'
 
     target.command(cmd)
     target.command('./waf build install')
diff --git a/wscript b/wscript
index 0ab599f7e5492c606fee6d2c46b2c7253bbed764..06d97fdebc1715842f8069aea3bac6f99b09d5c3 100644 (file)
--- a/wscript
+++ b/wscript
@@ -77,7 +77,8 @@ def options(opt):
     opt.load('compiler_cxx')
     opt.add_option('--enable-debug', action='store_true', default=False, help='build with debugging information and without optimisation')
     opt.add_option('--static', action='store_true', default=False, help='build libsub statically and link statically to dcp')
-    opt.add_option('--target-windows', action='store_true', default=False, help='set up to do a cross-compile to make a Windows package')
+    opt.add_option('--target-windows-64', action='store_true', default=False, help='set up to do a cross-compile to make a Windows package 64-bit')
+    opt.add_option('--target-windows-32', action='store_true', default=False, help='set up to do a cross-compile to make a Windows package 32-bit')
     opt.add_option('--disable-tests', action='store_true', default=False, help='disable building of tests')
 
 def configure(conf):
@@ -88,11 +89,12 @@ def configure(conf):
 
     conf.env.ENABLE_DEBUG = conf.options.enable_debug
     conf.env.STATIC = conf.options.static
-    conf.env.TARGET_WINDOWS = conf.options.target_windows
+    conf.env.TARGET_WINDOWS_64 = conf.options.target_windows_64
+    conf.env.TARGET_WINDOWS_32 = conf.options.target_windows_32
     conf.env.DISABLE_TESTS = conf.options.disable_tests
     conf.env.API_VERSION = API_VERSION
 
-    if conf.options.target_windows:
+    if conf.options.target_windows_64 or conf.options.target_windows_32:
         conf.env.append_value('CXXFLAGS', '-DLIBSUB_WINDOWS')
     else:
         conf.env.append_value('CXXFLAGS', '-DLIBSUB_POSIX')
@@ -102,7 +104,7 @@ def configure(conf):
     else:
         conf.env.append_value('CXXFLAGS', '-O3')
 
-    if not conf.env.TARGET_WINDOWS:
+    if not conf.env.TARGET_WINDOWS_64 and not conf.env.TARGET_WINDOWS_32:
         conf.env.append_value('LINKFLAGS', '-pthread')
 
     # Disable libxml++ deprecation warnings for now
@@ -121,8 +123,10 @@ def configure(conf):
     conf.env.DEFINES_DCP = [f.replace('\\', '') for f in conf.env.DEFINES_DCP]
 
     boost_lib_suffix = ''
-    if conf.env.TARGET_WINDOWS:
-        boost_lib_suffix = '-mt'
+    if conf.env.TARGET_WINDOWS_64:
+        boost_lib_suffix = '-mt-x64'
+    elif conf.env.TARGET_WINDOWS_32:
+        boost_lib_suffix = '-mt-x32'
 
     conf.check_cxx(fragment="""
                             #include <boost/version.hpp>\n
@@ -179,8 +183,10 @@ def configure(conf):
 def build(bld):
     create_version_cc(bld, VERSION)
 
-    if bld.env.TARGET_WINDOWS:
-        boost_lib_suffix = '-mt'
+    if bld.env.TARGET_WINDOWS_64:
+        boost_lib_suffix = '-mt-x64'
+    elif bld.env.TARGET_WINDOWS_32:
+        boost_lib_suffix = '-mt-x32'
     else:
         boost_lib_suffix = ''