ardour/session_utils/wscript
Robin Gareus ba78359129 prepare for update to waf 1.8
uselib is no longer implicit (inherited by .use). This is still incomplete,
some uselibs for non-linux variants may be missing.

bld.is_defined("HAVE_XXX") also no longer works and will have to be
changed (I think to bld.env["HAVE_XXX"]) in countless places.
2016-02-28 21:16:44 +01:00

107 lines
3.6 KiB
Python

#!/usr/bin/env python
from waflib.extras import autowaf as autowaf
from waflib import Options, TaskGen
import waflib.Logs as Logs, waflib.Utils as Utils
import os
import shutil
import sys
import re
import time
from waflib.Task import Task
# Mandatory variables
top = '.'
out = 'build'
def options(opt):
autowaf.set_options(opt)
def configure(conf):
if not "dummy" in conf.env['BACKENDS']:
print ('session-utils depend on the dummy backend.')
autowaf.display_msg(conf, 'build session-utils', 'no')
return
# no wine
if Options.options.windows_vst and Options.options.dist_target != 'mingw':
autowaf.display_msg(conf, 'build session-utils', 'no')
return
autowaf.display_msg(conf, 'build session-utils', 'yes')
conf.load('misc')
conf.load('compiler_cxx')
autowaf.configure(conf)
def build_ardour_util(bld, util):
pgmprefix = bld.env['PROGRAM_NAME'].lower() + str(bld.env['MAJOR'])
# just the normal executable version of the GTK GUI
obj = bld (features = 'cxx c cxxprogram')
# this program does not do the whole hidden symbols thing
obj.cxxflags = [ '-fvisibility=default' ]
obj.source = ['common.cc', util + '.cc' ]
obj.target = pgmprefix + '-' + util
obj.includes = ['.']
obj.use = [ 'libpbd',
'libardour',
'libardour_cp',
'libtimecode',
'libmidipp',
]
obj.defines = [
'VERSIONSTRING="' + str(bld.env['VERSION']) + '"',
'DATA_DIR="' + os.path.normpath(bld.env['DATADIR']) + '"',
'CONFIG_DIR="' + os.path.normpath(bld.env['SYSCONFDIR']) + '"',
'LOCALEDIR="' + os.path.join(os.path.normpath(bld.env['DATADIR']), 'locale') + '"',
'PACKAGE="' + "ARDOURUTILS" + '"',
]
obj.install_path = bld.env['LIBDIR'] + '/utils'
obj.uselib = 'UUID FLAC FONTCONFIG GLIBMM GTHREAD OGG CURL DL XML'
obj.uselib += ' FFTW3F'
obj.uselib += ' AUDIOUNITS OSX LO '
obj.uselib += ' TAGLIB '
if sys.platform == 'darwin':
obj.uselib += ' AUDIOUNITS OSX'
obj.use += ' libappleutility'
obj.includes += ['../libs']
if bld.env['build_target'] == 'mingw':
if bld.env['DEBUG'] == False:
obj.linkflags = ['-mwindows']
if bld.is_defined('NEED_INTL'):
obj.linkflags = ' -lintl'
def build(bld):
VERSION = "%s.%s" % (bld.env['MAJOR'], bld.env['MINOR'])
# session-utils depend on the dummy backend
if not "dummy" in bld.env['BACKENDS']:
return
# no wine
if bld.is_defined('WINDOWS_VST_SUPPORT') and bld.env['build_target'] != 'mingw':
return
# don't build/install windows version just yet.
# tools/x-win/package.sh uses 'waf install'. The symlinks
# and shell wrapper script won't work on windows.
if bld.env['build_target'] == 'mingw':
return
pgmprefix = bld.env['PROGRAM_NAME'].lower() + str(bld.env['MAJOR'])
utils = bld.path.ant_glob('*.cc', excl=['example.cc', 'common.cc'])
for util in utils:
fn = str(util)[:-3]
build_ardour_util(bld, fn)
bld.symlink_as(bld.env['BINDIR'] + '/' + pgmprefix + "-" + fn, bld.env['LIBDIR'] + '/utils/ardour-util.sh')
obj = bld(features = 'subst')
obj.source = 'ardour-util.sh.in'
obj.target = 'ardour-util.sh'
obj.chmod = Utils.O755
obj.install_path = bld.env['LIBDIR'] + '/utils'
obj.LIBDIR = os.path.normpath(bld.env['DLLDIR'])
obj.DATADIR = os.path.normpath(bld.env['DATADIR'])
obj.CONFDIR = os.path.normpath(bld.env['CONFDIR'])