BoolOption('SYSLIBS', 'USE AT YOUR OWN RISK: CANCELS ALL SUPPORT FROM ARDOUR AUTHORS: Use existing system versions of various libraries instead of internal ones', 0),
BoolOption('DEBUG', 'Set to build with debugging information and no optimizations', 0),
PathOption('DESTDIR', 'Set the intermediate install "prefix"', '/'),
- BoolOption('DEVBUILD', 'Use shared libardour (developers only)', 0),
BoolOption('NLS', 'Set to turn on i18n support', 1),
PathOption('PREFIX', 'Set the install "prefix"', '/usr/local'),
BoolOption('VST', 'Compile with support for VST', 0),
BoolOption('VERSIONED', 'Add version information to ardour/gtk executable name inside the build directory', 0),
EnumOption('DIST_TARGET', 'Build target for cross compiling packagers', 'auto', allowed_values=('auto', 'i386', 'i686', 'x86_64', 'powerpc', 'tiger', 'panther', 'none' ), ignorecase=2),
BoolOption('FPU_OPTIMIZATION', 'Build runtime checked assembler code', 1),
- BoolOption('FFT_ANALYSIS', 'Include FFT analysis window', 0)
+ 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)
)
#----------------------------------------------------------------------
libraries['xml'] = LibraryInfo()
libraries['xml'].ParseConfig('pkg-config --cflags --libs libxml-2.0')
+libraries['xslt'] = LibraryInfo()
+libraries['xslt'].ParseConfig('pkg-config --cflags --libs libxslt')
+
libraries['glib2'] = LibraryInfo()
libraries['glib2'].ParseConfig ('pkg-config --cflags --libs glib-2.0')
libraries['glib2'].ParseConfig ('pkg-config --cflags --libs gobject-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['usb'] = LibraryInfo (LIBS='usb')
-
#libraries['flowcanvas'] = LibraryInfo(LIBS='flowcanvas', LIBPATH='#/libs/flowcanvas', CPPPATH='#libs/flowcanvas')
libraries['ardour'] = LibraryInfo (LIBS='ardour', LIBPATH='#libs/ardour', CPPPATH='#libs/ardour')
if env['VST']:
libraries['fst'].ParseConfig('pkg-config --cflags --libs libfst')
+#
+# Check for libusb
+
+libraries['usb'] = LibraryInfo ()
+
+conf = Configure (libraries['usb'])
+if conf.CheckLib ('usb', 'usb_interrupt_write'):
+ have_libusb = True
+else:
+ have_libusb = False
+
+libraries['usb'] = conf.Finish ()
+
+#
+# Check for liblo
+
+libraries['lo'] = LibraryInfo ()
+
+conf = Configure (libraries['lo'])
+if conf.CheckLib ('lo', 'lo_server_new') == False:
+ print "liblo does not appear to be installed."
+ exit (0)
+
+libraries['lo'] = conf.Finish ()
+
+#
+# Check for dmalloc
+
+libraries['dmalloc'] = LibraryInfo ()
+
+#
+# look for the threaded version
+#
+
+conf = Configure (libraries['dmalloc'])
+if conf.CheckLib ('dmallocth', 'dmalloc_shutdown'):
+ have_libdmalloc = True
+else:
+ have_libdmalloc = False
+
+libraries['dmalloc'] = conf.Finish ()
+
+#
+
#
# Audio/MIDI library (needed for MIDI, since audio is all handled via JACK)
#
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['libglademm'] = LibraryInfo(LIBS='libglademm',
+# LIBPATH='#libs/libglademm',
+# CPPPATH='#libs/libglademm')
coredirs = [
'libs/soundtouch',
]
subdirs = [
-# 'libs/cassowary',
+# 'libs/cassowary',
'libs/sigc++2',
'libs/pbd3',
'libs/midi++2',
'libs/gtkmm2/atk',
'libs/gtkmm2/gdk',
'libs/gtkmm2/gtk',
- 'libs/libglademm',
'libs/libgnomecanvasmm',
# 'libs/flowcanvas',
'libs/gtkmm2ext',
'gtk2_ardour'
]
-surface_subdirs = [
- 'libs/surfaces/tranzport',
- 'libs/surfaces/generic_midi'
- ]
+surface_subdirs = []
+if env['SURFACES']:
+ surface_subdirs += [ 'libs/surfaces/generic_midi' ]
+ if have_libusb:
+ surface_subdirs += [ 'libs/surfaces/tranzport' ]
+
opts.Save('scache.conf', env)
Help(opts.GenerateHelpText(env))
final_prefix = '$PREFIX'
install_prefix = '$DESTDIR/$PREFIX'
+subst_dict['INSTALL_PREFIX'] = install_prefix;
+
if env['PREFIX'] == '/usr':
final_config_prefix = '/etc'
else:
SConscript (subdir + '/SConscript')
for sublistdir in [subdirs, gtk_subdirs, surface_subdirs]:
- for subdir in sublistdir:
- SConscript (subdir + '/SConscript')
-
+ for subdir in sublistdir:
+ SConscript (subdir + '/SConscript')
+
# cleanup
env.Clean ('scrub', [ 'scache.conf', '.sconf_temp', '.sconsign.dblite', 'config.log'])