obj = bld.shlib(features = 'c cxx cshlib cxxshlib', source=libardour_sources)
# macros for this shared library
obj.defines = [ 'LIBARDOUR_DLL_EXPORTS=1' ]
- obj.cflags = [ '-fvisibility=hidden' ]
- obj.cxxflags = [ '-fvisibility=hidden' ]
else:
obj = bld.stlib(features = 'c cxx cstlib cxxstlib', source=libardour_sources)
obj.cxxflags = [ '-fPIC' ]
'OSX','BOOST','CURL','DL']
obj.use = ['libpbd','libmidipp','libevoral', 'libvampplugin',
'libaudiographer',
- 'libtimecode_includes',
+ 'libtimecode',
]
if bld.is_defined('USE_EXTERNAL_LIBS'):
obj.uselib.extend(['RUBBERBAND', 'TAGLIB', 'VAMPSDK', 'LIBLTC',
audiographer = bld.shlib(features = 'c cxx cshlib cxxshlib', source=audiographer_sources)
# macros for this shared library
audiographer.defines = [ 'LIBAUDIOGRAPHER_DLL_EXPORTS=1' ]
- audiographer.cflags = [ '-fvisibility=hidden' ]
- audiographer.cxxflags = [ '-fvisibility=hidden' ]
else:
audiographer = bld.stlib(features = 'c cxx cstlib cxxstlib', source=libardour_sources)
audiographer.cxxflags = [ '-fPIC' ]
if bld.is_defined ('INTERNAL_SHARED_LIBS'):
obj = bld.shlib(features = 'cxx cxxshlib', source=canvas_sources)
obj.defines = [ 'LIBCANVAS_DLL_EXPORTS=1' ]
- obj.cflags = [ '-fvisibility=hidden' ]
- obj.cxxflags = [ '-fvisibility=hidden' ]
else:
obj = bld.stlib(features = 'cxx cxxstlib', source=canvas_sources)
obj.cxxflags = [ '-fPIC' ]
obj = bld.shlib(features = 'c cxx cshlib cxxshlib', source=gtkmm2ext_sources)
# defines for this library
obj.defines = [ 'LIBGTKMM2EXT_DLL_EXPORTS', 'ABSTRACT_UI_EXPORTS' ]
- obj.cxxflags = [ '-fvisibility=hidden' ]
- obj.cflags = [ '-fvisibility=hidden' ]
else:
obj = bld.stlib(features = 'c cxx cstlib cxxstlib', source=gtkmm2ext_sources)
obj.cxxflags = [ '-fPIC' ]
if bld.is_defined ('INTERNAL_SHARED_LIBS'):
obj = bld.shlib(features = 'cxx cxxshlib', source=libmidi_sources)
obj.defines = [ 'LIBMIDIPP_DLL_EXPORTS=1' ]
- obj.cxxflags = [ '-fvisibility=hidden' ]
- obj.cflags = [ '-fvisibility=hidden' ]
else:
obj = bld.stlib(features = 'cxx cxxstlib', source=libmidi_sources)
obj.cxxflags = [ '-fPIC' ]
obj.name = 'libmidipp'
obj.target = 'midipp'
obj.uselib = 'GLIBMM SIGCPP XML OSX'
- obj.use = 'libpbd libevoral libtimecode libtimecode_includes'
+ obj.use = 'libpbd libevoral libtimecode'
obj.vnum = LIBMIDIPP_LIB_VERSION
obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3')
print('BUILD SHARED LIB')
obj = bld.shlib(features = 'cxx cxxshlib', source=libpbd_sources)
obj.defines = [ 'LIBPBD_DLL_EXPORTS=1' ]
- obj.cxxflags = [ '-fvisibility=hidden' ]
- obj.cflags = [ '-fvisibility=hidden' ]
else:
print('BUILD STATIC LIB')
obj = bld.stlib(features = 'cxx cxxstlib', source=libpbd_sources)
obj = bld.shlib(features = 'c cxx cshlib cxxshlib', source=controlcp_sources)
# defines for this library
obj.defines = [ 'LIBCONTROLCP_DLL_EXPORTS' ]
- obj.cxxflags = [ '-fvisibility=hidden' ]
- obj.cflags = [ '-fvisibility=hidden' ]
else:
obj = bld.stlib(features = 'c cxx cstlib cxxstlib', source=controlcp_sources)
obj.cxxflags = [ '-fPIC' ]
conf.env.append_value('CFLAGS', '-DWAF_BUILD')
conf.env.append_value('CXXFLAGS', '-DWAF_BUILD')
- # Set up waf environment and C defines
opts = Options.options
+
+ # Adopt Microsoft-like convention that makes all non-explicitly exported
+ # symbols invisible (rather than doing this all over the wscripts in the src tree)
+ #
+ # This won't apply to MSVC but that hasn't been added as a target yet
+ #
+ # We can't do this till all tests are complete, since some fail if this is et.
+ if opts.internal_shared_libs:
+ conf.env.append_value ('CXXFLAGS', '-fvisibility=hidden')
+ conf.env.append_value ('CFLAGS', '-fvisibility=hidden')
+
+ # Set up waf environment and C defines
if opts.phone_home:
conf.define('PHONE_HOME', 1)
conf.env['PHONE_HOME'] = True