diff options
26 files changed, 89 insertions, 183 deletions
diff --git a/gtk2_ardour/wscript b/gtk2_ardour/wscript index cc494c2ba2..e96fdc1388 100644 --- a/gtk2_ardour/wscript +++ b/gtk2_ardour/wscript @@ -407,19 +407,6 @@ def build(bld): obj.includes = ['.'] obj.defines = [] - # if our internal libraries are built as DLL's, define - # the macros that activate the right stuff in headers - # for export/visibility to work on all platforms. - - if bld.is_defined ('INTERNAL_SHARED_LIBS'): - obj.defines += [ 'LIBPBD_DLL=1', - 'LIBARDOUR_DLL=1', - 'LIBMIDIPP_DLL=1', - 'LIBARDOUR_DLL=1', - 'LIBARDOUR_CP_DLL=1', - 'LIBGTKMM2EXT_DLL=1', - 'LIBEVORAL_DLL=1', - ] # continue with setup of obj, which could be a shared library # or an executable. diff --git a/libs/ardour/ardour/libardour_visibility.h b/libs/ardour/ardour/libardour_visibility.h index ed5cacf261..a41afca14d 100644 --- a/libs/ardour/ardour/libardour_visibility.h +++ b/libs/ardour/ardour/libardour_visibility.h @@ -30,27 +30,21 @@ #define LIBARDOUR_DLL_EXPORT __declspec(dllexport) #define LIBARDOUR_DLL_LOCAL #else - #if __GNUC__ >= 4 - #define LIBARDOUR_DLL_IMPORT __attribute__ ((visibility ("default"))) - #define LIBARDOUR_DLL_EXPORT __attribute__ ((visibility ("default"))) - #define LIBARDOUR_DLL_LOCAL __attribute__ ((visibility ("hidden"))) - #else - #define LIBARDOUR_DLL_IMPORT - #define LIBARDOUR_DLL_EXPORT - #define LIBARDOUR_DLL_LOCAL - #endif + #define LIBARDOUR_DLL_IMPORT __attribute__ ((visibility ("default"))) + #define LIBARDOUR_DLL_EXPORT __attribute__ ((visibility ("default"))) + #define LIBARDOUR_DLL_LOCAL __attribute__ ((visibility ("hidden"))) #endif -#ifdef LIBARDOUR_DLL // libardour is a DLL -#ifdef LIBARDOUR_DLL_EXPORTS // defined if we are building the libardour DLL (instead of using it) - #define LIBARDOUR_API LIBARDOUR_DLL_EXPORT -#else - #define LIBARDOUR_API LIBARDOUR_DLL_IMPORT -#endif -#define LIBARDOUR_LOCAL LIBARDOUR_DLL_LOCAL -#else /* static lib, not DLL */ +#ifdef LIBARDOUR_STATIC // libardour is not a DLL #define LIBARDOUR_API #define LIBARDOUR_LOCAL +#else + #ifdef LIBARDOUR_DLL_EXPORTS // defined if we are building the libardour DLL (instead of using it) + #define LIBARDOUR_API LIBARDOUR_DLL_EXPORT + #else + #define LIBARDOUR_API LIBARDOUR_DLL_IMPORT + #endif + #define LIBARDOUR_LOCAL LIBARDOUR_DLL_LOCAL #endif #endif /* __libardour_libardour_visibility_h__ */ diff --git a/libs/ardour/ardour/visibility.h b/libs/ardour/ardour/visibility.h index 09287b877d..5b3e5d8996 100644 --- a/libs/ardour/ardour/visibility.h +++ b/libs/ardour/ardour/visibility.h @@ -26,19 +26,13 @@ */ #if defined _WIN32 || defined __CYGWIN__ || defined(COMPILER_MSVC) || defined(COMPILER_MINGW) - #define LIBARDOUR_HELPER_DLL_IMPORT __declspec(dllimport) - #define LIBARDOUR_HELPER_DLL_EXPORT __declspec(dllexport) - #define LIBARDOUR_HELPER_DLL_LOCAL + #define LIBARDOUR_HELPER_DLL_IMPORT __declspec(dllimport) + #define LIBARDOUR_HELPER_DLL_EXPORT __declspec(dllexport) + #define LIBARDOUR_HELPER_DLL_LOCAL #else - #if __GNUC__ >= 4 #define LIBARDOUR_HELPER_DLL_IMPORT __attribute__ ((visibility ("default"))) #define LIBARDOUR_HELPER_DLL_EXPORT __attribute__ ((visibility ("default"))) #define LIBARDOUR_HELPER_DLL_LOCAL __attribute__ ((visibility ("hidden"))) - #else - #define LIBARDOUR_HELPER_DLL_IMPORT - #define LIBARDOUR_HELPER_DLL_EXPORT - #define LIBARDOUR_HELPER_DLL_LOCAL - #endif #endif #endif /* __libardour_visibility_h__ */ diff --git a/libs/ardour/wscript b/libs/ardour/wscript index 838e72279c..33351bd8b1 100644 --- a/libs/ardour/wscript +++ b/libs/ardour/wscript @@ -323,9 +323,7 @@ def build(bld): if bld.is_defined ('INTERNAL_SHARED_LIBS'): obj = bld.shlib(features = 'c cxx cshlib cxxshlib', source=libardour_sources) # macros for this shared library - obj.defines = [ 'LIBARDOUR_DLL=1', 'LIBARDOUR_DLL_EXPORTS=1' ] - # macros for this other internal shared libraries that we use - obj.defines += [ 'LIBEVORAL_DLL=1', 'LIBMIDIPP_DLL=1', 'LIBPBD_DLL=1' ] + obj.defines = [ 'LIBARDOUR_DLL_EXPORTS=1' ] obj.cflags = [ '-fvisibility=hidden' ] obj.cxxflags = [ '-fvisibility=hidden' ] else: diff --git a/libs/audiographer/audiographer/visibility.h b/libs/audiographer/audiographer/visibility.h index 8c149f9efd..72ce50bd25 100644 --- a/libs/audiographer/audiographer/visibility.h +++ b/libs/audiographer/audiographer/visibility.h @@ -30,27 +30,21 @@ #define LIBAUDIOGRAPHER_DLL_EXPORT __declspec(dllexport) #define LIBAUDIOGRAPHER_DLL_LOCAL #else - #if __GNUC__ >= 4 - #define LIBAUDIOGRAPHER_DLL_IMPORT __attribute__ ((visibility ("default"))) - #define LIBAUDIOGRAPHER_DLL_EXPORT __attribute__ ((visibility ("default"))) - #define LIBAUDIOGRAPHER_DLL_LOCAL __attribute__ ((visibility ("hidden"))) - #else - #define LIBAUDIOGRAPHER_DLL_IMPORT - #define LIBAUDIOGRAPHER_DLL_EXPORT - #define LIBAUDIOGRAPHER_DLL_LOCAL - #endif + #define LIBAUDIOGRAPHER_DLL_IMPORT __attribute__ ((visibility ("default"))) + #define LIBAUDIOGRAPHER_DLL_EXPORT __attribute__ ((visibility ("default"))) + #define LIBAUDIOGRAPHER_DLL_LOCAL __attribute__ ((visibility ("hidden"))) #endif -#ifdef LIBAUDIOGRAPHER_DLL // libaudiographer is a DLL -#ifdef LIBAUDIOGRAPHER_DLL_EXPORTS // defined if we are building the libaudiographer DLL (instead of using it) - #define LIBAUDIOGRAPHER_API LIBAUDIOGRAPHER_DLL_EXPORT +#ifdef LIBAUDIOGRAPHER_STATIC // libaudiographer is not a DLL + #define LIBAUDIOGRAPHER_API + #define LIBAUDIOGRAPHER_LOCAL #else + #ifdef LIBAUDIOGRAPHER_DLL_EXPORTS // defined if we are building the libaudiographer DLL (instead of using it) + #define LIBAUDIOGRAPHER_API LIBAUDIOGRAPHER_DLL_EXPORT + #else #define LIBAUDIOGRAPHER_API LIBAUDIOGRAPHER_DLL_IMPORT -#endif -#define LIBAUDIOGRAPHER_LOCAL LIBAUDIOGRAPHER_DLL_LOCAL -#else /* static lib, not DLL */ -#define LIBAUDIOGRAPHER_API -#define LIBAUDIOGRAPHER_LOCAL + #endif + #define LIBAUDIOGRAPHER_LOCAL LIBAUDIOGRAPHER_DLL_LOCAL #endif #endif /* __libaudiographer_visibility_h__ */ diff --git a/libs/audiographer/wscript b/libs/audiographer/wscript index 9e2d1c4c3c..183b272518 100644 --- a/libs/audiographer/wscript +++ b/libs/audiographer/wscript @@ -67,9 +67,7 @@ def build(bld): if bld.is_defined ('INTERNAL_SHARED_LIBS'): audiographer = bld.shlib(features = 'c cxx cshlib cxxshlib', source=audiographer_sources) # macros for this shared library - audiographer.defines = [ 'LIBAUDIOGRAPHER_DLL=1', 'LIBAUDIOGRAPHER_DLL_EXPORTS=1' ] - # macros for this other internal shared libraries that we use - audiographer.defines += [ 'LIBPBD_DLL=1' ] + audiographer.defines = [ 'LIBAUDIOGRAPHER_DLL_EXPORTS=1' ] audiographer.cflags = [ '-fvisibility=hidden' ] audiographer.cxxflags = [ '-fvisibility=hidden' ] else: diff --git a/libs/backends/jack/wscript b/libs/backends/jack/wscript index 1e913bb18c..d76ec095ca 100644 --- a/libs/backends/jack/wscript +++ b/libs/backends/jack/wscript @@ -42,8 +42,6 @@ def build(bld): obj.defines = ['PACKAGE="' + I18N_PACKAGE + '"', 'ARDOURBACKEND_DLL_EXPORTS' ] - if bld.is_defined ('INTERNAL_SHARED_LIBS'): - obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBPBD_DLL=1', 'LIBEVORAL_DLL=1' ] # # device discovery code in the jack backend needs ALSA diff --git a/libs/evoral/evoral/visibility.h b/libs/evoral/evoral/visibility.h index 380caca2fd..17c0b7730b 100644 --- a/libs/evoral/evoral/visibility.h +++ b/libs/evoral/evoral/visibility.h @@ -30,27 +30,21 @@ #define LIBEVORAL_DLL_EXPORT __declspec(dllexport) #define LIBEVORAL_DLL_LOCAL #else - #if __GNUC__ >= 4 - #define LIBEVORAL_DLL_IMPORT __attribute__ ((visibility ("default"))) - #define LIBEVORAL_DLL_EXPORT __attribute__ ((visibility ("default"))) - #define LIBEVORAL_DLL_LOCAL __attribute__ ((visibility ("hidden"))) - #else - #define LIBEVORAL_DLL_IMPORT - #define LIBEVORAL_DLL_EXPORT - #define LIBEVORAL_DLL_LOCAL - #endif + #define LIBEVORAL_DLL_IMPORT __attribute__ ((visibility ("default"))) + #define LIBEVORAL_DLL_EXPORT __attribute__ ((visibility ("default"))) + #define LIBEVORAL_DLL_LOCAL __attribute__ ((visibility ("hidden"))) #endif -#ifdef LIBEVORAL_DLL // libevoral is a DLL -#ifdef LIBEVORAL_DLL_EXPORTS // defined if we are building the libevoral DLL (instead of using it) - #define LIBEVORAL_API LIBEVORAL_DLL_EXPORT +#ifdef LIBEVORAL_STATIC // libevoral is not a DLL + #define LIBEVORAL_API + #define LIBEVORAL_LOCAL #else + #ifdef LIBEVORAL_DLL_EXPORTS // defined if we are building the libevoral DLL (instead of using it) + #define LIBEVORAL_API LIBEVORAL_DLL_EXPORT + #else #define LIBEVORAL_API LIBEVORAL_DLL_IMPORT -#endif -#define LIBEVORAL_LOCAL LIBEVORAL_DLL_LOCAL -#else /* static lib, not DLL */ -#define LIBEVORAL_API -#define LIBEVORAL_LOCAL + #endif + #define LIBEVORAL_LOCAL LIBEVORAL_DLL_LOCAL #endif #endif /* __libevoral_visibility_h__ */ diff --git a/libs/evoral/wscript b/libs/evoral/wscript index 569aa0fc6b..30b20f2cbd 100644 --- a/libs/evoral/wscript +++ b/libs/evoral/wscript @@ -91,9 +91,7 @@ def build(bld): if bld.is_defined ('INTERNAL_SHARED_LIBS'): obj = bld.shlib(features = 'c cxx cshlib cxxshlib', source=lib_source) # DLL exports for this library - obj.defines = [ 'LIBEVORAL_DLL=1', 'LIBEVORAL_DLL_EXPORTS=1' ] - # DLL imports for other libraries - obj.defines += [ 'LIBPBD_DLL=1' ] + obj.defines = [ 'LIBEVORAL_DLL_EXPORTS=1' ] obj.cxxflags = [ '-fvisibility=hidden' ] obj.cflags = [ '-fvisibility=hidden' ] else: diff --git a/libs/gtkmm2ext/gtkmm2ext/visibility.h b/libs/gtkmm2ext/gtkmm2ext/visibility.h index ce2d3e6e42..5a5fce3e8c 100644 --- a/libs/gtkmm2ext/gtkmm2ext/visibility.h +++ b/libs/gtkmm2ext/gtkmm2ext/visibility.h @@ -30,27 +30,21 @@ #define LIBGTKMM2EXT_DLL_EXPORT __declspec(dllexport) #define LIBGTKMM2EXT_DLL_LOCAL #else - #if __GNUC__ >= 4 - #define LIBGTKMM2EXT_DLL_IMPORT __attribute__ ((visibility ("default"))) - #define LIBGTKMM2EXT_DLL_EXPORT __attribute__ ((visibility ("default"))) - #define LIBGTKMM2EXT_DLL_LOCAL __attribute__ ((visibility ("hidden"))) - #else - #define LIBGTKMM2EXT_DLL_IMPORT - #define LIBGTKMM2EXT_DLL_EXPORT - #define LIBGTKMM2EXT_DLL_LOCAL - #endif + #define LIBGTKMM2EXT_DLL_IMPORT __attribute__ ((visibility ("default"))) + #define LIBGTKMM2EXT_DLL_EXPORT __attribute__ ((visibility ("default"))) + #define LIBGTKMM2EXT_DLL_LOCAL __attribute__ ((visibility ("hidden"))) #endif -#ifdef LIBGTKMM2EXT_DLL // libgtkmm2ext is a DLL -#ifdef LIBGTKMM2EXT_DLL_EXPORTS // defined if we are building the libgtkmm2ext DLL (instead of using it) - #define LIBGTKMM2EXT_API LIBGTKMM2EXT_DLL_EXPORT +#ifdef LIBGTKMM2EXT_STATIC // libgtkmm2ext is a DLL + #define LIBGTKMM2EXT_API + #define LIBGTKMM2EXT_LOCAL #else - #define LIBGTKMM2EXT_API LIBGTKMM2EXT_DLL_IMPORT -#endif -#define LIBGTKMM2EXT_LOCAL LIBGTKMM2EXT_DLL_LOCAL -#else /* static lib, not DLL */ -#define LIBGTKMM2EXT_API -#define LIBGTKMM2EXT_LOCAL + #ifdef LIBGTKMM2EXT_DLL_EXPORTS // defined if we are building the libgtkmm2ext DLL (instead of using it) + #define LIBGTKMM2EXT_API LIBGTKMM2EXT_DLL_EXPORT + #else + #define LIBGTKMM2EXT_API LIBGTKMM2EXT_DLL_IMPORT + #endif + #define LIBGTKMM2EXT_LOCAL LIBGTKMM2EXT_DLL_LOCAL #endif #endif /* __libgtkmm2ext_visibility_h__ */ diff --git a/libs/gtkmm2ext/wscript b/libs/gtkmm2ext/wscript index 955b133d33..c87e1aa1d0 100644 --- a/libs/gtkmm2ext/wscript +++ b/libs/gtkmm2ext/wscript @@ -87,9 +87,7 @@ def build(bld): if bld.is_defined ('INTERNAL_SHARED_LIBS'): obj = bld.shlib(features = 'c cxx cshlib cxxshlib', source=gtkmm2ext_sources) # defines for this library - obj.defines = [ 'LIBGTKMM2EXT_DLL=1', 'LIBGTKMM2EXT_DLL_EXPORTS=1' ] - # internal shared libs that we use - obj.defines += [ 'LIBPBD_DLL=1' ] + obj.defines = [ 'LIBGTKMM2EXT_DLL_EXPORTS=1' ] obj.cxxflags = [ '-fvisibility=hidden' ] obj.cflags = [ '-fvisibility=hidden' ] else: diff --git a/libs/midi++2/midi++/libmidi_visibility.h b/libs/midi++2/midi++/libmidi_visibility.h index 62eebfe8e2..51b061bdd8 100644 --- a/libs/midi++2/midi++/libmidi_visibility.h +++ b/libs/midi++2/midi++/libmidi_visibility.h @@ -30,27 +30,21 @@ #define LIBMIDIPP_DLL_EXPORT __declspec(dllexport) #define LIBMIDIPP_DLL_LOCAL #else - #if __GNUC__ >= 4 - #define LIBMIDIPP_DLL_IMPORT __attribute__ ((visibility ("default"))) - #define LIBMIDIPP_DLL_EXPORT __attribute__ ((visibility ("default"))) - #define LIBMIDIPP_DLL_LOCAL __attribute__ ((visibility ("hidden"))) - #else - #define LIBMIDIPP_DLL_IMPORT - #define LIBMIDIPP_DLL_EXPORT - #define LIBMIDIPP_DLL_LOCAL - #endif + #define LIBMIDIPP_DLL_IMPORT __attribute__ ((visibility ("default"))) + #define LIBMIDIPP_DLL_EXPORT __attribute__ ((visibility ("default"))) + #define LIBMIDIPP_DLL_LOCAL __attribute__ ((visibility ("hidden"))) #endif -#ifdef LIBMIDIPP_DLL // libmidi is a DLL -#ifdef LIBMIDIPP_DLL_EXPORTS // defined if we are building the libmidi DLL (instead of using it) - #define LIBMIDIPP_API LIBMIDIPP_DLL_EXPORT +#ifdef LIBMIDIPP_STATIC // libmidi is not a DLL + #define LIBMIDIPP_API + #define LIBMIDIPP_LOCAL #else - #define LIBMIDIPP_API LIBMIDIPP_DLL_IMPORT -#endif -#define LIBMIDIPP_LOCAL LIBMIDIPP_DLL_LOCAL -#else /* static lib, not DLL */ -#define LIBMIDIPP_API -#define LIBMIDIPP_LOCAL + #ifdef LIBMIDIPP_DLL_EXPORTS // defined if we are building the libmidi DLL (instead of using it) + #define LIBMIDIPP_API LIBMIDIPP_DLL_EXPORT + #else + #define LIBMIDIPP_API LIBMIDIPP_DLL_IMPORT + #endif + #define LIBMIDIPP_LOCAL LIBMIDIPP_DLL_LOCAL #endif #endif /* __libmidi_libmidi_visibility_h__ */ diff --git a/libs/midi++2/wscript b/libs/midi++2/wscript index 39a4411dc0..b500bcaa4e 100644 --- a/libs/midi++2/wscript +++ b/libs/midi++2/wscript @@ -62,8 +62,7 @@ def build(bld): # Library if bld.is_defined ('INTERNAL_SHARED_LIBS'): obj = bld.shlib(features = 'cxx cxxshlib', source=libmidi_sources) - obj.defines = [ 'LIBMIDIPP_DLL=1', 'LIBMIDIPP_DLL_EXPORTS=1' ] - obj.defines += [ 'LIBPBD_DLL=1', 'LIBEVORAL_DLL=1' ] + obj.defines = [ 'LIBMIDIPP_DLL_EXPORTS=1' ] obj.cxxflags = [ '-fvisibility=hidden' ] obj.cflags = [ '-fvisibility=hidden' ] else: diff --git a/libs/panners/1in2out/wscript b/libs/panners/1in2out/wscript index ad9c5a6b4c..465b2da7a5 100644 --- a/libs/panners/1in2out/wscript +++ b/libs/panners/1in2out/wscript @@ -23,8 +23,6 @@ def build(bld): obj.source = [ 'panner_1in2out.cc' ] obj.export_includes = ['.'] obj.defines = [ 'PACKAGE="libardour_pan1in2out"' ] - if bld.is_defined ('INTERNAL_SHARED_LIBS'): - obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBPBD_DLL=1', 'LIBEVORAL_DLL=1' ] obj.includes = ['.'] obj.name = 'libardour_pan1in2out' obj.target = 'pan1in2out' diff --git a/libs/panners/2in2out/wscript b/libs/panners/2in2out/wscript index 2d83205262..4d144b1934 100644 --- a/libs/panners/2in2out/wscript +++ b/libs/panners/2in2out/wscript @@ -23,8 +23,6 @@ def build(bld): obj.source = [ 'panner_2in2out.cc' ] obj.export_includes = ['.'] obj.defines = [ 'PACKAGE="libardour_pan2in2out"' ] - if bld.is_defined ('INTERNAL_SHARED_LIBS'): - obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBPBD_DLL=1', 'LIBEVORAL_DLL=1' ] obj.includes = ['.'] obj.name = 'libardour_pan2in2out' obj.target = 'pan2in2out' diff --git a/libs/panners/vbap/wscript b/libs/panners/vbap/wscript index 4113aba53c..bc18def5e6 100644 --- a/libs/panners/vbap/wscript +++ b/libs/panners/vbap/wscript @@ -23,8 +23,6 @@ def build(bld): obj.source = [ 'vbap_speakers.cc', 'vbap.cc' ] obj.export_includes = ['.'] obj.defines = [ 'PACKAGE="libardour_panvbap"' ] - if bld.is_defined ('INTERNAL_SHARED_LIBS'): - obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBCONTROLCP_DLL_=1', 'LIBPBD_DLL=1', 'LIBEVORAL_DLL=1' ] obj.includes = ['.'] obj.name = 'libardour_panvbap' obj.target = 'panvbap' diff --git a/libs/pbd/pbd/libpbd_visibility.h b/libs/pbd/pbd/libpbd_visibility.h index e2c6235f0b..84a64c351a 100644 --- a/libs/pbd/pbd/libpbd_visibility.h +++ b/libs/pbd/pbd/libpbd_visibility.h @@ -30,27 +30,21 @@ #define LIBPBD_DLL_EXPORT __declspec(dllexport) #define LIBPBD_DLL_LOCAL #else - #if __GNUC__ >= 4 - #define LIBPBD_DLL_IMPORT __attribute__ ((visibility ("default"))) - #define LIBPBD_DLL_EXPORT __attribute__ ((visibility ("default"))) - #define LIBPBD_DLL_LOCAL __attribute__ ((visibility ("hidden"))) - #else - #define LIBPBD_DLL_IMPORT - #define LIBPBD_DLL_EXPORT - #define LIBPBD_DLL_LOCAL - #endif + #define LIBPBD_DLL_IMPORT __attribute__ ((visibility ("default"))) + #define LIBPBD_DLL_EXPORT __attribute__ ((visibility ("default"))) + #define LIBPBD_DLL_LOCAL __attribute__ ((visibility ("hidden"))) #endif -#ifdef LIBPBD_DLL // libpbd is a DLL -#ifdef LIBPBD_DLL_EXPORTS // defined if we are building the libpbd DLL (instead of using it) - #define LIBPBD_API LIBPBD_DLL_EXPORT +#ifdef LIBPBD_STATIC // libpbd is a DLL + #define LIBPBD_API + #define LIBPBD_LOCAL #else + #ifdef LIBPBD_DLL_EXPORTS // defined if we are building the libpbd DLL (instead of using it) + #define LIBPBD_API LIBPBD_DLL_EXPORT + #else #define LIBPBD_API LIBPBD_DLL_IMPORT -#endif -#define LIBPBD_LOCAL LIBPBD_DLL_LOCAL -#else /* static lib, not DLL */ -#define LIBPBD_API -#define LIBPBD_LOCAL + #endif + #define LIBPBD_LOCAL LIBPBD_DLL_LOCAL #endif #endif /* __libpbd_libpbd_visibility_h__ */ diff --git a/libs/pbd/wscript b/libs/pbd/wscript index d56de95c7c..09af0f614b 100644 --- a/libs/pbd/wscript +++ b/libs/pbd/wscript @@ -114,9 +114,7 @@ def build(bld): if bld.is_defined ('INTERNAL_SHARED_LIBS'): print('BUILD SHARED LIB') obj = bld.shlib(features = 'cxx cxxshlib', source=libpbd_sources) - obj.defines = [ 'LIBPBD_DLL=1', - 'LIBPBD_DLL_EXPORTS=1' - ] + obj.defines = [ 'LIBPBD_DLL_EXPORTS=1' ] obj.cxxflags = [ '-fvisibility=hidden' ] obj.cflags = [ '-fvisibility=hidden' ] else: diff --git a/libs/surfaces/control_protocol/control_protocol/visibility.h b/libs/surfaces/control_protocol/control_protocol/visibility.h index 40c83b8580..418fb6d2b3 100644 --- a/libs/surfaces/control_protocol/control_protocol/visibility.h +++ b/libs/surfaces/control_protocol/control_protocol/visibility.h @@ -30,27 +30,21 @@ #define LIBCONTROLCP_DLL_EXPORT __declspec(dllexport) #define LIBCONTROLCP_DLL_LOCAL #else - #if __GNUC__ >= 4 - #define LIBCONTROLCP_DLL_IMPORT __attribute__ ((visibility ("default"))) - #define LIBCONTROLCP_DLL_EXPORT __attribute__ ((visibility ("default"))) - #define LIBCONTROLCP_DLL_LOCAL __attribute__ ((visibility ("hidden"))) - #else - #define LIBCONTROLCP_DLL_IMPORT - #define LIBCONTROLCP_DLL_EXPORT - #define LIBCONTROLCP_DLL_LOCAL - #endif + #define LIBCONTROLCP_DLL_IMPORT __attribute__ ((visibility ("default"))) + #define LIBCONTROLCP_DLL_EXPORT __attribute__ ((visibility ("default"))) + #define LIBCONTROLCP_DLL_LOCAL __attribute__ ((visibility ("hidden"))) #endif -#ifdef LIBCONTROLCP_DLL // libcontrolcp is a DLL -#ifdef LIBCONTROLCP_DLL_EXPORTS // defined if we are building the libcontrolcp DLL (instead of using it) - #define LIBCONTROLCP_API LIBCONTROLCP_DLL_EXPORT +#ifdef LIBCONTROLCP_STATIC // libcontrolcp is not a DLL + #define LIBCONTROLCP_API + #define LIBCONTROLCP_LOCAL #else + #ifdef LIBCONTROLCP_DLL_EXPORTS // defined if we are building the libcontrolcp DLL (instead of using it) + #define LIBCONTROLCP_API LIBCONTROLCP_DLL_EXPORT + #else #define LIBCONTROLCP_API LIBCONTROLCP_DLL_IMPORT -#endif -#define LIBCONTROLCP_LOCAL LIBCONTROLCP_DLL_LOCAL -#else /* static lib, not DLL */ -#define LIBCONTROLCP_API -#define LIBCONTROLCP_LOCAL + #endif + #define LIBCONTROLCP_LOCAL LIBCONTROLCP_DLL_LOCAL #endif #endif /* __libcontrolcp_visibility_h__ */ diff --git a/libs/surfaces/control_protocol/wscript b/libs/surfaces/control_protocol/wscript index a597ca9e2a..7c53bbfb17 100644 --- a/libs/surfaces/control_protocol/wscript +++ b/libs/surfaces/control_protocol/wscript @@ -28,9 +28,7 @@ def build(bld): if bld.is_defined ('INTERNAL_SHARED_LIBS'): obj = bld.shlib(features = 'c cxx cshlib cxxshlib', source=controlcp_sources) # defines for this library - obj.defines = [ 'LIBCONTROLCP_DLL=1', 'LIBCONTROLCP_DLL_EXPORTS=1' ] - # internal shared libs that we use - obj.defines += [ 'LIBPBD_DLL=1', 'LIBARDOUR_DLL=1', 'LIBEVORAL_DLL=1' ] + obj.defines = [ 'LIBCONTROLCP_DLL_EXPORTS=1' ] obj.cxxflags = [ '-fvisibility=hidden' ] obj.cflags = [ '-fvisibility=hidden' ] else: diff --git a/libs/surfaces/frontier/wscript b/libs/surfaces/frontier/wscript index aa7d119895..ac8341c64d 100644 --- a/libs/surfaces/frontier/wscript +++ b/libs/surfaces/frontier/wscript @@ -35,8 +35,6 @@ def build(bld): ''' obj.export_includes = ['./generic_midi'] obj.defines = [ 'PACKAGE="ardour_frontier"' ] - if bld.is_defined ('INTERNAL_SHARED_LIBS'): - obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBCONTROLCP_DLL=1', 'LIBPBD_DLL=1' ] obj.includes = ['.', './generic_midi'] obj.name = 'libgeneric_midi' obj.target = 'generic_midi' diff --git a/libs/surfaces/generic_midi/wscript b/libs/surfaces/generic_midi/wscript index cdc68529ac..186f270463 100644 --- a/libs/surfaces/generic_midi/wscript +++ b/libs/surfaces/generic_midi/wscript @@ -31,8 +31,6 @@ def build(bld): ''' obj.export_includes = ['.'] obj.defines = [ 'PACKAGE="ardour_genericmidi"' ] - if bld.is_defined ('INTERNAL_SHARED_LIBS'): - obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBCONTROLCP_DLL=1', 'LIBPBD_DLL=1', 'LIBGTKMM2EXT_DLL=1', 'LIBEVORAL_DLL=1' ] obj.includes = ['.', './generic_midi'] obj.name = 'libardour_generic_midi' obj.target = 'ardour_generic_midi' diff --git a/libs/surfaces/mackie/wscript b/libs/surfaces/mackie/wscript index d76a26f651..beba402fa1 100644 --- a/libs/surfaces/mackie/wscript +++ b/libs/surfaces/mackie/wscript @@ -43,8 +43,6 @@ def build(bld): ''' obj.export_includes = ['./mackie'] obj.defines = [ 'PACKAGE="ardour_mackie"' ] - if bld.is_defined ('INTERNAL_SHARED_LIBS'): - obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBCONTROLCP_DLL=1', 'LIBPBD_DLL=1', 'LIBGTKMM2EXT_DLL=1', 'LIBEVORAL_DLL=1' ] # need ../libs because some GTK2 header files require stuff there obj.includes = ['.', '../libs'] obj.name = 'libardour_mcp' diff --git a/libs/surfaces/osc/wscript b/libs/surfaces/osc/wscript index 88174c0faf..cd77f99871 100644 --- a/libs/surfaces/osc/wscript +++ b/libs/surfaces/osc/wscript @@ -28,8 +28,6 @@ def build(bld): ''' obj.export_includes = ['.'] obj.defines = [ 'PACKAGE="ardour_osc"' ] - if bld.is_defined ('INTERNAL_SHARED_LIBS'): - obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBCONTROLCP_DLL=1', 'LIBPBD_DLL=1', 'LIBEVORAL_DLL=1' ] obj.includes = ['.', './osc'] obj.name = 'libardour_osc' obj.target = 'ardour_osc' diff --git a/libs/surfaces/tranzport/wscript b/libs/surfaces/tranzport/wscript index 7d80295fba..dfc10f5525 100644 --- a/libs/surfaces/tranzport/wscript +++ b/libs/surfaces/tranzport/wscript @@ -40,8 +40,6 @@ def build(bld): ''' obj.export_includes = ['./tranzport'] obj.defines = [ 'PACKAGE="ardour_tranzport"' ] - if bld.is_defined ('INTERNAL_SHARED_LIBS'): - obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBCONTROLCP_DLL=1', 'LIBPBD_DLL=1', 'LIBGTKMM2EXT_DLL=1' ] obj.includes = ['.', './tranzport'] obj.name = 'libardour_tranzport' obj.target = 'ardour_tranzport' diff --git a/libs/surfaces/wiimote/wscript b/libs/surfaces/wiimote/wscript index 623aa960db..f3c36275c8 100644 --- a/libs/surfaces/wiimote/wscript +++ b/libs/surfaces/wiimote/wscript @@ -26,8 +26,6 @@ def build(bld): ''' obj.export_includes = ['./wiimote'] obj.defines = [ 'PACKAGE="ardour_wiimote"' ] - if bld.is_defined ('INTERNAL_SHARED_LIBS'): - obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBCONTROLCP_DLL=1', 'LIBPBD_DLL=1', 'LIBGTKMM2EXT_DLL=1', 'LIBEVORAL_DLL=1' ] obj.includes = ['.', '../libs'] obj.name = 'libardour_wiimote' obj.target = 'ardour_wiimote' |