momo ip midi debugging
[ardour.git] / libs / midi++2 / wscript
index 9f2f297a4ba22267824e2cdf34868bd2d5641f80..10a37466e197f77c8ca8157e0f5a1fcf5aae6241 100644 (file)
@@ -1,5 +1,6 @@
 #!/usr/bin/env python
 from waflib.extras import autowaf as autowaf
+from waflib import Options
 import os
 import sys
 
@@ -25,6 +26,18 @@ out = 'build'
 
 path_prefix = 'libs/midi++2/'
 
+
+libmidi_sources = [
+        'midi.cc',
+        'channel.cc',
+        'ipmidi_port.cc',
+        'parser.cc',
+        'port.cc',
+        'midnam_patch.cc',
+        'mmc.cc',
+        'mtc.cc',
+]
+
 def options(opt):
     autowaf.set_options(opt)
     opt.add_option('--test', action='store_true', default=False, dest='build_tests',
@@ -32,11 +45,8 @@ def options(opt):
 
 def configure(conf):
     conf.load('compiler_cxx')
-    autowaf.build_version_files(path_prefix+'midi++/version.h', path_prefix+'version.cc',
-                    'midipp', MAJOR, MINOR, MICRO)
     autowaf.configure(conf)
     autowaf.check_pkg(conf, 'cppunit', uselib_store='CPPUNIT', atleast_version='1.12.0', mandatory=False)
-    autowaf.check_pkg(conf, 'jack', uselib_store='JACK', atleast_version='0.118.2')
     autowaf.check_pkg(conf, 'libxml-2.0', uselib_store='XML')
     autowaf.check_pkg(conf, 'sigc++-2.0', uselib_store='SIGCPP', atleast_version='2.0')
 
@@ -46,32 +56,25 @@ def configure(conf):
 
 def build(bld):
     # Library
-    obj = bld(features = 'cxx cxxshlib')
-    obj.source = '''
-            midi.cc
-            channel.cc
-            ipmidi_port.cc
-            jack_midi_port.cc
-            manager.cc
-            parser.cc
-            port.cc
-            midnam_patch.cc
-            mmc.cc
-            mtc.cc
-            version.cc
-    '''
+    if bld.is_defined ('INTERNAL_SHARED_LIBS'):
+        obj              = bld.shlib(features = 'cxx cxxshlib', source=libmidi_sources)
+        obj.defines      = [ 'LIBMIDIPP_DLL_EXPORTS=1' ]
+    else:
+        obj              = bld.stlib(features = 'cxx cxxstlib', source=libmidi_sources)
+        obj.cxxflags     = [ '-fPIC' ]
+        obj.defines      = []
+
     # everybody loves JACK
-    obj.cxxflags = [ '-DWITH_JACK_MIDI' ]
     obj.export_includes = ['.']
-    obj.includes     = ['.', '../surfaces/control_protocol']
+    obj.includes     = ['.', '../surfaces/control_protocol', '../ardour' ]
     obj.name         = 'libmidipp'
     obj.target       = 'midipp'
-    obj.uselib       = 'GLIBMM SIGCPP XML JACK OSX'
+    obj.uselib       = 'GLIBMM SIGCPP XML OSX'
     obj.use          = 'libpbd libevoral libtimecode'
     obj.vnum         = LIBMIDIPP_LIB_VERSION
-    obj.install_path = os.path.join(bld.env['LIBDIR'], 'ardour3')
+    obj.install_path = bld.env['LIBDIR']
 
-    if bld.env['BUILD_TESTS'] and bld.is_defined('HAVE_CPPUNIT'): 
+    if bld.env['BUILD_TESTS'] and bld.is_defined('HAVE_CPPUNIT'):
         # Unit tests
         obj              = bld(features = 'cxx cxxprogram')
         obj.source       = '''