X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=libs%2Fappleutility%2Fwscript;h=63a1a1a4659b280bb66eebebdc1eb642527a84c5;hb=4dd0203f0169b9450efbdcb865989defb32a29c8;hp=50e7e0200f9e207fc213772b79a8d88197824f5b;hpb=4769db412dffcee699116a63fc714f88513fa0c6;p=ardour.git diff --git a/libs/appleutility/wscript b/libs/appleutility/wscript index 50e7e0200f..63a1a1a465 100644 --- a/libs/appleutility/wscript +++ b/libs/appleutility/wscript @@ -1,4 +1,6 @@ -import autowaf +#!/usr/bin/env python +from waflib.extras import autowaf as autowaf +from waflib import Options import os libappleutility_sources = [ @@ -6,7 +8,6 @@ libappleutility_sources = [ 'AUParamInfo.cpp', 'CAAudioChannelLayout.cpp', 'CAAudioChannelLayoutObject.cpp', - 'CAAudioFile.cpp', 'CAAudioUnit.cpp', 'CAAUParameter.cpp', 'CABufferList.cpp', @@ -20,17 +21,33 @@ libappleutility_sources = [ 'CAXException.cpp' ] -def set_options(opt): +def options(opt): autowaf.set_options(opt) def configure(conf): autowaf.configure(conf) + if conf.env['build_target'] in ['panther', 'tiger', 'leopard'] or (Options.options.ppc and conf.env['build_target'] == 'snowleopard'): + conf.env.append_value ('CFLAGS', '-DCOREAUDIO105') + conf.env.append_value ('CXXFLAGS', '-DCOREAUDIO105') + conf.define ('COREAUDIO105', 1) def build(bld): - obj = bld.new_task_gen('cxx', 'shlib') + obj = bld(features = 'cxx cxxshlib') obj.uselib = 'AUDIOUNITS OSX' - obj.source = libappleutility_sources - obj.export_incdirs = ['.'] + obj.source = ''; + if bld.is_defined('COREAUDIO105'): + obj.export_includes = ['CoreAudio105'] + obj.source += ' CoreAudio105/CAAudioFile.cpp'; + for src in libappleutility_sources: + obj.source += ' CoreAudio105/' + src; + else: + obj.export_includes = ['CoreAudio/PublicUtility'] + for src in libappleutility_sources: + obj.source += ' CoreAudio/PublicUtility/' + src; + + # apple did not write this library with full symbol export control + # so we need to override any visibility default. + autowaf.ensure_visible_symbols (obj, True) obj.includes = ['.'] obj.name = 'libappleutility' obj.target = 'appleutility'