SConsignFile()
EnsureSConsVersion(0, 96)
-version = '2.0alpha2'
+version = '2.0beta1'
subst_dict = { }
BoolOption('FPU_OPTIMIZATION', 'Build runtime checked assembler code', 1),
BoolOption('FFT_ANALYSIS', 'Include FFT analysis window', 0),
BoolOption('SURFACES', 'Build support for control surfaces', 0),
- BoolOption('DMALLOC', 'Compile and link using the dmalloc library', 0)
- )
+ BoolOption('DMALLOC', 'Compile and link using the dmalloc library', 0),
+ BoolOption('LIBLO', 'Compile with support for liblo library', 1),
+ BoolOption('COREAUDIO', 'Compile with Apple\'s CoreAudio library -- UNSTABLE', 0)
+)
#----------------------------------------------------------------------
# a handy helper that provides a way to merge compile/link information
libraries['core'] = LibraryInfo (CCFLAGS = '-Ilibs')
-libraries['sndfile'] = LibraryInfo()
-libraries['sndfile'].ParseConfig('pkg-config --cflags --libs sndfile')
+#libraries['sndfile'] = LibraryInfo(CCFLAGS = '-Ilibs/libsndfile/src')
+#libraries['sndfile'].ParseConfig('pkg-config --cflags --libs sndfile')
libraries['lrdf'] = LibraryInfo()
libraries['lrdf'].ParseConfig('pkg-config --cflags --libs lrdf')
libraries['glib2'].ParseConfig ('pkg-config --cflags --libs glib-2.0')
libraries['glib2'].ParseConfig ('pkg-config --cflags --libs gobject-2.0')
libraries['glib2'].ParseConfig ('pkg-config --cflags --libs gmodule-2.0')
+libraries['glib2'].ParseConfig ('pkg-config --cflags --libs gthread-2.0')
libraries['gtk2'] = LibraryInfo()
libraries['gtk2'].ParseConfig ('pkg-config --cflags --libs gtk+-2.0')
libraries['libgnomecanvas2'] = LibraryInfo()
libraries['libgnomecanvas2'].ParseConfig ('pkg-config --cflags --libs libgnomecanvas-2.0')
-libraries['glade2'] = LibraryInfo()
-libraries['glade2'].ParseConfig ('pkg-config --cflags --libs libglade-2.0')
-
#libraries['flowcanvas'] = LibraryInfo(LIBS='flowcanvas', LIBPATH='#/libs/flowcanvas', CPPPATH='#libs/flowcanvas')
+# The Ardour Control Protocol Library
+
+libraries['ardour_cp'] = LibraryInfo (LIBS='ardour_cp', LIBPATH='#libs/surfaces/control_protocol',
+ CPPPATH='#libs/surfaces/control_protocol')
+
+# The Ardour backend/engine
+
libraries['ardour'] = LibraryInfo (LIBS='ardour', LIBPATH='#libs/ardour', CPPPATH='#libs/ardour')
libraries['midi++2'] = LibraryInfo (LIBS='midi++', LIBPATH='#libs/midi++2', CPPPATH='#libs/midi++2')
libraries['pbd3'] = LibraryInfo (LIBS='pbd', LIBPATH='#libs/pbd3', CPPPATH='#libs/pbd3')
libraries['usb'] = conf.Finish ()
+#
+# Check for liblo
+
+if env['LIBLO']:
+ libraries['lo'] = LibraryInfo ()
+
+ conf = Configure (libraries['lo'])
+ if conf.CheckLib ('lo', 'lo_server_new') == False:
+ print "liblo does not appear to be installed."
+ sys.exit (1)
+
+ libraries['lo'] = conf.Finish ()
+
#
# Check for dmalloc
env['SYSMIDI'] = 'CoreMIDI'
subst_dict['%MIDITAG%'] = "ardour"
subst_dict['%MIDITYPE%'] = "coremidi"
-
+else:
+ print "It appears you don't have the required MIDI libraries installed."
+ sys.exit (1)
+
env = conf.Finish()
if env['SYSLIBS']:
libraries['pangomm'].ParseConfig ('pkg-config --cflags --libs pangomm-1.4')
libraries['libgnomecanvasmm'] = LibraryInfo()
libraries['libgnomecanvasmm'].ParseConfig ('pkg-config --cflags --libs libgnomecanvasmm-2.6')
- libraries['libglademm'] = LibraryInfo()
- libraries['libglademm'].ParseConfig ('pkg-config --cflags --libs libglademm-2.4')
+
+# libraries['libglademm'] = LibraryInfo()
+# libraries['libglademm'].ParseConfig ('pkg-config --cflags --libs libglademm-2.4')
# libraries['flowcanvas'] = LibraryInfo(LIBS='flowcanvas', LIBPATH='#/libs/flowcanvas', CPPPATH='#libs/flowcanvas')
libraries['soundtouch'] = LibraryInfo()
libraries['soundtouch'] = LibraryInfo(LIBS='soundtouch',
LIBPATH='#libs/soundtouch',
CPPPATH=['#libs', '#libs/soundtouch'])
- libraries['libglademm'] = LibraryInfo(LIBS='libglademm',
- LIBPATH='#libs/libglademm',
- CPPPATH='#libs/libglademm')
+ libraries['sndfile'] = LibraryInfo(LIBS='libsndfile',
+ LIBPATH='#libs/libsndfile',
+ CPPPATH='#libs/libsndfile')
+# libraries['libglademm'] = LibraryInfo(LIBS='libglademm',
+# LIBPATH='#libs/libglademm',
+# CPPPATH='#libs/libglademm')
coredirs = [
'libs/soundtouch',
subdirs = [
# 'libs/cassowary',
'libs/sigc++2',
+ 'libs/libsndfile',
'libs/pbd3',
'libs/midi++2',
'libs/ardour'
'libs/gtkmm2/atk',
'libs/gtkmm2/gdk',
'libs/gtkmm2/gtk',
- 'libs/libglademm',
'libs/libgnomecanvasmm',
# 'libs/flowcanvas',
'libs/gtkmm2ext',
'gtk2_ardour'
]
-surface_subdirs = []
+#
+# always build the LGPL control protocol lib, since we link against it ourselves
+# ditto for generic MIDI
+#
+
+surface_subdirs = [ 'libs/surfaces/control_protocol', 'libs/surfaces/generic_midi' ]
if env['SURFACES']:
- surface_subdirs += [ 'libs/surfaces/generic_midi' ]
if have_libusb:
surface_subdirs += [ 'libs/surfaces/tranzport' ]
+ if os.access ('libs/surfaces/sony9pin', os.F_OK):
+ surface_subdirs += [ 'libs/surfaces/sony9pin' ]
opts.Save('scache.conf', env)
Help(opts.GenerateHelpText(env))
print "\nWarning: you are building Ardour with SSE support even though your system does not support these instructions. (This may not be an error, especially if you are a package maintainer)"
# end optimization section
+#
+# save off guessed arch element in an env
+#
+env.Append(CONFIG_ARCH=config[config_arch])
+
+
#
# ARCH="..." overrides all
#
if env['VST']:
env.Append(CCFLAGS="-DVST_SUPPORT")
+if env['LIBLO']:
+ env.Append(CCFLAGS="-DHAVE_LIBLO")
+
#
# everybody needs this
#
for subdir in coredirs:
SConscript (subdir + '/SConscript')
-for sublistdir in [subdirs, gtk_subdirs, surface_subdirs]:
- for subdir in sublistdir:
- SConscript (subdir + '/SConscript')
-
+for sublistdir in [ subdirs, gtk_subdirs, surface_subdirs ]:
+ for subdir in sublistdir:
+ SConscript (subdir + '/SConscript')
+
# cleanup
env.Clean ('scrub', [ 'scache.conf', '.sconf_temp', '.sconsign.dblite', 'config.log'])