X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=wscript;h=08a3827f474f92a0a9736f48ade51807132a97c8;hb=96a8a645363c878e41038f1fdee83bb4bb4e9869;hp=561a2a4770078c2b40e58c5370da4e660fd7ef97;hpb=72e11bae94c805b738b69348147c28a3f678b3c8;p=ardour.git diff --git a/wscript b/wscript index 561a2a4770..08a3827f47 100644 --- a/wscript +++ b/wscript @@ -8,7 +8,7 @@ import subprocess import sys # Variables for 'waf dist' -VERSION = '3.0beta1a' +VERSION = '3.0beta3' APPNAME = 'Ardour3' # Mandatory variables @@ -34,7 +34,8 @@ children = [ 'gtk2_ardour', 'templates', 'export', - 'midi_maps' + 'midi_maps', + 'manual' ] i18n_children = [ @@ -309,6 +310,10 @@ def set_compiler_flags (conf,opt): conf.env.append_value('CXXFLAGS', '-DDEBUG_RT_ALLOC') conf.env.append_value('LINKFLAGS', '-ldl') + if conf.env['DEBUG_DENORMAL_EXCEPTION']: + conf.env.append_value('CFLAGS', '-DDEBUG_DENORMAL_EXCEPTION') + conf.env.append_value('CXXFLAGS', '-DDEBUG_DENORMAL_EXCEPTION') + if opt.universal: if not Options.options.nocarbon: conf.env.append_value('CFLAGS', ["-arch", "i386", "-arch", "ppc"]) @@ -386,12 +391,16 @@ def options(opt): help='Build with debugging for the STL') opt.add_option('--rt-alloc-debug', action='store_true', default=False, dest='rt_alloc_debug', help='Build with debugging for memory allocation in the real-time thread') + opt.add_option('--pt-timing', action='store_true', default=False, dest='pt_timing', + help='Build with logging of timing in the process thread(s)') + opt.add_option('--denormal-exception', action='store_true', default=False, dest='denormal_exception', + help='Raise a floating point exception if a denormal is detected') opt.add_option('--test', action='store_true', default=False, dest='build_tests', help="Build unit tests") opt.add_option('--tranzport', action='store_true', default=False, dest='tranzport', help='Compile with support for Frontier Designs Tranzport (if libusb is available)') opt.add_option('--universal', action='store_true', default=False, dest='universal', - help='Compile as universal binary (requires that external libraries are universal)') + help='Compile as universal binary (OS X ONLY, 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('--windows-vst', action='store_true', default=False, dest='windows_vst', @@ -427,7 +436,6 @@ def configure(conf): 'Thanks for your co-operation with our development process.\n\n' + 'Press Enter to continue.\n') sys.stdin.readline() - create_stored_revision() conf.env['VERSION'] = VERSION conf.line_just = 52 autowaf.set_recursive() @@ -442,8 +450,17 @@ def configure(conf): if sys.platform == 'darwin': + # libintl may or may not be trivially locatable + if not os.path.isfile ('/usr/include/libintl.h'): + # XXXX hack hack hack + prefinclude = ''.join ([ '-I', os.path.expanduser ('~/gtk/inst/include') ]) + preflib = ''.join ([ '-L', os.path.expanduser ('~/gtk/inst/lib') ]) + conf.env.append_value('CFLAGS', [ prefinclude ]) + conf.env.append_value('CXXFLAGS', [prefinclude ]) + conf.env.append_value('LINKFLAGS', [ preflib ]) + # this is required, potentially, for anything we link and then relocate into a bundle - conf.env.append_value('LINKFLAGS', [ '-Xlinker', '-headerpad', '-Xlinker', '2048']) + conf.env.append_value('LINKFLAGS', [ '-Xlinker', '-headerpad_max_install_names' ]) conf.define ('HAVE_COREAUDIO', 1) conf.define ('AUDIOUNIT_SUPPORT', 1) @@ -481,7 +498,7 @@ def configure(conf): # off processor type. Need to add in a check # for that. # - conf.env.append_value('CXXFLAGS_OSX', '-F/System/LibraryFrameworks') + conf.env.append_value('CXXFLAGS_OSX', '-F/System/Library/Frameworks') conf.env.append_value('CXXFLAGS_OSX', '-F/Library/Frameworks') conf.env.append_value('LINKFLAGS_OSX', ['-framework', 'AppKit']) @@ -494,7 +511,7 @@ def configure(conf): conf.env.append_value('LINKFLAGS_OSX', ['-flat_namespace']) conf.env.append_value('CXXFLAGS_AUDIOUNITS', "-DAUDIOUNIT_SUPPORT") - conf.env.append_value('LINKFLAGS_AUDIOUNITS', ['-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: @@ -581,6 +598,13 @@ def configure(conf): conf.env['PROGRAM_NAME'] = opts.program_name if opts.rt_alloc_debug: conf.define('DEBUG_RT_ALLOC', 1) + conf.env['DEBUG_RT_ALLOC'] = True + if opts.pt_timing: + conf.define('PT_TIMING', 1) + conf.env['PT_TIMING'] = True + if opts.denormal_exception: + conf.define('DEBUG_DENORMAL_EXCEPTION', 1) + conf.env['DEBUG_DENORMAL_EXCEPTION'] = True if not conf.is_defined('HAVE_CPPUNIT'): conf.env['BUILD_TESTS'] = False @@ -609,6 +633,9 @@ const char* const ardour_config_info = "\\n\\ write_config_text('AU state support', conf.is_defined('AU_STATE_SUPPORT')) write_config_text('Build target', conf.env['build_target']) write_config_text('CoreAudio', conf.is_defined('HAVE_COREAUDIO')) + write_config_text('Debug RT allocations', conf.is_defined('DEBUG_RT_ALLOC')) + write_config_text('Process thread timing', conf.is_defined('PT_TIMING')) + write_config_text('Denormal exceptions', conf.is_defined('DEBUG_DENORMAL_EXCEPTION')) write_config_text('FLAC', conf.is_defined('HAVE_FLAC')) write_config_text('FPU optimization', opts.fpu_optimization) write_config_text('Freedesktop files', opts.freedesktop) @@ -616,6 +643,7 @@ const char* const ardour_config_info = "\\n\\ write_config_text('JACK session support', conf.is_defined('JACK_SESSION')) write_config_text('LV2 UI embedding', conf.is_defined('HAVE_SUIL')) write_config_text('LV2 support', conf.is_defined('LV2_SUPPORT')) + write_config_text('LV2 state support', conf.is_defined('HAVE_NEW_LILV')) write_config_text('LXVST support', conf.is_defined('LXVST_SUPPORT')) write_config_text('OGG', conf.is_defined('HAVE_OGG')) write_config_text('Phone home', conf.is_defined('PHONE_HOME')) @@ -639,6 +667,8 @@ const char* const ardour_config_info = "\\n\\ print('') def build(bld): + create_stored_revision() + # add directories that contain only headers, to workaround an issue with waf bld.path.find_dir ('libs/evoral/evoral')