Explicitly use OSX

Previously this was inherited via PBD.

On MacOS/X,  this adds
  "-undefined dynamic_lookup -flat_namespace"
and various "-framework .." options to linkflags

Without this flag, .dylibs fail to link usually because
of missing `-lintl` (Undefined symbols: "_libintl_dgettext")

On other systems this is a NO-OP:
CFLAGS_OSX, CXXFLAGS_OSX and LINKFLAGS_OSX
are only set on the darwin platform.
This commit is contained in:
Robin Gareus 2020-01-21 04:35:40 +01:00
parent 1d2cfd6f2d
commit 06b2eb1c27
No known key found for this signature in database
GPG key ID: A090BCE02CF57F04
26 changed files with 28 additions and 25 deletions

View file

@ -29,7 +29,7 @@ def build(bld):
obj.name = 'coreaudio_backend' obj.name = 'coreaudio_backend'
obj.target = 'coreaudio_backend' obj.target = 'coreaudio_backend'
obj.use = 'libardour libpbd' obj.use = 'libardour libpbd'
obj.uselib = 'GLIBMM XML' obj.uselib = 'GLIBMM XML OSX'
obj.framework = [ 'CoreAudio', 'AudioToolbox', 'CoreServices' ] obj.framework = [ 'CoreAudio', 'AudioToolbox', 'CoreServices' ]
if bld.env['build_target'] not in [ 'lion', 'el_capitan' ] and (not bld.env['build_arch'] == "ppc"): if bld.env['build_target'] not in [ 'lion', 'el_capitan' ] and (not bld.env['build_arch'] == "ppc"):
obj.framework += [ 'CoreMidi' ] obj.framework += [ 'CoreMidi' ]

View file

@ -25,7 +25,7 @@ def build(bld):
obj.name = 'dummy_audiobackend' obj.name = 'dummy_audiobackend'
obj.target = 'dummy_audiobackend' obj.target = 'dummy_audiobackend'
obj.use = 'libardour libpbd libltc' obj.use = 'libardour libpbd libltc'
obj.uselib = 'GLIBMM XML' obj.uselib = 'GLIBMM XML OSX'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'backends') obj.install_path = os.path.join(bld.env['LIBDIR'], 'backends')
obj.defines = ['PACKAGE="' + I18N_PACKAGE + '"', obj.defines = ['PACKAGE="' + I18N_PACKAGE + '"',
'ARDOURBACKEND_DLL_EXPORTS' 'ARDOURBACKEND_DLL_EXPORTS'

View file

@ -108,7 +108,7 @@ def build(bld):
obj.defines += [ 'USE_WEAK_JACK', 'HAVE_JACK_PORT_RENAME' ] obj.defines += [ 'USE_WEAK_JACK', 'HAVE_JACK_PORT_RENAME' ]
obj.deps = [ 'weak_libjack.def' ] obj.deps = [ 'weak_libjack.def' ]
obj.uselib += [ 'GLIBMM', 'XML' ]; obj.uselib += [ 'GLIBMM', 'XML', 'OSX'];
# #
# device discovery code in the jack backend needs ALSA # device discovery code in the jack backend needs ALSA

View file

@ -86,7 +86,7 @@ def build(bld):
obj.export_includes = ['.'] obj.export_includes = ['.']
obj.includes = ['.'] obj.includes = ['.']
obj.uselib = 'SIGCPP CAIROMM GTKMM BOOST XML' obj.uselib = 'SIGCPP CAIROMM GTKMM BOOST XML OSX'
obj.use = [ 'libpbd', 'libgtkmm2ext' ] obj.use = [ 'libpbd', 'libgtkmm2ext' ]
obj.name = 'libcanvas' obj.name = 'libcanvas'
obj.target = 'canvas' obj.target = 'canvas'

View file

@ -114,7 +114,7 @@ def build(bld):
obj.includes = ['.', './src'] obj.includes = ['.', './src']
obj.name = 'libevoral' obj.name = 'libevoral'
obj.target = 'evoral' obj.target = 'evoral'
obj.uselib = 'GLIBMM GTHREAD SMF XML LIBPBD' obj.uselib = 'GLIBMM GTHREAD SMF XML LIBPBD OSX'
obj.use = 'libsmf libpbd' obj.use = 'libsmf libpbd'
obj.vnum = EVORAL_LIB_VERSION obj.vnum = EVORAL_LIB_VERSION
obj.install_path = bld.env['LIBDIR'] obj.install_path = bld.env['LIBDIR']

View file

@ -77,7 +77,7 @@ def build(bld):
obj.linkflags = ['-mwindows'] obj.linkflags = ['-mwindows']
obj.use = [ 'libpbd', 'vstwin' ] obj.use = [ 'libpbd', 'vstwin' ]
else: else:
obj.uselib = ['GIOMM', 'DL'] obj.uselib = ['GIOMM', 'DL', 'OSX']
obj.use = [ 'libpbd' ] obj.use = [ 'libpbd' ]
obj.includes = [ '../pbd/', '../ardour/', '.' ] obj.includes = [ '../pbd/', '../ardour/', '.' ]

View file

@ -94,6 +94,7 @@ def build(bld):
os.path.normpath(bld.env['DATADIR']), 'locale') + '"'] os.path.normpath(bld.env['DATADIR']), 'locale') + '"']
if sys.platform == 'darwin': if sys.platform == 'darwin':
obj.source += ['gtkapplication_quartz.mm', 'nsglview.mm'] obj.source += ['gtkapplication_quartz.mm', 'nsglview.mm']
obj.uselib += ' OSX'
else: else:
obj.source += ['gtkapplication_x11.c'] obj.source += ['gtkapplication_x11.c']

