From 20636f28a0f62fb50772c1242baca990c9afb919 Mon Sep 17 00:00:00 2001
From: Robin Gareus <robin@gareus.org>
Date: Fri, 2 Dec 2011 02:48:07 +0100
Subject: [PATCH 6/6] updated and fixed configure options:

--no-carbon: prerequisite for 64bit OSX builds
--universal: fixed parameters string->array
---
 wscript |   31 +++++++++++++++++++++++--------
 1 files changed, 23 insertions(+), 8 deletions(-)

diff --git a/wscript b/wscript
index 263ddea..485af1b 100644
--- a/wscript
+++ b/wscript
@@ -312,9 +312,14 @@ def set_compiler_flags (conf,opt):
         conf.env.append_value('LINKFLAGS', '-ldl')
 
     if opt.universal:
-        conf.env.append_value('CFLAGS', "-arch i386 -arch ppc")
-        conf.env.append_value('CXXFLAGS', "-arch i386 -arch ppc")
-        conf.env.append_value('LINKFLAGS', "-arch i386 -arch ppc")
+        if not Options.options.nocarbon:
+            conf.env.append_value('CFLAGS', ["-arch", "i386", "-arch", "ppc"])
+            conf.env.append_value('CXXFLAGS', ["-arch", "i386", "-arch", "ppc"])
+            conf.env.append_value('LINKFLAGS', ["-arch", "i386", "-arch", "ppc"])
+        else:
+            conf.env.append_value('CFLAGS', ["-arch", "x86_64", "-arch", "i386", "-arch", "ppc"])
+            conf.env.append_value('CXXFLAGS', ["-arch", "x86_64", "-arch", "i386", "-arch", "ppc"])
+            conf.env.append_value('LINKFLAGS', ["-arch", "x86_64", "-arch", "i386", "-arch", "ppc"])
 
     #
     # warnings flags
@@ -352,6 +357,8 @@ def options(opt):
                     help='The user-visible name of the program being built')
     opt.add_option('--arch', type='string', action='store', dest='arch',
                     help='Architecture-specific compiler flags')
+    opt.add_option('--no-carbon', action='store_true', default=False, dest='nocarbon',
+                    help='Compile without support for AU Plugins with only CARBON UI (needed for 64bit)')
     opt.add_option('--boost-sp-debug', action='store_true', default=False, dest='boost_sp_debug',
                     help='Compile with Boost shared pointer debugging')
     opt.add_option('--dist-target', type='string', default='auto', dest='dist_target',
@@ -444,8 +451,11 @@ def configure(conf):
 
         conf.define ('HAVE_COREAUDIO', 1)
         conf.define ('AUDIOUNIT_SUPPORT', 1)
+        if not Options.options.nocarbon:
+            conf.define ('WITH_CARBON', 1)
         if not Options.options.freebie:
             conf.define ('AU_STATE_SUPPORT', 1)
+
         conf.define ('GTKOSX', 1)
         conf.define ('TOP_MENUBAR',1)
         conf.define ('GTKOSX',1)
@@ -484,13 +494,18 @@ def configure(conf):
         conf.env.append_value('LINKFLAGS_OSX', ['-framework', 'CoreFoundation'])
         conf.env.append_value('LINKFLAGS_OSX', ['-framework', 'CoreServices'])
 
-	conf.env.append_value('LINKFLAGS_OSX', ['-undefined', 'dynamic_lookup' ])
-	conf.env.append_value('LINKFLAGS_OSX', ['-flat_namespace'])
+        conf.env.append_value('LINKFLAGS_OSX', ['-undefined', 'dynamic_lookup' ])
+        conf.env.append_value('LINKFLAGS_OSX', ['-flat_namespace'])
 
         conf.env.append_value('CXXFLAGS_AUDIOUNITS', "-DAUDIOUNIT_SUPPORT")
-        conf.env.append_value('CXXFLAGS_AUDIOUNITS', "-DAU_STATE_SUPPORT")
-        conf.env.append_value('LINKFLAGS_AUDIOUNITS', ['-framework', 'Carbon', 
-		'-framework', 'Audiotoolbox', '-framework', 'AudioUnit'])
+        conf.env.append_value('LINKFLAGS_AUDIOUNITS', ['-framework', 'Audiotoolbox', '-framework', 'AudioUnit'])
+        conf.env.append_value('LINKFLAGS_AUDIOUNITS', ['-framework', 'Cocoa'])
+
+        if not Options.options.freebie:
+            conf.env.append_value('CXXFLAGS_AUDIOUNITS', "-DAU_STATE_SUPPORT")
+        if not Options.options.nocarbon:
+            conf.env.append_value('CXXFLAGS_AUDIOUNITS', "-DWITH_CARBON")
+            conf.env.append_value('LINKFLAGS_AUDIOUNITS', ['-framework', 'Carbon'])
 
     if Options.options.boost_include != '':
         conf.env.append_value('CXXFLAGS', '-I' + Options.options.boost_include)
-- 
1.6.5.2

