aboutsummaryrefslogtreecommitdiffstats
path: root/plugins
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2012-08-02 18:37:57 +0000
committerDavid Robillard <d@drobilla.net>2012-08-02 18:37:57 +0000
commitbd1ba4a37fcd3f74935099127c0ed6c234ab7e5a (patch)
tree3737885f169ed4575deafeb86b89b09139b521df /plugins
parent5defc8ead1e8d996005b94741ecaf0fcec4e1482 (diff)
downloadlv2-bd1ba4a37fcd3f74935099127c0ed6c234ab7e5a.tar.xz
Clean up wscript files and use a simpler method of chopping 'lib' prefix.
Diffstat (limited to 'plugins')
-rw-r--r--plugins/eg-amp.lv2/wscript27
-rw-r--r--plugins/eg-sampler.lv2/wscript30
-rw-r--r--plugins/eg-synth.lv2/wscript26
3 files changed, 30 insertions, 53 deletions
diff --git a/plugins/eg-amp.lv2/wscript b/plugins/eg-amp.lv2/wscript
index b9c3c3a..615077b 100644
--- a/plugins/eg-amp.lv2/wscript
+++ b/plugins/eg-amp.lv2/wscript
@@ -1,5 +1,6 @@
#!/usr/bin/env python
from waflib.extras import autowaf as autowaf
+import re
# Variables for 'waf dist'
APPNAME = 'eg-amp.lv2'
@@ -26,51 +27,43 @@ def configure(conf):
if not autowaf.is_child():
autowaf.check_pkg(conf, 'lv2core', uselib_store='LV2CORE')
- # Set env['pluginlib_PATTERN']
- pat = conf.env['cshlib_PATTERN']
- if pat.startswith('lib'):
- pat = pat[3:]
- conf.env['pluginlib_PATTERN'] = pat
- conf.env['pluginlib_EXT'] = pat[pat.rfind('.'):]
-
autowaf.display_msg(conf, "LV2 bundle directory", conf.env['LV2DIR'])
print('')
def build(bld):
bundle = 'eg-amp.lv2'
+ # Make a pattern for shared objects without the 'lib' prefix
+ module_pat = re.sub('^lib', '', bld.env['cshlib_PATTERN'])
+ module_ext = module_pat[module_pat.rfind('.'):]
+
# Build manifest.ttl by substitution (for portable lib extension)
bld(features = 'subst',
source = 'manifest.ttl.in',
target = '%s/%s' % (bundle, 'manifest.ttl'),
install_path = '${LV2DIR}/%s' % bundle,
- LIB_EXT = bld.env['pluginlib_EXT'])
+ LIB_EXT = module_ext)
# Copy other data files to build bundle (build/eg-amp.lv2)
- for i in [ 'amp.ttl' ]:
+ for i in ['amp.ttl']:
bld(features = 'subst',
source = i,
target = '%s/%s' % (bundle, i),
install_path = '${LV2DIR}/%s' % bundle,
- LIB_EXT = bld.env['pluginlib_EXT'])
-
- # Create a build environment that builds module-style library names
- # e.g. eg-amp.so instead of libeg-amp.so
- # Note for C++ you must set cxxshlib_PATTERN instead
- penv = bld.env.derive()
- penv['cshlib_PATTERN'] = bld.env['pluginlib_PATTERN']
+ LIB_EXT = module_ext)
+ # Use LV2 headers from parent directory if building as a sub-project
includes = None
if autowaf.is_child:
includes = '../..'
# Build plugin library
obj = bld(features = 'c cshlib',
- env = penv,
source = 'amp.c',
name = 'amp',
target = '%s/amp' % bundle,
install_path = '${LV2DIR}/%s' % bundle,
uselib = 'LV2CORE',
includes = includes)
+ obj.env['cshlib_PATTERN'] = module_pat
diff --git a/plugins/eg-sampler.lv2/wscript b/plugins/eg-sampler.lv2/wscript
index 282c844..72717b8 100644
--- a/plugins/eg-sampler.lv2/wscript
+++ b/plugins/eg-sampler.lv2/wscript
@@ -1,5 +1,6 @@
#!/usr/bin/env python
from waflib.extras import autowaf as autowaf
+import re
# Variables for 'waf dist'
APPNAME = 'eg-sampler.lv2'
@@ -31,61 +32,52 @@ def configure(conf):
autowaf.check_pkg(conf, 'gtk+-2.0', uselib_store='GTK2',
atleast_version='2.18.0', mandatory=False)
- # Set env['pluginlib_PATTERN']
- pat = conf.env['cshlib_PATTERN']
- if pat.startswith('lib'):
- pat = pat[3:]
- conf.env['pluginlib_PATTERN'] = pat
- conf.env['pluginlib_EXT'] = pat[pat.rfind('.'):]
-
autowaf.display_msg(conf, "LV2 bundle directory", conf.env['LV2DIR'])
print('')
def build(bld):
bundle = 'eg-sampler.lv2'
+ # Make a pattern for shared objects without the 'lib' prefix
+ module_pat = re.sub('^lib', '', bld.env['cshlib_PATTERN'])
+ module_ext = module_pat[module_pat.rfind('.'):]
+
# Build manifest.ttl by substitution (for portable lib extension)
bld(features = 'subst',
source = 'manifest.ttl.in',
target = '%s/%s' % (bundle, 'manifest.ttl'),
install_path = '${LV2DIR}/%s' % bundle,
- LIB_EXT = bld.env['pluginlib_EXT'])
+ LIB_EXT = module_ext)
# Copy other data files to build bundle (build/eg-sampler.lv2)
- for i in [ 'sampler.ttl', 'click.wav' ]:
+ for i in ['sampler.ttl', 'click.wav']:
bld(rule = 'cp ${SRC} ${TGT}',
source = i,
target = '%s/%s' % (bundle, i),
install_path = '${LV2DIR}/%s' % bundle)
- # Create a build environment that builds module-style library names
- # e.g. eg-sampler.so instead of libeg-sampler.so
- # Note for C++ you must set cxxshlib_PATTERN instead
- penv = bld.env.derive()
- penv['cshlib_PATTERN'] = bld.env['pluginlib_PATTERN']
-
+ # Use LV2 headers from parent directory if building as a sub-project
includes = ['.']
if autowaf.is_child:
includes += ['../..']
# Build plugin library
obj = bld(features = 'c cshlib',
- env = penv,
- source = ['sampler.c'],
+ source = 'sampler.c',
name = 'sampler',
target = '%s/sampler' % bundle,
install_path = '${LV2DIR}/%s' % bundle,
use = 'SNDFILE LV2',
includes = includes)
+ obj.env['cshlib_PATTERN'] = module_pat
# Build UI library
if bld.is_defined('HAVE_GTK2'):
obj = bld(features = 'c cshlib',
- env = penv,
source = 'sampler_ui.c',
name = 'sampler_ui',
target = '%s/sampler_ui' % bundle,
install_path = '${LV2DIR}/%s' % bundle,
use = 'GTK2 LV2',
includes = includes)
-
+ obj.env['cshlib_PATTERN'] = module_pat
diff --git a/plugins/eg-synth.lv2/wscript b/plugins/eg-synth.lv2/wscript
index f1b8e2d..45e0c13 100644
--- a/plugins/eg-synth.lv2/wscript
+++ b/plugins/eg-synth.lv2/wscript
@@ -1,5 +1,6 @@
#!/usr/bin/env python
from waflib.extras import autowaf as autowaf
+import re
# Variables for 'waf dist'
APPNAME = 'eg-synth.lv2'
@@ -26,51 +27,42 @@ def configure(conf):
if not autowaf.is_child():
autowaf.check_pkg(conf, 'lv2core', uselib_store='LV2CORE')
- # Set env['pluginlib_PATTERN']
- pat = conf.env['cshlib_PATTERN']
- if pat.startswith('lib'):
- pat = pat[3:]
- conf.env['pluginlib_PATTERN'] = pat
- conf.env['pluginlib_EXT'] = pat[pat.rfind('.'):]
-
autowaf.display_msg(conf, "LV2 bundle directory", conf.env['LV2DIR'])
print('')
def build(bld):
bundle = APPNAME
+ # Make a pattern for shared objects without the 'lib' prefix
+ module_pat = re.sub('^lib', '', bld.env['cshlib_PATTERN'])
+ module_ext = module_pat[module_pat.rfind('.'):]
+
# Build manifest.ttl by substitution (for portable lib extension)
bld(features = 'subst',
source = 'manifest.ttl.in',
target = '%s/%s' % (bundle, 'manifest.ttl'),
install_path = '${LV2DIR}/%s' % bundle,
- LIB_EXT = bld.env['pluginlib_EXT'])
+ LIB_EXT = module_ext)
# Copy other data files to build bundle (build/eg-amp.lv2)
- for i in [ 'synth.ttl' ]:
+ for i in ['synth.ttl']:
bld(features = 'subst',
source = i,
target = '%s/%s' % (bundle, i),
install_path = '${LV2DIR}/%s' % bundle,
LIB_EXT = bld.env['pluginlib_EXT'])
- # Create a build environment that builds module-style library names
- # e.g. eg-amp.so instead of libeg-amp.so
- # Note for C++ you must set cxxshlib_PATTERN instead
- penv = bld.env.derive()
- penv['cshlib_PATTERN'] = bld.env['pluginlib_PATTERN']
-
+ # Use LV2 headers from parent directory if building as a sub-project
includes = None
if autowaf.is_child:
includes = '../..'
# Build plugin library
obj = bld(features = 'c cshlib',
- env = penv,
source = 'synth.c',
name = 'synth',
target = '%s/synth' % bundle,
install_path = '${LV2DIR}/%s' % bundle,
uselib = 'LV2CORE',
includes = includes)
-
+ obj.env['cshlib_PATTERN'] = module_pat