View file

@ -22,7 +22,7 @@ def build(bld):
obj.name = 'libardour_pan1in2out' obj.name = 'libardour_pan1in2out'
obj.target = 'pan1in2out' obj.target = 'pan1in2out'
obj.use = 'libardour libardour_cp libpbd' obj.use = 'libardour libardour_cp libpbd'
obj.uselib = 'GLIBMM XML' obj.uselib = 'GLIBMM XML OSX'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'panners') obj.install_path = os.path.join(bld.env['LIBDIR'], 'panners')
def shutdown(): def shutdown():

View file

@ -22,7 +22,7 @@ def build(bld):
obj.name = 'libardour_pan2in2out' obj.name = 'libardour_pan2in2out'
obj.target = 'pan2in2out' obj.target = 'pan2in2out'
obj.use = 'libardour libardour_cp libpbd' obj.use = 'libardour libardour_cp libpbd'
obj.uselib = 'GLIBMM XML' obj.uselib = 'GLIBMM XML OSX'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'panners') obj.install_path = os.path.join(bld.env['LIBDIR'], 'panners')
def shutdown(): def shutdown():

View file

@ -22,7 +22,7 @@ def build(bld):
obj.name = 'libardour_panbalance' obj.name = 'libardour_panbalance'
obj.target = 'panbalance' obj.target = 'panbalance'
obj.use = 'libardour libardour_cp libpbd' obj.use = 'libardour libardour_cp libpbd'
obj.uselib = 'GLIBMM XML' obj.uselib = 'GLIBMM XML OSX'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'panners') obj.install_path = os.path.join(bld.env['LIBDIR'], 'panners')
def shutdown(): def shutdown():

View file

@ -22,7 +22,7 @@ def build(bld):
obj.name = 'libardour_panvbap' obj.name = 'libardour_panvbap'
obj.target = 'panvbap' obj.target = 'panvbap'
obj.use = 'libardour libardour_cp libpbd' obj.use = 'libardour libardour_cp libpbd'
obj.uselib = 'GLIBMM XML' obj.uselib = 'GLIBMM XML OSX'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'panners') obj.install_path = os.path.join(bld.env['LIBDIR'], 'panners')
def shutdown(): def shutdown():

View file

@ -26,7 +26,7 @@ def build(bld):
obj.includes = [ '.', './cc121'] obj.includes = [ '.', './cc121']
obj.name = 'libardour_cc121' obj.name = 'libardour_cc121'
obj.target = 'ardour_cc121' obj.target = 'ardour_cc121'
obj.uselib = 'GTKMM GTK GDK XML' obj.uselib = 'GTKMM GTK GDK XML OSX'
obj.use = 'libardour libardour_cp libgtkmm2ext libpbd' obj.use = 'libardour libardour_cp libgtkmm2ext libpbd'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -27,7 +27,7 @@ def build(bld):
obj.includes = ['.', '../libs', '../../widgets'] obj.includes = ['.', '../libs', '../../widgets']
obj.name = 'libardour_contourdesign' obj.name = 'libardour_contourdesign'
obj.target = 'ardour_contourdesign' obj.target = 'ardour_contourdesign'
obj.uselib = 'GTKMM USB XML' obj.uselib = 'GTKMM USB XML OSX'
obj.use = 'libardour libardour_cp libgtkmm2ext libpbd libwidgets' obj.use = 'libardour libardour_cp libgtkmm2ext libpbd libwidgets'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -33,7 +33,7 @@ def build(bld):
obj.name = 'libardour_cp' obj.name = 'libardour_cp'
obj.target = 'ardourcp' obj.target = 'ardourcp'
obj.use = 'libardour libpbd' obj.use = 'libardour libpbd'
obj.uselib = 'GLIBMM SIGCPP XML' obj.uselib = 'GLIBMM SIGCPP XML OSX'
obj.install_path = bld.env['LIBDIR'] obj.install_path = bld.env['LIBDIR']
def shutdown(): def shutdown():

