Strip trailing whitespace from waf scripts.
[ardour.git] / libs / midi++2 / wscript
1 #!/usr/bin/env python
2 import autowaf
3 import os
4
5 # Version of this package (even if built as a child)
6 MAJOR = '2'
7 MINOR = '1'
8 MICRO = '1'
9 LIBMIDIPP_VERSION = "%s.%s.%s" % (MAJOR, MINOR, MICRO)
10
11 # Library version (UNIX style major, minor, micro)
12 # major increment <=> incompatible changes
13 # minor increment <=> compatible changes (additions)
14 # micro increment <=> no interface changes
15 LIBMIDIPP_LIB_VERSION = '4.1.0'
16
17 # Variables for 'waf dist'
18 APPNAME = 'libmidipp'
19 VERSION = LIBMIDIPP_VERSION
20
21 # Mandatory variables
22 srcdir = '.'
23 blddir = 'build'
24
25 path_prefix = 'libs/midi++2/'
26
27 def set_options(opt):
28         autowaf.set_options(opt)
29
30 def configure(conf):
31         autowaf.build_version_files(path_prefix+'midi++/version.h', path_prefix+'version.cc',
32                         'midipp', MAJOR, MINOR, MICRO)
33         autowaf.configure(conf)
34         autowaf.check_tool(conf, 'compiler_cxx')
35         autowaf.check_pkg(conf, 'jack', uselib_store='JACK', atleast_version='0.109.0')
36         autowaf.check_pkg(conf, 'libxml-2.0', uselib_store='XML')
37         autowaf.check_pkg(conf, 'sigc++-2.0', uselib_store='SIGCPP', atleast_version='2.0')
38
39         conf.env.append_value('CXXFLAGS', '-DHAVE_WAFCONFIG_H')
40         conf.write_config_header('wafconfig.h')
41
42         # TODO
43         conf.env['SYSMIDI'] = 'JACK MIDI'
44         conf.env.append_value('CXXFLAGS', '-DWITH_JACK_MIDI')
45
46         # Boost headers
47         autowaf.check_header(conf, 'boost/shared_ptr.hpp')
48         autowaf.check_header(conf, 'boost/weak_ptr.hpp')
49
50 def build(bld):
51         # Library
52         obj = bld.new_task_gen('cxx', 'shlib')
53         obj.source = '''
54                 fd_midiport.cc
55                 fifomidi.cc
56                 midi.cc
57                 midichannel.cc
58                 midifactory.cc
59                 midimanager.cc
60                 midiparser.cc
61                 midiport.cc
62                 midnam_patch.cc
63                 mmc.cc
64                 mtc.cc
65                 version.cc
66         '''
67         if bld.env['SYSMIDI'] == 'JACK MIDI':
68                 obj.source += ' jack_midiport.cc '
69         elif bld.env['SYSMIDI'] == 'Alsa Sequencer':
70                 obj.source += ' alsa_sequencer_midiport.cc '
71         elif bld.env['SYSMIDI'] == 'CoreMIDI':
72                 obj.source += ' coremidi_midiport.cc '
73         obj.export_incdirs = ['.']
74         obj.includes     = ['.']
75         obj.name         = 'libmidipp'
76         obj.target       = 'midipp'
77         obj.uselib       = 'GLIBMM SIGCPP XML JACK'
78         obj.uselib_local = 'libpbd libevoral'
79         obj.vnum         = LIBMIDIPP_LIB_VERSION
80         obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3')
81
82 def shutdown():
83         autowaf.shutdown()
84