add -fvisibility=hidden to evoral, and make things work
authorPaul Davis <paul@linuxaudiosystems.com>
Thu, 17 Oct 2013 19:02:20 +0000 (15:02 -0400)
committerPaul Davis <paul@linuxaudiosystems.com>
Thu, 17 Oct 2013 19:02:20 +0000 (15:02 -0400)
12 files changed:
libs/backends/jack/wscript
libs/evoral/evoral/visibility.h
libs/evoral/wscript
libs/midi++2/wscript
libs/panners/1in2out/wscript
libs/panners/2in2out/wscript
libs/panners/vbap/wscript
libs/surfaces/control_protocol/wscript
libs/surfaces/generic_midi/wscript
libs/surfaces/mackie/wscript
libs/surfaces/osc/wscript
libs/surfaces/wiimote/wscript

index d76ec095cab6fd7f304772dd0dd7c739c6c0fc97..1e913bb18ce2939dc36a89ece29f0a8f99305b26 100644 (file)
@@ -42,6 +42,8 @@ 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
index 6b30bd1c9fa7ccafb5a603781edbbd85ec0a438d..380caca2fd8454edc1c45ae7077daa37316dbfe1 100644 (file)
@@ -17,8 +17,8 @@
 
 */
 
-#ifndef __libevoral_libevoral_visibility_h__
-#define __libevoral_libevoral_visibility_h__
+#ifndef __libevoral_visibility_h__
+#define __libevoral_visibility_h__
 
 /* _WIN32 is defined by most compilers targetting Windows, but within the
  * evoral source tree, we also define COMPILER_MSVC or COMPILER_MINGW depending
@@ -53,4 +53,4 @@
 #define LIBEVORAL_LOCAL
 #endif
 
-#endif /* __libevoral_libevoral_visibility_h__ */
+#endif /* __libevoral_visibility_h__ */
index f309bc7031679944e6c3fe0dba3a28304a16e335..569aa0fc6b406f7235f48d7b53e48c0fe1792fb1 100644 (file)
@@ -90,8 +90,12 @@ def build(bld):
     # Library
     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' ]
-        obj.defines      = [ 'LIBPBD_DLL=1' ]
+        # DLL imports for other libraries
+        obj.defines     += [ 'LIBPBD_DLL=1' ]
+        obj.cxxflags     = [ '-fvisibility=hidden' ]
+        obj.cflags       = [ '-fvisibility=hidden' ]
     else:
         obj              = bld.stlib(features = 'c cxx cstlib cxxstlib', source=lib_source)
         obj.cxxflags     = [ '-fPIC' ]
index bc3f3313a29111811d84654690a68de3e1ef5f2a..c950d13192b54c038a55a23b003979cb22452478 100644 (file)
@@ -63,7 +63,7 @@ def build(bld):
     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' ]
+        obj.defines     += [ 'LIBPBD_DLL=1', 'LIBEVORAL_DLL=1' ]
     else:
         obj              = bld.stlib(features = 'cxx cxxstlib', source=libmidi_sources)
         obj.cxxflags     = [ '-fPIC', '-DWITH_JACK_MIDI' ]
index c26cc0546dbb1d7ed3beefad2ef78f47baa89e5e..ad9c5a6b4ce1684b5bffe27d25c1ec136e716592 100644 (file)
@@ -24,7 +24,7 @@ def build(bld):
     obj.export_includes = ['.']
     obj.defines     = [ 'PACKAGE="libardour_pan1in2out"' ]
     if bld.is_defined ('INTERNAL_SHARED_LIBS'):
-        obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBPBD_DLL=1' ]
+        obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBPBD_DLL=1', 'LIBEVORAL_DLL=1' ]
     obj.includes     = ['.']
     obj.name         = 'libardour_pan1in2out'
     obj.target       = 'pan1in2out'
index 72eeda917f95db6905e80398fafa798df3e38658..2d83205262ec5df5bf51f457051685213e3e7aef 100644 (file)
@@ -24,7 +24,7 @@ def build(bld):
     obj.export_includes = ['.']
     obj.defines     = [ 'PACKAGE="libardour_pan2in2out"' ]
     if bld.is_defined ('INTERNAL_SHARED_LIBS'):
-        obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBPBD_DLL=1' ]
+        obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBPBD_DLL=1', 'LIBEVORAL_DLL=1' ]
     obj.includes     = ['.']
     obj.name         = 'libardour_pan2in2out'
     obj.target       = 'pan2in2out'
index 8d4356b828e17175e5d0f21e48433ff54f80b5ed..4113aba53c571d071a6689919b8f3acbb7e37751 100644 (file)
@@ -24,7 +24,7 @@ def build(bld):
     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' ]
+        obj.defines += [ 'LIBARDOUR_DLL=1', 'LIBCONTROLCP_DLL_=1', 'LIBPBD_DLL=1', 'LIBEVORAL_DLL=1' ]
     obj.includes     = ['.']
     obj.name         = 'libardour_panvbap'
     obj.target       = 'panvbap'
index eb2db5d269f0996c1ff82aebd19f8f9512a5b8d4..6cc285454bf33753944cb68d37e84e211e076165 100644 (file)
@@ -30,7 +30,7 @@ def build(bld):
         # 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' ]
+        obj.defines     += [ 'LIBPBD_DLL=1', 'LIBARDOUR_DLL=1', 'LIBEVORAL_DLL=1' ]
     else:
         obj              = bld.stlib(features = 'c cxx cstlib cxxstlib', source=controlcp_sources)
         obj.cxxflags     = [ '-fPIC' ]
index 1cab8fdd2ed78779ab6cd5039c26e0e31c37ac77..cdc68529ac9d7ef75a8d71f054def63ebee8495e 100644 (file)
@@ -32,7 +32,7 @@ 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' ]
+        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'
index 3989833544592962bda471378a325e921517785f..d76a26f65125f1b40b0f6de26056309ff2236426 100644 (file)
@@ -44,7 +44,7 @@ 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' ]
+        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'
index d52909aa88c4f2f7c8db6a45cde278497df42ccb..88174c0fafb1bbe6a2430892aec6ffbb5c75ba12 100644 (file)
@@ -29,7 +29,7 @@ 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' ]
+        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'
index eb4e2306e8a2bef2ba227802b52d2df63671fdc5..623aa960db8157ac760c0d97be7923fe4aba8982 100644 (file)
@@ -27,7 +27,7 @@ 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' ]
+        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'