d346a57d59fe246049448058706ebbb4608fd2f6
[ardour.git] / libs / fluidsynth / wscript
1 #!/usr/bin/env python
2 from waflib.extras import autowaf as autowaf
3 from waflib import TaskGen
4 import os
5 import sys
6
7 # Version of this package (even if built as a child)
8 MAJOR = '1'
9 MINOR = '6'
10 MICRO = '0'
11 LIBFLUIDSYNTH_VERSION = "%s.%s.%s" % (MAJOR, MINOR, MICRO)
12
13 # Library version (UNIX style major, minor, micro)
14 # major increment <=> incompatible changes
15 # minor increment <=> compatible changes (additions)
16 # micro increment <=> no interface changes
17 LIBLTC_LIB_VERSION = '1.1.1'
18
19 # Variables for 'waf dist'
20 APPNAME = 'libltc'
21 VERSION = LIBFLUIDSYNTH_VERSION
22 I18N_PACKAGE = 'libfluidsynth'
23
24 # Mandatory variables
25 top = '.'
26 out = 'build'
27
28 def options(opt):
29     autowaf.set_options(opt)
30
31 def configure(conf):
32     if conf.is_defined('USE_EXTERNAL_LIBS'):
33         autowaf.check_pkg(conf, 'fluidsynth', uselib_store='LIBFLUIDSYNTH', atleast_version=1.1.6, mandatory=True)
34     else:
35         conf.load('compiler_c')
36         autowaf.configure(conf)
37
38 def build(bld):
39     if bld.is_defined('USE_EXTERNAL_LIBS'):
40         return
41     bld (export_includes = ['fluidsynth'],
42          name = 'libfluidsynth_includes'
43          )
44     bld.stlib (source = [
45         'src/fluid_midi.c',
46         'src/fluid_adsr_env.c',
47         'src/fluid_chorus.c',
48         'src/fluid_iir_filter.c',
49         'src/fluid_lfo.c',
50         'src/fluid_rev.c',
51         'src/fluid_rvoice.c',
52         'src/fluid_rvoice_dsp.c',
53         'src/fluid_rvoice_event.c',
54         'src/fluid_rvoice_mixer.c',
55         'src/fluid_defsfont.c',
56         'src/fluid_chan.c',
57         'src/fluid_event.c',
58         'src/fluid_gen.c',
59         'src/fluid_mod.c',
60         'src/fluid_synth.c',
61         'src/fluid_tuning.c',
62         'src/fluid_voice.c',
63         'src/fluid_conv.c',
64         'src/fluid_hash.c',
65         'src/fluid_list.c',
66         'src/fluid_ringbuffer.c',
67         'src/fluid_settings.c',
68         'src/fluid_sys.c'
69         ],
70         cflags = [ '-fPIC', '-fvisibility=hidden' ],
71         includes = ['.', 'src/' ],
72                target = 'libfluidsynth',
73                use    = 'libfluidsynth_includes',
74                uselib = 'GLIB',
75                defines = [ 'HAVE_CONFIG_H', 'DEFAULT_SOUNDFONT=""' ]
76                )
77
78 def shutdown():
79     autowaf.shutdown()