Fix uninitialised variable.
[ardour.git] / libs / evoral / 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 EVORAL_VERSION = '0.0.0'
7
8 # Library version (UNIX style major, minor, micro)
9 # major increment <=> incompatible changes
10 # minor increment <=> compatible changes (additions)
11 # micro increment <=> no interface changes
12 # Version history:
13 #   0.0.0 = 0,0,0
14 EVORAL_LIB_VERSION = '0.0.0'
15
16 # Variables for 'waf dist'
17 APPNAME = 'evoral'
18 VERSION = EVORAL_VERSION
19
20 # Mandatory variables
21 srcdir = '.'
22 blddir = 'build'
23
24 def set_options(opt):
25         autowaf.set_options(opt)
26
27 def configure(conf):
28         autowaf.configure(conf)
29         conf.check_tool('compiler_cxx')
30         autowaf.check_pkg(conf, 'cppunit', uselib_store='CPPUNIT', atleast_version='1.12.0', mandatory=False)
31         autowaf.check_pkg(conf, 'glib-2.0', uselib_store='GLIB', atleast_version='2.2')
32         autowaf.check_pkg(conf, 'glibmm-2.4', uselib_store='GLIBMM', atleast_version='2.14.0')
33         autowaf.check_pkg(conf, 'gthread-2.0', uselib_store='GTHREAD', atleast_version='2.14.0')
34
35         # Boost headers
36         autowaf.check_header(conf, 'boost/shared_ptr.hpp')
37         autowaf.check_header(conf, 'boost/weak_ptr.hpp')
38
39 def build(bld):
40         # Headers
41         #bld.install_files('${INCLUDEDIR}/evoral', 'evoral/*.h')
42         #bld.install_files('${INCLUDEDIR}/evoral', 'evoral/*.hpp')
43
44         # Pkgconfig file
45         #autowaf.build_pc(bld, 'EVORAL', EVORAL_VERSION, 'GLIBMM GTHREAD')
46
47         libsmf = bld.new_task_gen('cc', 'shlib')
48         libsmf.source = '''
49                 src/libsmf/smf.c
50                 src/libsmf/smf_decode.c
51                 src/libsmf/smf_load.c
52                 src/libsmf/smf_save.c
53                 src/libsmf/smf_tempo.c
54         '''
55         libsmf.export_incdirs = ['./src/libsmf']
56         libsmf.defines      = 'SMF_VERSION="1.2"'
57         libsmf.includes     = ['./src']
58         libsmf.name         = 'libsmf'
59         libsmf.target       = 'smf'
60         libsmf.uselib       = 'GLIB'
61         libsmf.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3')
62
63         # Library
64         obj = bld.new_task_gen('cxx', 'shlib')
65         obj.source = '''
66                 src/Control.cpp
67                 src/ControlList.cpp
68                 src/ControlSet.cpp
69                 src/Curve.cpp
70                 src/Event.cpp
71                 src/MIDIEvent.cpp
72                 src/Note.cpp
73                 src/SMF.cpp
74                 src/Sequence.cpp
75         '''
76         obj.export_incdirs = ['.']
77         obj.includes     = ['.', './src']
78         obj.name         = 'libevoral'
79         obj.target       = 'evoral'
80         obj.uselib       = 'GLIBMM GTHREAD SMF'
81         obj.uselib_local = 'libsmf'
82         obj.vnum         = EVORAL_LIB_VERSION
83         obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3')
84
85         if bld.env['HAVE_CPPUNIT']:
86                 # Unit tests
87                 obj              = bld.new_task_gen('cxx', 'program')
88                 obj.source       = '''
89                         test/SequenceTest.cpp
90                         test/SMFTest.cpp
91                         test/testrunner.cpp
92                 '''
93                 obj.includes     = ['.', './src']
94                 obj.uselib_local = 'libevoral'
95                 obj.uselib       = 'CPPUNIT'
96                 obj.target       = 'run-tests'
97                 obj.install_path = ''
98
99 def shutdown():
100         autowaf.shutdown()
101