5 # Version of this package (even if built as a child)
9 LIBPBD_VERSION = "%s.%s.%s" % (MAJOR, MINOR, MICRO)
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 LIBPBD_LIB_VERSION = '4.1.0'
17 # Variables for 'waf dist'
19 VERSION = LIBPBD_VERSION
25 path_prefix = 'libs/pbd/'
28 autowaf.set_options(opt)
31 autowaf.build_version_files(path_prefix+'pbd/version.h', path_prefix+'version.cc',
32 'libpbd', MAJOR, MINOR, MICRO)
33 autowaf.configure(conf)
34 autowaf.check_tool(conf, 'compiler_cxx')
35 autowaf.check_pkg(conf, 'libxml-2.0', uselib_store='XML')
36 autowaf.check_pkg(conf, 'sigc++-2.0', uselib_store='SIGCPP', atleast_version='2.0')
37 autowaf.check_pkg(conf, 'uuid', uselib_store='UUID')
39 conf.check(function_name='getmntent', header_name='mntent.h', define_name='HAVE_GETMNTENT')
41 # This must be defined for libpbd only, it breaks ardour
42 conf.check(header_name='execinfo.h', define_name='PBD_HAVE_EXECINFO')
44 conf.env.append_value('CXXFLAGS', '-DHAVE_WAFCONFIG_H')
45 conf.write_config_header('wafconfig.h')
48 autowaf.check_header(conf, 'boost/shared_ptr.hpp')
49 autowaf.check_header(conf, 'boost/weak_ptr.hpp')
53 obj = bld.new_task_gen('cxx', 'shlib')
87 obj.export_incdirs = ['.']
91 obj.uselib = 'GLIBMM SIGCPP XML UUID'
92 obj.vnum = LIBPBD_LIB_VERSION
93 obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3')
94 obj.cxxflags = ['-DPACKAGE="libpbd"']
95 if bld.env['PBD_HAVE_EXECINFO']:
96 obj.cxxflags += ['-DHAVE_EXECINFO']