Trim function that is only used once.
[ardour.git] / wscript
diff --git a/wscript b/wscript
index af08b5e06627670d867bb3908f8118708e2f9db6..6ec0fd7258f40ab2f43098feda00bff10cfcfb4d 100644 (file)
--- a/wscript
+++ b/wscript
@@ -8,8 +8,8 @@ import subprocess
 import sys
 
 # Variables for 'waf dist'
-VERSION = '3.0alpha10'
-APPNAME = 'Ardour'
+VERSION = '3.0beta1a'
+APPNAME = 'Ardour3'
 
 # Mandatory variables
 top = '.'
@@ -45,8 +45,10 @@ i18n_children = [
 
 if sys.platform != 'darwin':
     children += [ 'tools/sanity_check' ]
+    lxvst_default = True
 else:
     children += [ 'libs/appleutility' ]
+    lxvst_default = False
 
 # Version stuff
 
@@ -242,18 +244,15 @@ def set_compiler_flags (conf,opt):
     # no VST on x86_64
     #
 
-    if conf.env['build_target'] == 'x86_64' and opt.vst:
+    if conf.env['build_target'] == 'x86_64' and opt.windows_vst:
         print("\n\n==================================================")
-        print("You cannot use VST plugins with a 64 bit host. Please run waf with --vst=0")
+        print("You cannot use VST plugins with a 64 bit host. Please run waf with --windows-vst=0")
         print("\nIt is theoretically possible to build a 32 bit host on a 64 bit system.")
         print("However, this is tricky and not recommended for beginners.")
         sys.exit (-1)
 
     if opt.lxvst:
         if conf.env['build_target'] == 'x86_64':
-            print("\n\n********************************************************")
-            print("* Building with 64Bit linuxVST support is experimental *")
-            print("********************************************************\n\n")
             conf.env.append_value('CXXFLAGS', "-DLXVST_64BIT")
         else:
             conf.env.append_value('CXXFLAGS', "-DLXVST_32BIT")
@@ -324,11 +323,6 @@ def set_compiler_flags (conf,opt):
     conf.env.append_value('CFLAGS', "-Wall")
     conf.env.append_value('CXXFLAGS', [ '-Wall', '-Woverloaded-virtual'])
 
-    if opt.extra_warn:
-        flags = [ '-Wextra' ]
-        conf.env.append_value('CFLAGS', flags)
-        conf.env.append_value('CXXFLAGS', flags)
-
 
     #
     # more boilerplate
@@ -353,7 +347,7 @@ def set_compiler_flags (conf,opt):
 def options(opt):
     opt.load('compiler_c')
     opt.load('compiler_cxx')
-    autowaf.set_options(opt)
+    autowaf.set_options(opt, debug_by_default=True)
     opt.add_option('--program-name', type='string', action='store', default='Ardour', dest='program_name',
                     help='The user-visible name of the program being built')
     opt.add_option('--arch', type='string', action='store', dest='arch',
@@ -362,25 +356,26 @@ def options(opt):
                     help='Compile with Boost shared pointer debugging')
     opt.add_option('--dist-target', type='string', default='auto', dest='dist_target',
                     help='Specify the target for cross-compiling [auto,none,x86,i386,i686,x86_64,powerpc,tiger,leopard]')
-    opt.add_option('--extra-warn', action='store_true', default=False, dest='extra_warn',
-                    help='Build with even more compiler warning flags')
     opt.add_option('--fpu-optimization', action='store_true', default=True, dest='fpu_optimization',
                     help='Build runtime checked assembler code (default)')
     opt.add_option('--no-fpu-optimization', action='store_false', dest='fpu_optimization')
     opt.add_option('--freedesktop', action='store_true', default=False, dest='freedesktop',
                     help='Install MIME type, icons and .desktop file as per freedesktop.org standards')
+    opt.add_option('--freebie', action='store_true', default=False, dest='freebie',
+                    help='Build a version suitable for distribution as a zero-cost binary')
     opt.add_option('--freesound', action='store_true', default=False, dest='freesound',
                     help='Include Freesound database lookup')
     opt.add_option('--gprofile', action='store_true', default=False, dest='gprofile',
                     help='Compile for use with gprofile')
-    opt.add_option('--lv2', action='store_true', default=False, dest='lv2',
+    opt.add_option('--lv2', action='store_true', default=True, dest='lv2',
                     help='Compile with support for LV2 (if Lilv+Suil is available)')
-    opt.add_option('--lxvst', action='store_true', default=True, dest='lxvst',
+    opt.add_option('--no-lv2', action='store_false', dest='lv2',
+                    help='Do not compile with support for LV2')
+    opt.add_option('--lxvst', action='store_true', default=lxvst_default, dest='lxvst',
                     help='Compile with support for linuxVST plugins')
     opt.add_option('--nls', action='store_true', default=True, dest='nls',
                     help='Enable i18n (native language support) (default)')
     opt.add_option('--no-nls', action='store_false', dest='nls')
-    opt.add_option('--optimize', action='store_false', dest='debug')
     opt.add_option('--phone-home', action='store_false', default=False, dest='phone_home')
     opt.add_option('--stl-debug', action='store_true', default=False, dest='stl_debug',
                     help='Build with debugging for the STL')
@@ -394,8 +389,8 @@ def options(opt):
                     help='Compile as universal binary (requires that external libraries are universal)')
     opt.add_option('--versioned', action='store_true', default=False, dest='versioned',
                     help='Add revision information to executable name inside the build directory')
-    opt.add_option('--vst', action='store_true', default=False, dest='vst',
-                    help='Compile with support for VST')
+    opt.add_option('--windows-vst', action='store_true', default=False, dest='windows_vst',
+                    help='Compile with support for Windows VST')
     opt.add_option('--wiimote', action='store_true', default=False, dest='wiimote',
                     help='Build the wiimote control surface')
     opt.add_option('--windows-key', type='string', action='store', dest='windows_key', default='Mod4><Super',
@@ -420,7 +415,7 @@ def configure(conf):
     conf.load('compiler_c')
     conf.load('compiler_cxx')
     if not Options.options.noconfirm:
-        print ('\n\nThis is an alpha version of Ardour 3.0.\n\n' +
+        print ('\n\nThis is a beta version of Ardour 3.0.\n\n' +
                'You are respectfully requested NOT to ask for assistance with build issues\n' +
                'and not to report issues with Ardour 3.0 on the forums at ardour.org.\n\n' +
                'Please use IRC, the bug tracker and/or the ardour mailing lists (-dev or -user)\n\n' +
@@ -447,7 +442,8 @@ def configure(conf):
 
         conf.define ('HAVE_COREAUDIO', 1)
         conf.define ('AUDIOUNIT_SUPPORT', 1)
-        conf.define ('AU_STATE_SUPPORT', 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)
@@ -482,15 +478,17 @@ def configure(conf):
 
         conf.env.append_value('LINKFLAGS_OSX', ['-framework', 'AppKit'])
         conf.env.append_value('LINKFLAGS_OSX', ['-framework', 'CoreAudio'])
+        conf.env.append_value('LINKFLAGS_OSX', ['-framework', 'CoreAudioKit'])
         conf.env.append_value('LINKFLAGS_OSX', ['-framework', 'CoreFoundation'])
         conf.env.append_value('LINKFLAGS_OSX', ['-framework', 'CoreServices'])
 
-        conf.env.append_value('LINKFLAGS_OSX', ['-undefined', 'suppress' ])
-        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', 'Audiotoolbox', '-framework', 'AudioUnit'])
+        conf.env.append_value('LINKFLAGS_AUDIOUNITS', ['-framework', 'Carbon', 
+               '-framework', 'Audiotoolbox', '-framework', 'AudioUnit'])
 
     if Options.options.boost_include != '':
         conf.env.append_value('CXXFLAGS', '-I' + Options.options.boost_include)
@@ -552,10 +550,11 @@ def configure(conf):
         conf.env['BUILD_TESTS'] = opts.build_tests
     if opts.tranzport:
         conf.env['TRANZPORT'] = 1
-    if opts.vst:
-        conf.define('VST_SUPPORT', 1)
-        conf.env['VST_SUPPORT'] = True
-        conf.env.append_value('CPPPATH', Options.options.wine_include)
+    if opts.windows_vst:
+        conf.define('WINDOWS_VST_SUPPORT', 1)
+        conf.env['WINDOWS_VST_SUPPORT'] = True
+        conf.env.append_value('CFLAGS', '-I' + Options.options.wine_include)
+        conf.env.append_value('CXXFLAGS', '-I' + Options.options.wine_include)
         autowaf.check_header(conf, 'cxx', 'windows.h', mandatory = True)
     if opts.lxvst:
         conf.define('LXVST_SUPPORT', 1)
@@ -613,9 +612,9 @@ const char* const ardour_config_info = "\\n\\
 #    write_config_text('Soundtouch',            conf.is_defined('HAVE_SOUNDTOUCH'))
     write_config_text('Translation',           opts.nls)
     write_config_text('Tranzport',             opts.tranzport)
-    write_config_text('Unit tests',            conf.is_defined('BUILD_TESTS'))
+    write_config_text('Unit tests',            conf.env['BUILD_TESTS'])
     write_config_text('Universal binary',      opts.universal)
-    write_config_text('VST support',           opts.vst)
+    write_config_text('Windows VST support',   opts.windows_vst)
     write_config_text('Wiimote support',       opts.wiimote)
     write_config_text('Windows key',           opts.windows_key)
 
@@ -669,3 +668,12 @@ def build(bld):
 
 def i18n(bld):
     bld.recurse (i18n_children)
+
+def i18n_pot(bld):
+    bld.recurse (i18n_children)
+
+def i18n_po(bld):
+    bld.recurse (i18n_children)
+
+def i18n_mo(bld):
+    bld.recurse (i18n_children)