View file

@ -26,7 +26,7 @@ def build(bld):
obj.includes = [ '.', './faderport'] obj.includes = [ '.', './faderport']
obj.name = 'libardour_faderport' obj.name = 'libardour_faderport'
obj.target = 'ardour_faderport' obj.target = 'ardour_faderport'
obj.uselib = 'GTKMM GTK GDK XML' obj.uselib = 'GTKMM GTK GDK XML OSX'
obj.use = 'libardour libardour_cp libgtkmm2ext libpbd' obj.use = 'libardour libardour_cp libgtkmm2ext libpbd'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -30,7 +30,7 @@ def build(bld):
obj.includes = [ '.' ] obj.includes = [ '.' ]
obj.name = 'libardour_faderport8' obj.name = 'libardour_faderport8'
obj.target = 'ardour_faderport8' obj.target = 'ardour_faderport8'
obj.uselib = 'GTKMM GTK GDK XML' obj.uselib = 'GTKMM GTK GDK XML OSX'
obj.use = 'libardour libardour_cp libgtkmm2ext libpbd' obj.use = 'libardour libardour_cp libgtkmm2ext libpbd'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')
@ -43,7 +43,7 @@ def build(bld):
obj.includes = [ '.' ] obj.includes = [ '.' ]
obj.name = 'libardour_faderport16' obj.name = 'libardour_faderport16'
obj.target = 'ardour_faderport16' obj.target = 'ardour_faderport16'
obj.uselib = 'GTKMM GTK GDK XML' obj.uselib = 'GTKMM GTK GDK XML OSX'
obj.use = 'libardour libardour_cp libgtkmm2ext libpbd' obj.use = 'libardour libardour_cp libgtkmm2ext libpbd'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')
@ -56,7 +56,7 @@ def build(bld):
obj.includes = [ '.' ] obj.includes = [ '.' ]
obj.name = 'libardour_faderport2' obj.name = 'libardour_faderport2'
obj.target = 'ardour_faderport2' obj.target = 'ardour_faderport2'
obj.uselib = 'GTKMM GTK GDK XML' obj.uselib = 'GTKMM GTK GDK XML OSX'
obj.use = 'libardour libardour_cp libgtkmm2ext libpbd' obj.use = 'libardour libardour_cp libgtkmm2ext libpbd'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -26,6 +26,7 @@ def build(bld):
obj.includes = ['.', './generic_midi'] obj.includes = ['.', './generic_midi']
obj.name = 'libgeneric_midi' obj.name = 'libgeneric_midi'
obj.target = 'generic_midi' obj.target = 'generic_midi'
obj.uselib = 'XML OSX'
obj.use = 'libardour libardourcp' obj.use = 'libardour libardourcp'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -29,7 +29,7 @@ def build(bld):
obj.includes = [ '.', './generic_midi'] obj.includes = [ '.', './generic_midi']
obj.name = 'libardour_generic_midi' obj.name = 'libardour_generic_midi'
obj.target = 'ardour_generic_midi' obj.target = 'ardour_generic_midi'
obj.uselib = 'GTKMM GTK GDK XML' obj.uselib = 'GTKMM GTK GDK XML OSX'
obj.use = 'libardour libardour_cp libgtkmm2ext libpbd' obj.use = 'libardour libardour_cp libgtkmm2ext libpbd'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -33,7 +33,7 @@ def build(bld):
obj.includes = ['.', './launch_control_xl'] obj.includes = ['.', './launch_control_xl']
obj.name = 'libardour_launch_control_xl' obj.name = 'libardour_launch_control_xl'
obj.target = 'ardour_launch_control_xl' obj.target = 'ardour_launch_control_xl'
obj.uselib = 'GTKMM SIGCPP XML' obj.uselib = 'GTKMM SIGCPP XML OSX'
obj.use = 'libardour libardour_cp libpbd libevoral libcanvas libtemporal' obj.use = 'libardour libardour_cp libpbd libevoral libcanvas libtemporal'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -41,7 +41,7 @@ def build(bld):
obj.includes = [ '.' ] obj.includes = [ '.' ]
obj.name = 'libardour_mcp' obj.name = 'libardour_mcp'
obj.target = 'ardour_mcp' obj.target = 'ardour_mcp'
obj.uselib = 'GTKMM XML' obj.uselib = 'GTKMM XML OSX'
obj.use = 'libardour libardour_cp libgtkmm2ext' obj.use = 'libardour libardour_cp libgtkmm2ext'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -37,7 +37,7 @@ def build(bld):
obj.includes = [ '.', './maschine2'] obj.includes = [ '.', './maschine2']
obj.name = 'libardour_maschine2' obj.name = 'libardour_maschine2'
obj.target = 'ardour_maschine2' obj.target = 'ardour_maschine2'
obj.uselib = 'CAIROMM PANGOMM' obj.uselib = 'CAIROMM PANGOMM OSX'
obj.use = 'libardour libardour_cp libpbd libcanvas hidapi libgtkmm2ext' obj.use = 'libardour libardour_cp libpbd libcanvas hidapi libgtkmm2ext'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -30,7 +30,7 @@ def build(bld):
obj.includes = ['.', './osc'] obj.includes = ['.', './osc']
obj.name = 'libardour_osc' obj.name = 'libardour_osc'
obj.target = 'ardour_osc' obj.target = 'ardour_osc'
obj.uselib = 'LO GTKMM GTK GDK XML' obj.uselib = 'LO GTKMM GTK GDK XML OSX'
obj.use = 'libardour libardour_cp libgtkmm2ext libpbd' obj.use = 'libardour libardour_cp libgtkmm2ext libpbd'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -42,7 +42,7 @@ def build(bld):
obj.includes = ['.', './push2'] obj.includes = ['.', './push2']
obj.name = 'libardour_push2' obj.name = 'libardour_push2'
obj.target = 'ardour_push2' obj.target = 'ardour_push2'
obj.uselib = 'CAIROMM PANGOMM USB GTKMM SIGCPP XML' obj.uselib = 'CAIROMM PANGOMM USB GTKMM SIGCPP XML OSX'
obj.use = 'libardour libardour_cp libgtkmm2ext libpbd libevoral libcanvas libtemporal' obj.use = 'libardour libardour_cp libgtkmm2ext libpbd libevoral libcanvas libtemporal'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -38,6 +38,7 @@ def build(bld):
obj.includes = ['.', './tranzport'] obj.includes = ['.', './tranzport']
obj.name = 'libardour_tranzport' obj.name = 'libardour_tranzport'
obj.target = 'ardour_tranzport' obj.target = 'ardour_tranzport'
obj.uselib = 'XML OSX'
obj.use = 'libardour libardour_cp' obj.use = 'libardour libardour_cp'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -41,7 +41,7 @@ def build(bld):
obj.includes = [ '.' ] obj.includes = [ '.' ]
obj.name = 'libardour_us2400' obj.name = 'libardour_us2400'
obj.target = 'ardour_us2400' obj.target = 'ardour_us2400'
obj.uselib = 'GTKMM XML' obj.uselib = 'GTKMM XML OSX'
obj.use = 'libardour libardour_cp libgtkmm2ext' obj.use = 'libardour libardour_cp libgtkmm2ext'
obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces') obj.install_path = os.path.join(bld.env['LIBDIR'], 'surfaces')

View file

@ -75,7 +75,7 @@ def build(bld):
obj.export_includes = ['.'] obj.export_includes = ['.']
obj.includes = ['.'] + bld.env['INCLUDES_GLIB'] obj.includes = ['.'] + bld.env['INCLUDES_GLIB']
obj.uselib = 'SIGCPP CAIROMM GTKMM BOOST XML' obj.uselib = 'SIGCPP CAIROMM GTKMM BOOST XML OSX'
obj.use = [ 'libpbd', 'libgtkmm2ext' ] obj.use = [ 'libpbd', 'libgtkmm2ext' ]
obj.name = 'libwidgets' obj.name = 'libwidgets'
obj.target = 'widgets' obj.target = 'widgets'