from sets import Set
import SCons.Node.FS
+print "\n----------------------------------------\nPlease build Ardour 3.X using waf:\n\n./waf configure\n./waf"
+exit (0)
+
SConsignFile()
EnsureSConsVersion(0, 96)
opts = Options('scache.conf')
opts.AddOptions(
('ARCH', 'Set architecture-specific compilation flags by hand (all flags as 1 argument)',''),
- ('WINDOWS_KEY', 'Set X Modifier (Mod1,Mod2,Mod3,Mod4,Mod5) for "Windows" key', 'Mod4'),
+ ('WINDOWS_KEY', 'Set X Modifier (Mod1,Mod2,Mod3,Mod4,Mod5) for "Windows" key', 'Mod4><Super'),
BoolOption('AUDIOUNITS', 'Compile with Apple\'s AudioUnit library. (experimental)', 0),
BoolOption('COREAUDIO', 'Compile with Apple\'s CoreAudio library', 0),
BoolOption('GTKOSX', 'Compile for use with GTK-OSX, not GTK-X11', 0),
env.Append (BUILDERS = {'Distribute' : dist_bld})
env.Append (BUILDERS = {'Tarball' : tarball_bld})
-#
-# Make sure they know what they are doing
-#
-
-if env['VST']:
- if os.path.isfile('.personal_use_only'):
- print "Enabling VST support. Note that distributing a VST-enabled ardour\nis a violation of several different licences.\nBuild with VST=false if you intend to distribute ardour to others."
- else:
- sys.stdout.write ("Are you building Ardour for personal use (rather than distribution to others)? [no]: ")
- answer = sys.stdin.readline ()
- answer = answer.rstrip().strip()
- if answer == "yes" or answer == "y":
- fh = open('.personal_use_only', 'w')
- fh.close()
- print "OK, VST support will be enabled"
- else:
- print 'You cannot build Ardour with VST support for distribution to others.\nIt is a violation of several different licenses. Build with VST=false.'
- sys.exit (-1);
-else:
- if os.path.isfile('.personal_use_only'):
- os.remove('.personal_use_only')
-
####################
# push environment
####################
def pushEnvironment(context):
if os.environ.has_key('PATH'):
context.Append(PATH = os.environ['PATH'])
+ context['ENV']['PATH'] = os.environ['PATH']
if os.environ.has_key('PKG_CONFIG_PATH'):
context.Append(PKG_CONFIG_PATH = os.environ['PKG_CONFIG_PATH'])
+ context['ENV']['PKG_CONFIG_PATH'] = os.environ['PKG_CONFIG_PATH']
if os.environ.has_key('CC'):
context['CC'] = os.environ['CC']
if env['LV2']:
conf = env.Configure(custom_tests = { 'CheckPKGVersion' : CheckPKGVersion})
- if conf.CheckPKGVersion('slv2', '0.6.2'):
+ if conf.CheckPKGVersion('slv2', '0.6.4'):
libraries['slv2'] = LibraryInfo()
libraries['slv2'].ParseConfig('pkg-config --cflags --libs slv2')
- env.Append (CCFLAGS="-DHAVE_LV2")
+ env.Append (CCFLAGS="-DHAVE_SLV2")
else:
- print 'LV2 support is not enabled (SLV2 not found or older than 0.6.0)'
+ print 'LV2 support is not enabled (SLV2 not found or older than 0.6.4 (svn))'
env['LV2'] = 0
conf.Finish()
else:
libraries['glib2'].ParseConfig ('pkg-config --cflags --libs gmodule-2.0')
libraries['glib2'].ParseConfig ('pkg-config --cflags --libs gthread-2.0')
+libraries['gio'] = LibraryInfo()
+libraries['gio'].ParseConfig('pkg-config --cflags --libs gio-2.0')
+libraries['gio'].ParseConfig('pkg-config --cflags --libs gio-unix-2.0')
+
libraries['freetype2'] = LibraryInfo()
libraries['freetype2'].ParseConfig ('pkg-config --cflags --libs freetype2')
else:
env['LIBDIR']='lib'
+#
+# no VST on x86_64
+#
+
+if env['DIST_TARGET'] == 'x86_64' and env['VST']:
+ print "\n\n=================================================="
+ print "You cannot use VST plugins with a 64 bit host. Please run scons with 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)
+
#
# a single way to test if we're on OS X
#
libraries['asound'] = LibraryInfo ()
if conf.CheckCHeader('alsa/asoundlib.h'):
- libraries['asound'] = LibraryInfo (LIBS='asound')
+ libraries['asound'].ParseConfig('pkg-config --cflags --libs alsa')
if conf.CheckCHeader('jack/midiport.h'):
libraries['sysmidi'] = LibraryInfo (LIBS='jack')
env.Append(CCFLAGS=" -DWITH_JACK_MIDI")
print "Using JACK MIDI"
elif conf.CheckCHeader('alsa/asoundlib.h'):
- libraries['sysmidi'] = LibraryInfo (LIBS='asound')
+ libraries['sysmidi'] = LibraryInfo ()
+ libraries['sysmidi'].ParseConfig('pkg-config --cflags --libs alsa')
env['SYSMIDI'] = 'ALSA Sequencer'
- subst_dict['%MIDITAG%'] = "seq"
+ subst_dict['%MIDITAG%'] = "control"
subst_dict['%MIDITYPE%'] = "alsa/sequencer"
print "Using ALSA MIDI"
elif conf.CheckCHeader('/System/Library/Frameworks/CoreMIDI.framework/Headers/CoreMIDI.h'):
libraries['sigc2'].ParseConfig('pkg-config --cflags --libs sigc++-2.0')
libraries['glibmm2'] = LibraryInfo()
libraries['glibmm2'].ParseConfig('pkg-config --cflags --libs glibmm-2.4')
+ libraries['giomm'] = LibraryInfo()
+ libraries['giomm'].ParseConfig('pkg-config --cflags --libs giomm-2.4')
libraries['cairo'] = LibraryInfo()
libraries['cairo'].ParseConfig('pkg-config --cflags --libs cairo')
libraries['cairomm'] = LibraryInfo()
libraries['glibmm2'] = LibraryInfo(LIBS='glibmm2',
LIBPATH='#libs/glibmm2',
CPPPATH='#libs/glibmm2/glib')
+ libraries['giomm'] = LibraryInfo(LIBS='giomm',
+ LIBPATH='#libs/glibmm2',
+ CPPPATH='#libs/glibmm2/gio')
libraries['pangomm'] = LibraryInfo(LIBS='pangomm',
LIBPATH='#libs/gtkmm2/pango',
CPPPATH='#libs/gtkmm2/pango')
CPPPATH=['#libs', '#libs/soundtouch'])
libraries['taglib'] = LibraryInfo(LIBS='libtaglib',
LIBPATH='#libs/taglib',
- CPPPATH=['#libs/taglib/headers','#libs/taglib/headers/taglib'])
+ CPPPATH=['#libs/taglib', '#libs/taglib/taglib'])
# libraries['libglademm'] = LibraryInfo(LIBS='libglademm',
# LIBPATH='#libs/libglademm',
# CPPPATH='#libs/libglademm')
# the subdirs
#
-for subdir in coredirs:
- SConscript (subdir + '/SConscript')
+#for subdir in coredirs:
+# SConscript (subdir + '/SConscript')
-for sublistdir in [ subdirs, timefx_subdirs, gtk_subdirs, surface_subdirs ]:
- for subdir in sublistdir:
- SConscript (subdir + '/SConscript')
+#for sublistdir in [ subdirs, timefx_subdirs, gtk_subdirs, surface_subdirs ]:
+# for subdir in sublistdir:
+# SConscript (subdir + '/SConscript')
# cleanup
env.Clean ('scrub', [ 'scache.conf', '.sconf_temp', '.sconsign.dblite', 'config.log'])