4 # Version of this package (even if built as a child)
5 LIBPBD_VERSION = '0.0.0'
7 # Library version (UNIX style major, minor, micro)
8 # major increment <=> incompatible changes
9 # minor increment <=> compatible changes (additions)
10 # micro increment <=> no interface changes
11 LIBPBD_LIB_VERSION = '4.1.0'
13 # Variables for 'waf dist'
15 VERSION = LIBPBD_VERSION
22 autowaf.set_options(opt)
25 autowaf.configure(conf)
26 autowaf.check_tool(conf, 'compiler_cxx')
27 autowaf.check_pkg(conf, 'glib-2.0', uselib_store='GLIB', atleast_version='2.2', mandatory=True)
28 autowaf.check_pkg(conf, 'glibmm-2.4', uselib_store='GLIBMM', atleast_version='2.14.0', mandatory=True)
29 autowaf.check_pkg(conf, 'sigc++-2.0', uselib_store='SIGCPP', atleast_version='2.0', mandatory=True)
30 autowaf.check_pkg(conf, 'libxml-2.0', uselib_store='XML', mandatory=True)
31 autowaf.check_pkg(conf, 'uuid', uselib_store='UUID', mandatory=True)
33 conf.check(function_name='getmntent', header_name='mntent.h', define_name='HAVE_GETMNTENT')
35 # This must be defined for libpbd only, it breaks ardour
36 conf.check(header_name='execinfo.h', define_name='PBD_HAVE_EXECINFO')
38 conf.env.append_value('CXXFLAGS', '-DHAVE_WAFCONFIG_H')
39 conf.write_config_header('wafconfig.h')
42 autowaf.check_header(conf, 'boost/shared_ptr.hpp', mandatory=True)
43 autowaf.check_header(conf, 'boost/weak_ptr.hpp', mandatory=True)
47 obj = bld.new_task_gen('cxx', 'shlib')
81 obj.export_incdirs = ['.']
82 obj.cxxflags = '-DPACKAGE=\\\"libpbd\\\"'
83 if bld.env['PBD_HAVE_EXECINFO']:
84 obj.cxxflags += ' -DHAVE_EXECINFO '
88 obj.uselib = 'GLIBMM SIGCPP XML UUID'
89 obj.vnum = LIBPBD_LIB_VERSION