use JACK thread creation functions to create process-graph threads; provide GUI contr...
[ardour.git] / libs / pbd / wscript
index c06cd315032a08fa5b983e4e9165371b86114628..a558a04da2ab0d5819a873ecee19ff96f864365d 100644 (file)
@@ -1,6 +1,7 @@
 #!/usr/bin/env python
 import autowaf
 import os
+import sys
 
 # Version of this package (even if built as a child)
 MAJOR = '4'
@@ -34,10 +35,12 @@ def configure(conf):
        conf.check_tool('compiler_cxx')
        autowaf.check_pkg(conf, 'libxml-2.0', uselib_store='XML')
        autowaf.check_pkg(conf, 'sigc++-2.0', uselib_store='SIGCPP', atleast_version='2.0')
-       autowaf.check_pkg(conf, 'uuid', uselib_store='UUID')
+       if sys.platform != 'darwin':
+               autowaf.check_pkg(conf, 'uuid', uselib_store='UUID')
 
        conf.check(function_name='getmntent', header_name='mntent.h', define_name='HAVE_GETMNTENT')
        conf.check(header_name='execinfo.h', define_name='HAVE_EXECINFO')
+       conf.check(header_name='unistd.h', define_name='HAVE_UNISTD')
 
        conf.write_config_header('libpbd-config.h')
 
@@ -51,26 +54,40 @@ def build(bld):
        obj.source = '''
                basename.cc
                base_ui.cc
+                boost_debug.cc
                command.cc
                convert.cc
                controllable.cc
+               controllable_descriptor.cc
+                crossthread.cc
+                cpus.cc
+                debug.cc
                enumwriter.cc
+                event_loop.cc
                dmalloc.cc
+                enums.cc
                error.cc
                filesystem.cc
                filesystem_paths.cc
+               file_manager.cc
                file_utils.cc
                fpu.cc
                id.cc
+                locale_guard.cc
                 malign.cc
                mountpoint.cc
+                openuri.cc
                pathscanner.cc
                pool.cc
+                property_list.cc
                pthread_utils.cc
                receiver.cc
                search_path.cc
                shortpath.cc
+               signals.cc
+                sndfile_manager.cc
                stacktrace.cc
+               stateful_diff_command.cc
                stateful.cc
                strreplace.cc
                strsplit.cc
@@ -94,6 +111,19 @@ def build(bld):
        if bld.env['build_target'] == 'x86_64':
                obj.cxxflags += [ '-DUSE_X86_64_ASM' ]
 
+       if bld.env['BUILD_TESTS'] and bld.env['HAVE_CPPUNIT']:
+               # Unit tests
+               testobj              = bld.new_task_gen('cxx', 'program')
+               testobj.source       = '''
+                        test/testrunner.cc
+                       test/xpath.cc
+                        test/scalar_properties.cc
+               '''.split()
+               testobj.target       = 'run-tests'
+               testobj.includes     = obj.includes + ['test', '../pbd']
+               testobj.uselib       = 'CPPUNIT XML'
+               testobj.uselib_local = 'libpbd'
+
 def shutdown():
        autowaf.shutdown()