fix compilation with newer version of *mm and gcc-6.2 (RefPtr<> cast)
[ardour.git] / libs / canvas / wscript
index 0152868d7d06c5c26701aab562f5c6460869bc55..fa6dabb080f7535b6d082d2f6c3dd34ad17b5b0e 100644 (file)
@@ -1,4 +1,4 @@
-vxu#!/usr/bin/env python
+#!/usr/bin/env python
 from waflib.extras import autowaf as autowaf
 from waflib import Options
 from waflib import TaskGen
@@ -30,6 +30,7 @@ path_prefix = 'libs/canvas/'
 canvas_sources = [
         'arc.cc',
         'arrow.cc',
+        'box.cc',
         'canvas.cc',
         'circle.cc',
         'colors.cc',
@@ -40,10 +41,12 @@ canvas_sources = [
         'item.cc',
         'fill.cc',
         'flag.cc',
+        'framed_curve.cc',
         'image.cc',
         'line.cc',
         'line_set.cc',
         'lookup_table.cc',
+        'meter.cc',
         'outline.cc',
         'pixbuf.cc',
         'poly_item.cc',
@@ -81,18 +84,43 @@ def build(bld):
         obj.cxxflags     = [ '-fPIC' ]
         obj.cflags       = [ '-fPIC' ]
         obj.defines      = [ ]
-        
+
     obj.export_includes = ['.']
     obj.includes     = ['.']
-    obj.uselib       = 'SIGCPP CAIROMM GTKMM BOOST'
+    obj.uselib       = 'SIGCPP CAIROMM GTKMM BOOST XML'
     obj.use          = [ 'libpbd', 'libevoral', 'libardour', 'libgtkmm2ext', 'libevoral' ]
     obj.name         = 'libcanvas'
     obj.target       = 'canvas'
     obj.vnum         = CANVAS_LIB_VERSION
     obj.install_path = bld.env['LIBDIR']
     obj.defines      += [ 'PACKAGE="' + I18N_PACKAGE + '"' ]
-    
-    if bld.env['BUILD_TESTS'] and bld.env['HAVE_CPPUNIT']:
+
+    # canvas unit-tests are outdated
+    if False and bld.env['BUILD_TESTS'] and bld.is_defined('HAVE_CPPUNIT'):
+            unit_testobj              = bld(features = 'cxx cxxprogram')
+            unit_testobj.source       = '''
+                    test/group.cc
+                    test/arrow.cc
+                    test/optimizing_lookup_table.cc
+                    test/polygon.cc
+                    test/types.cc
+                    test/render.cc
+                    test/xml.cc
+                    test/wave_view.cc
+                    test/item.cc
+                    test/testrunner.cpp
+                '''.split()
+
+            unit_testobj.includes     = obj.includes + ['test', '../pbd']
+            unit_testobj.uselib       = 'CPPUNIT SIGCPP CAIROMM GTKMM'
+            unit_testobj.uselib_local = 'libcanvas libevoral libardour libgtkmm2ext'
+            unit_testobj.name         = 'libcanvas-unit-tests'
+            unit_testobj.target       = 'run-tests'
+            unit_testobj.install_path = ''
+            unit_testobj.cxxflags     = ['-DPACKAGE="libcanvastest"']
+            unit_testobj.cxxflags     += ['-DDATA_DIR="' + os.path.normpath(bld.env['DATADIR']) + '"']
+            unit_testobj.cxxflags     += ['-DCONFIG_DIR="' + os.path.normpath(bld.env['CONFDIR']) + '"']
+            unit_testobj.cxxflags     += ['-DMODULE_DIR="' + os.path.normpath(bld.env['LIBDIR']) + '"']
 
             manual_tests              = '''
                         test/hello_world.cc
@@ -106,7 +134,7 @@ def build(bld):
             for t in manual_tests:
                     target = t[:-3]
                     name = t[t.find('/')+1:-3]
-                    manual_testobj = bld.new_task_gen('cxx', 'program')
+                    manual_testobj = bld(features = 'cxx cxxprogram')
                     manual_testobj.source = t
                     manual_testobj.includes = obj.includes + ['test', '../pbd']
                     manual_testobj.uselib       = 'CPPUNIT SIGCPP CAIROMM GTKMM'
@@ -114,32 +142,7 @@ def build(bld):
                     manual_testobj.name         = 'libcanvas-manual-test-%s' % name
                     manual_testobj.target       = target
                     manual_testobj.install_path = ''
-                    
-                    unit_testobj              = bld.new_task_gen('cxx', 'program')
-                    unit_testobj.source       = '''
-                        test/group.cc
-                        test/arrow.cc
-                        test/optimizing_lookup_table.cc
-                        test/polygon.cc
-                        test/types.cc
-                        test/render.cc
-                        test/xml.cc
-                        test/wave_view.cc
-                        test/item.cc
-                        test/testrunner.cpp
-                '''.split()
 
-                    unit_testobj.includes     = obj.includes + ['test', '../pbd']
-                    unit_testobj.uselib       = 'CPPUNIT SIGCPP CAIROMM GTKMM'
-                    unit_testobj.uselib_local = 'libcanvas libevoral libardour libgtkmm2ext'
-                    unit_testobj.name         = 'libcanvas-unit-tests'
-                    unit_testobj.target       = 'run-tests'
-                    unit_testobj.install_path = ''
-                    unit_testobj.cxxflags     = ['-DPACKAGE="libcanvastest"']
-                    unit_testobj.cxxflags     += ['-DDATA_DIR="' + os.path.normpath(bld.env['DATADIR']) + '"']
-                    unit_testobj.cxxflags     += ['-DCONFIG_DIR="' + os.path.normpath(bld.env['CONFIGDIR']) + '"']
-                    unit_testobj.cxxflags     += ['-DMODULE_DIR="' + os.path.normpath(bld.env['LIBDIR']) + '"']
-                    
             benchmarks = '''
                         benchmark/items_at_point.cc
                         benchmark/render_parts.cc
@@ -150,7 +153,7 @@ def build(bld):
             for t in benchmarks:
                     target = t[:-3]
                     name = t[t.find('/')+1:-3]
-                    manual_testobj = bld.new_task_gen('cxx', 'program')
+                    manual_testobj = bld(features = 'cxx cxxprogram')
                     manual_testobj.source = [ t, 'benchmark/benchmark.cc' ]
                     manual_testobj.includes = obj.includes + ['test', '../pbd']
                     manual_testobj.uselib       = 'CPPUNIT SIGCPP CAIROMM GTKMM'