-
Notifications
You must be signed in to change notification settings - Fork 0
/
wscript
51 lines (41 loc) · 1.49 KB
/
wscript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/usr/bin/env python
from waflib.extras import autowaf as autowaf
import re
# Variables for 'waf dist'
APPNAME = 'noClipDrive.lv2'
VERSION = '1.0.0'
# Mandatory variables
top = '.'
out = 'build'
def options(opt):
opt.load('compiler_c')
opt.load('lv2')
autowaf.set_options(opt)
def configure(conf):
conf.load('compiler_c', cache=True)
conf.load('lv2', cache=True)
conf.load('autowaf', cache=True)
conf.check_pkg('lv2', uselib_store='LV2')
conf.check(features='c cshlib', lib='m', uselib_store='M', mandatory=False)
def build(bld):
bundle = 'noClipDrive.lv2'
# Build manifest.ttl by substitution (for portable lib extension)
bld(features = 'subst',
source = 'manifest.ttl.in',
target = 'lv2/%s/%s' % (bundle, 'manifest.ttl'),
install_path = '${LV2DIR}/%s' % bundle,
LIB_EXT = bld.env.LV2_LIB_EXT)
# Copy other data files to build bundle (build/noClipDrive.lv2)
for i in ['noClipDrive.ttl']:
bld(features = 'subst',
is_copy = True,
source = i,
target = 'lv2/%s/%s' % (bundle, i),
install_path = '${LV2DIR}/%s' % bundle)
# Build plugin library
obj = bld(features = 'c cshlib lv2lib',
source = 'noClipDrive.c',
name = 'noClipDrive',
target = 'lv2/%s/noClipDrive' % bundle,
install_path = '${LV2DIR}/%s' % bundle,
uselib = 'M LV2')