aboutsummaryrefslogtreecommitdiffstats
path: root/wscript
diff options
context:
space:
mode:
Diffstat (limited to 'wscript')
-rw-r--r--wscript33
1 files changed, 32 insertions, 1 deletions
diff --git a/wscript b/wscript
index e76ff78..a102542 100644
--- a/wscript
+++ b/wscript
@@ -44,6 +44,8 @@ def configure(conf):
conf.env['pluginlib_PATTERN'] = pat
conf.env['pluginlib_EXT'] = pat[pat.rfind('.'):]
+ conf.define('BLIP_SHLIB_EXT', conf.env['pluginlib_EXT'])
+
autowaf.display_msg(conf, "LV2 bundle directory",
conf.env['LV2DIR'])
print('')
@@ -58,7 +60,6 @@ def build_plugin(bld, lang, bundle, name, source, cflags=[], libs=[]):
obj.includes = [ '.', './src/include' ]
obj.name = name
obj.target = os.path.join(bundle, name)
- obj.linkflags = [ '-nostartfiles' ]
if cflags != []:
obj.cflags = cflags
if libs != []:
@@ -122,5 +123,35 @@ def build(bld):
build_plugin(bld, 'c', 'blip.lv2', i,
['src/%s.c' % i, 'src/wavedata.c'])
+ # Wavegen
+ wavegen = bld(features = 'c cprogram',
+ source = ['src/wavegen.c', 'src/wdatutil.c'],
+ target = 'src/wavegen',
+ name = 'wavegen',
+ after = ['parabola', 'sawtooth', 'square'],
+ includes = ['./src', './src/include'],
+ linkflags = ['-lm'],
+ install_path = None)
+
+ penv = bld.env.derive()
+ penv['cshlib_PATTERN'] = bld.env['pluginlib_PATTERN']
+
+ # Waveform data
+ for i in ['parabola', 'sawtooth', 'square']:
+ obj = bld(rule = './src/wavegen -r 48000 -f 12 -s 1 -m 128 -g 1.0 -w %s -p %s -o ${TGT}' % (i, i),
+ source = bld.path.get_bld().make_node('src/wavegen'),
+ target = 'src/%s_data.c' % i,
+ before = ['wavegen'],
+ name = i)
+
+ obj = bld(features = 'c cshlib',
+ source = 'src/%s_data.c' % i,
+ target = 'blip.lv2/%s_data' % i,
+ includes = ['./src', './src/include'],
+ env = penv,
+ install_path = '${LV2DIR}/blip.lv2')
+
+
+
def lint(ctx):
subprocess.call('cpplint.py --filter=+whitespace/comments,-whitespace/tab,-whitespace/braces,-whitespace/labels,-build/header_guard,-readability/casting,-readability/todo,-build/include src/* serd/*', shell=True)