Mercurial > hg > vamp-aubio-plugins
diff wscript @ 162:5e944736a8ed
update build scripts for mingw-w64
author | Paul Brossier <piem@piem.org> |
---|---|
date | Sun, 24 Jul 2016 21:02:05 +0200 |
parents | 4b5c9e2d11c7 |
children | 2ccbca010cc8 |
line wrap: on
line diff
--- a/wscript Sun Jul 24 20:37:41 2016 +0200 +++ b/wscript Sun Jul 24 21:02:05 2016 +0200 @@ -9,6 +9,8 @@ local_vamp_include = 'contrib/vamp-plugin-sdk-2.6' local_vamp_lib_i686 = 'contrib/vamp-plugin-sdk-2.6-binaries-i686-linux' local_vamp_lib_amd64 = 'contrib/vamp-plugin-sdk-2.6-binaries-amd64-linux' +# using debian/stable (jessie), the stdc++ abi seems broken. recompile it. +local_vamp_lib_mingw = 'contrib/vamp-plugin-sdk-2.6' #-binaries-win32-mingw' local_vamp_lib_osx = 'contrib/vamp-plugin-sdk-2.6-binaries-osx' local_vamp_lib_win32 = 'contrib' @@ -29,7 +31,9 @@ local_vamp_stlib = 'libvamp-sdk.a' if sys.platform.startswith('linux'): - if platform.machine() == 'x86_64': + if 'mingw' in conf.env.CXX[0]: + local_vamp_lib = local_vamp_lib_mingw + elif platform.machine() == 'x86_64': local_vamp_lib = local_vamp_lib_amd64 elif platform.machine() == 'x86_64': local_vamp_lib = local_vamp_lib_i686 @@ -67,9 +71,13 @@ if sys.platform.startswith('linux'): conf.env['CXXFLAGS'] += ['-O3', '-msse', '-msse2', '-mfpmath=sse', '-ftree-vectorize'] - conf.env.append_value('LINKFLAGS', '-Wl,-z,defs') - # add plugin.map - conf.env.append_value('LINKFLAGS', '-Wl,--version-script=../vamp-plugin.map') + if 'mingw' in conf.env.CXX[0]: + conf.env.append_value('LINKFLAGS', '-Wl,--enable-auto-import') + conf.env.append_value('LINKFLAGS', '-Wl,--retain-symbols-file=../vamp-plugin.list') + else: + conf.env.append_value('LINKFLAGS', '-Wl,-z,defs') + # add plugin.map + conf.env.append_value('LINKFLAGS', '-Wl,--version-script=../vamp-plugin.map') elif sys.platform == 'win32': conf.env.append_value('CXXFLAGS', '/W4') conf.env.append_value('CXXFLAGS', '/EHsc') @@ -86,7 +94,10 @@ plugin_sources += bld.path.ant_glob('*.cpp') # rename libvamp-aubio to vamp-plugin binary name - if sys.platform.startswith('linux'): + if 'mingw' in bld.env.CXX[0]: + bld.env['cxxshlib_PATTERN'] = '%s.dll' + install_path = None + elif sys.platform.startswith('linux'): bld.env['cxxshlib_PATTERN'] = '%s.so' install_path = '${LIBDIR}/vamp' elif sys.platform.startswith('darwin'):