#!/usr/bin/env python import subprocess import waflib.Options as Options import string import os # Version of this package (even if built as a child) PACKAGE_VERSION = '1.2.0' # Variables for 'waf dist' APPNAME = 'non-mixer' VERSION = PACKAGE_VERSION # Mandatory variables top = '.' out = 'build' def options(opt): opt.load('compiler_c') opt.load('compiler_cxx') opt.load('gnu_dirs') def configure(conf): conf.load('compiler_c') conf.load('compiler_cxx') conf.load('gnu_dirs') conf.check_cfg(package='lrdf', uselib_store='LRDF',args="--cflags --libs", atleast_version='0.4.0', mandatory=True) conf.define('VERSION', PACKAGE_VERSION) conf.define('SYSTEM_PATH', string.join( [ conf.env.DATADIR, APPNAME ], '/' ) ) conf.define('DOCUMENT_PATH', string.join( [ conf.env.DATADIR, 'doc' ], '/' ) ) conf.define('PIXMAP_PATH', string.join( [ conf.env.DATADIR, 'pixmaps' ], '/' ) ) conf.write_config_header('config.h', remove=False) print('') def build(bld): libs = '' bld.program( source = ''' src/Chain.C src/Controller_Module.C src/DPM.C src/Engine/Engine.C src/Gain_Module.C src/JACK_Module.C src/LADSPAInfo.C src/Meter_Indicator_Module.C src/Meter_Module.C src/Mixer.C src/Mixer_Strip.C src/Module.C src/Module_Parameter_Editor.C src/Mono_Pan_Module.C src/NSM.C src/Panner.C src/Plugin_Module.C src/Project.C src/main.C ''', target = 'non-mixer', includes = ['.', 'src', '../FL', '../nonlib'], use = ['nonlib', 'fl_widgets'], uselib = [ 'JACK', 'LIBLO', 'LRDF', 'XPM', 'NTK', 'NTK_IMAGES' ], install_path = '${BINDIR}') start_dir = bld.path.find_dir( 'icons/hicolor' ) bld.install_files('${DATADIR}/icons/hicolor', start_dir.ant_glob('**/*.png'), cwd=start_dir, relative_trick=True) bld.install_as('${DATADIR}/pixmaps/' + APPNAME + '/icon-256x256.png', 'icons/hicolor/256x256/apps/' + APPNAME + '.png') bld.install_files( string.join( [ '${DATADIR}/doc', APPNAME ], '/' ), bld.path.ant_glob( 'doc/*.html doc/*.png' ) ) bld.symlink_as( '${BINDIR}/' + APPNAME + '-noui', APPNAME )