From 5f1b2be0dc509469a072041643c3e45bfa406b9a Mon Sep 17 00:00:00 2001 From: falkTX Date: Wed, 17 Jun 2020 18:11:18 +0100 Subject: [PATCH] Do not skip shared libs on windows if using original regex.h Signed-off-by: falkTX --- common/wscript | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/common/wscript b/common/wscript index 0aba00ab6..cb794e28b 100644 --- a/common/wscript +++ b/common/wscript @@ -132,6 +132,7 @@ def build(bld): ] includes = ['../windows' ] + includes libsuffix = "64" if (bld.env['DEST_CPU'] == "x86_64" and not bld.variant) else "" + skipshared = bool('HAVE_TRE_REGEX_H' in bld.env) uselib.append('REGEX') uselib.append('WS2_32') uselib.append('PSAPI') @@ -202,8 +203,9 @@ def build(bld): clientlib.env.append_value('LINKFLAGS', '-lnsl -lsocket') if bld.env['IS_WINDOWS']: - # remove switch to shared binaries, as we most likely want static builds on Windows - clientlib.env['SHLIB_MARKER'] = '' + # remove switch to shared binaries if possible, as we most likely want static builds on Windows + if skipshared: + clientlib.env['SHLIB_MARKER'] = '' # statically link libjack to libstdc++, some client apps like ardour come # with a different version of libstdc++.dll that takes precedence and results # in missing symbols during runtime @@ -226,7 +228,8 @@ def build(bld): serverlib.env['cxxshlib_PATTERN'] = 'lib%s.dll' serverlib.env['cxxstlib_PATTERN'] = 'lib%s.a' serverlib.env['implib_PATTERN'] = 'lib%s.dll.a' - serverlib.env['SHLIB_MARKER'] = '' + if skipshared: + serverlib.env['SHLIB_MARKER'] = '' serverlib.env.append_value('LINKFLAGS', ['-static-libstdc++', '--disable-auto-import']) serverlib.install_path = '${LIBDIR}' serverlib.source = [] + common_libsources @@ -327,7 +330,8 @@ def build(bld): netlib.env['cxxshlib_PATTERN'] = 'lib%s.dll' netlib.env['cxxstlib_PATTERN'] = 'lib%s.a' netlib.env['implib_PATTERN'] = 'lib%s.dll.a' - netlib.env['SHLIB_MARKER'] = '' + if skipshared: + netlib.env['SHLIB_MARKER'] = '' netlib.use += ['WS2_32', 'WINMM'] elif not bld.env['IS_MACOSX']: netlib.use += ['RT']