Clean up duplicatey configuration summary / config_text.cc mess.

git-svn-id: svn://localhost/ardour2/branches/3.0@9663 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
David Robillard 2011-06-01 21:28:44 +00:00
parent 26c0bac46d
commit be1b92dbf0
1 changed files with 49 additions and 61 deletions

110
wscript
View File

@ -127,8 +127,6 @@ def set_compiler_flags (conf,opt):
config_os = 3 config_os = 3
config = config_guess.split ("-") config = config_guess.split ("-")
autowaf.display_msg(conf, "System Triple", config_guess)
if opt.gprofile: if opt.gprofile:
debug_flags = [ '-pg' ] debug_flags = [ '-pg' ]
else: else:
@ -512,97 +510,87 @@ def configure(conf):
conf.env.append_value('CCFLAGS', '-DWAF_BUILD') conf.env.append_value('CCFLAGS', '-DWAF_BUILD')
conf.env.append_value('CXXFLAGS', '-DWAF_BUILD') conf.env.append_value('CXXFLAGS', '-DWAF_BUILD')
# debug builds should not call home # Set up waf environment
opts = Options.options opts = Options.options
if opts.debug: if opts.debug:
opts.phone_home = False; opts.phone_home = False; # debug builds should not call home
autowaf.display_msg(conf, 'Build Target', conf.env['build_target'])
autowaf.display_msg(conf, 'Architecture flags', opts.arch)
autowaf.display_msg(conf, 'Aubio', bool(conf.env['HAVE_AUBIO']))
autowaf.display_msg(conf, 'CoreAudio', bool(conf.env['HAVE_COREAUDIO']))
autowaf.display_msg(conf, 'FLAC', bool(conf.env['HAVE_FLAC']))
autowaf.display_msg(conf, 'Phone Home', opts.phone_home)
if opts.phone_home: if opts.phone_home:
conf.env['PHONE_HOME'] = opts.phone_home conf.env['PHONE_HOME'] = opts.phone_home
autowaf.display_msg(conf, 'FPU Optimization', opts.fpu_optimization)
if opts.fpu_optimization: if opts.fpu_optimization:
conf.define('FPU_OPTIMIZATION', 1) conf.define('FPU_OPTIMIZATION', 1)
autowaf.display_msg(conf, 'Freedesktop Files', opts.freedesktop)
autowaf.display_msg(conf, 'Freesound', opts.freesound)
if opts.freesound: if opts.freesound:
conf.define('FREESOUND',1) conf.define('FREESOUND',1)
autowaf.display_msg(conf, 'LV2 Support', bool(conf.env['LV2_SUPPORT']))
autowaf.display_msg(conf, 'LV2 UI Embedding', bool(conf.env['HAVE_SUIL']))
autowaf.display_msg(conf, 'OGG', bool(conf.env['HAVE_OGG']))
autowaf.display_msg(conf, 'Rubberband', bool(conf.env['HAVE_RUBBERBAND']))
autowaf.display_msg(conf, 'Samplerate', bool(conf.env['HAVE_SAMPLERATE']))
autowaf.display_msg(conf, 'Soundtouch', bool(conf.env['HAVE_SOUNDTOUCH']))
autowaf.display_msg(conf, 'Translation', opts.nls)
if opts.nls: if opts.nls:
conf.define ('ENABLE_NLS', 1) conf.define ('ENABLE_NLS', 1)
autowaf.display_msg(conf, 'Tranzport', opts.tranzport)
if opts.build_tests: if opts.build_tests:
conf.env['BUILD_TESTS'] = opts.build_tests conf.env['BUILD_TESTS'] = opts.build_tests
autowaf.display_msg(conf, 'Unit Tests', bool(conf.env['BUILD_TESTS']) and bool (conf.env['HAVE_CPPUNIT']))
if opts.tranzport: if opts.tranzport:
conf.define('TRANZPORT', 1) conf.define('TRANZPORT', 1)
autowaf.display_msg(conf, 'Universal Binary', opts.universal)
autowaf.display_msg(conf, 'VST Support', opts.vst)
if opts.vst: if opts.vst:
conf.define('VST_SUPPORT', 1) conf.define('VST_SUPPORT', 1)
conf.env.append_value('CPPPATH', Options.options.wine_include) conf.env.append_value('CPPPATH', Options.options.wine_include)
autowaf.check_header(conf, 'windows.h', mandatory = True) autowaf.check_header(conf, 'windows.h', mandatory = True)
if bool(conf.env['JACK_SESSION']): if bool(conf.env['JACK_SESSION']):
conf.define ('HAVE_JACK_SESSION', 1) conf.define ('HAVE_JACK_SESSION', 1)
autowaf.display_msg(conf, 'Wiimote Support', opts.wiimote)
if opts.wiimote: if opts.wiimote:
conf.define('WIIMOTE',1) conf.define('WIIMOTE',1)
conf.define('WINDOWS_KEY', opts.windows_key) conf.define('WINDOWS_KEY', opts.windows_key)
autowaf.display_msg(conf, 'Windows Key', opts.windows_key)
conf.env['PROGRAM_NAME'] = opts.program_name conf.env['PROGRAM_NAME'] = opts.program_name
autowaf.display_msg(conf, 'Program Name', opts.program_name)
if opts.rt_alloc_debug: if opts.rt_alloc_debug:
conf.define('DEBUG_RT_ALLOC', 1) conf.define('DEBUG_RT_ALLOC', 1)
if not conf.env['HAVE_CPPUNIT']:
conf.env['BUILD_TESTS'] = False
set_compiler_flags (conf, Options.options) set_compiler_flags (conf, Options.options)
autowaf.display_msg(conf, 'C Compiler flags', conf.env['CCFLAGS']) config_text = open('libs/ardour/config_text.cc', "w")
autowaf.display_msg(conf, 'C++ Compiler flags', conf.env['CXXFLAGS']) config_text.write('''#include "ardour/ardour.h"
print('') namespace ARDOUR {
const char* const ardour_config_info = "\\n\\
''')
# and dump the same stuff to a file for use in the build def write_config_text(title, val):
autowaf.display_msg(conf, title, val)
config_text.write(title + ': ')
config_text.write(str(val))
config_text.write("\\n\\\n")
config_text = open ('libs/ardour/config_text.cc',"w") write_config_text('Build documentation', conf.env['DOCS'])
config_text.write ('#include "ardour/ardour.h"\n\nnamespace ARDOUR {\nconst char* const ardour_config_info = "\\n\\\n') write_config_text('Debuggable build', conf.env['DEBUG'])
config_text.write ("Install prefix: "); config_text.write (str (conf.env['PREFIX'])); config_text.write ("\\n\\\n") write_config_text('Install prefix', conf.env['PREFIX'])
config_text.write ("Debuggable build: "); config_text.write (str (str(conf.env['DEBUG']))); config_text.write ("\\n\\\n") write_config_text('Strict compiler flags', conf.env['STRICT'])
config_text.write ("Strict compiler flags: "); config_text.write (str (str(conf.env['STRICT']))); config_text.write ("\\n\\\n")
config_text.write ("Build documentation: "); config_text.write (str (str(conf.env['DOCS']))); config_text.write ("\\n\\\n") write_config_text('Architecture flags', opts.arch)
config_text.write ('Build target: '); config_text.write (str (conf.env['build_target'])); config_text.write ("\\n\\\n") write_config_text('Aubio', bool(conf.env['HAVE_AUBIO']))
config_text.write ('Architecture flags: '); config_text.write (str (opts.arch)); config_text.write ("\\n\\\n") write_config_text('Build target', conf.env['build_target'])
config_text.write ('Aubio: '); config_text.write (str (bool(conf.env['HAVE_AUBIO']))); config_text.write ("\\n\\\n") write_config_text('CoreAudio', bool(conf.env['HAVE_COREAUDIO']))
config_text.write ('FPU optimization: '); config_text.write (str (opts.fpu_optimization)); config_text.write ("\\n\\\n") write_config_text('FLAC', bool(conf.env['HAVE_FLAC']))
config_text.write ('Freedesktop files: '); config_text.write (str (opts.freedesktop)); config_text.write ("\\n\\\n") write_config_text('FPU optimization', opts.fpu_optimization)
config_text.write ('Freesound: '); config_text.write (str (opts.freesound)); config_text.write ("\\n\\\n") write_config_text('Freedesktop files', opts.freedesktop)
config_text.write ('LV2 support: '); config_text.write (str (bool(conf.env['LV2_SUPPORT']))); config_text.write ("\\n\\\n") write_config_text('Freesound', opts.freesound)
config_text.write ('LV2 UI embedding: '); config_text.write (str (bool(conf.env['HAVE_SUIL']))); config_text.write ("\\n\\\n") write_config_text('JACK session support', bool(conf.env['JACK_SESSION']))
config_text.write ('Rubberband: '); config_text.write (str (bool(conf.env['HAVE_RUBBERBAND']))); config_text.write ("\\n\\\n") write_config_text('LV2 UI embedding', bool(conf.env['HAVE_SUIL']))
config_text.write ('Samplerate: '); config_text.write (str (bool(conf.env['HAVE_SAMPLERATE']))); config_text.write ("\\n\\\n") write_config_text('LV2 support', bool(conf.env['LV2_SUPPORT']))
config_text.write ('Soundtouch: '); config_text.write (str (bool(conf.env['HAVE_SOUNDTOUCH']))); config_text.write ("\\n\\\n") write_config_text('OGG', bool(conf.env['HAVE_OGG']))
config_text.write ('Translation: '); config_text.write (str (opts.nls)); config_text.write ("\\n\\\n") write_config_text('Phone home', bool(conf.env['PHONE_HOME']))
config_text.write ('Tranzport: '); config_text.write (str (opts.tranzport)); config_text.write ("\\n\\\n") write_config_text('Program name', opts.program_name)
config_text.write ('Universal binary: '); config_text.write (str (opts.universal)); config_text.write ("\\n\\\n") write_config_text('Rubberband', bool(conf.env['HAVE_RUBBERBAND']))
config_text.write ('VST support: '); config_text.write (str (opts.vst)); config_text.write ("\\n\\\n") write_config_text('Samplerate', bool(conf.env['HAVE_SAMPLERATE']))
config_text.write ('Wiimote support: '); config_text.write (str (opts.wiimote)); config_text.write ("\\n\\\n") write_config_text('Soundtouch', bool(conf.env['HAVE_SOUNDTOUCH']))
config_text.write ('Windows key: '); config_text.write (str (opts.windows_key)); config_text.write ("\\n\\\n") write_config_text('Translation', opts.nls)
config_text.write ('C compiler flags: '); config_text.write (str (conf.env['CCFLAGS'])); config_text.write ("\\n\\\n") write_config_text('Tranzport', opts.tranzport)
config_text.write ('C++ compiler flags: '); config_text.write (str (conf.env['CXXFLAGS'])); config_text.write ("\\n\\\n") write_config_text('Unit tests', bool(conf.env['BUILD_TESTS']))
config_text.write ('Phone home: '); config_text.write (str (bool(conf.env['PHONE_HOME']))); config_text.write ("\\n\\\n") write_config_text('Universal binary', opts.universal)
config_text.write ('JACK session support: '); config_text.write (str (bool(conf.env['JACK_SESSION']))); config_text.write ("\\n\\\n") write_config_text('VST support', opts.vst)
config_text.write ('";}\n') write_config_text('Wiimote support', opts.wiimote)
write_config_text('Windows key', opts.windows_key)
write_config_text('C compiler flags', conf.env['CCFLAGS'])
write_config_text('C++ compiler flags', conf.env['CXXFLAGS'])
config_text.write ('";\n}\n')
config_text.close () config_text.close ()
print('')
def build(bld): def build(bld):
# add directories that contain only headers, to workaround an issue with waf # add directories that contain only headers, to workaround an issue with waf