make threaded waveview rendering a configure time option (enabled by default)
authorPaul Davis <paul@linuxaudiosystems.com>
Sun, 21 Feb 2016 17:34:10 +0000 (12:34 -0500)
committerPaul Davis <paul@linuxaudiosystems.com>
Sun, 21 Feb 2016 17:34:10 +0000 (12:34 -0500)
libs/canvas/wave_view.cc
wscript

index f1f1653d70c9846ea19b5a4d75db1f2305d506e9..bf99748c2c5daaf3a721c77431203000d01465b6 100644 (file)
@@ -73,7 +73,13 @@ WaveView::DrawingRequestQueue WaveView::request_queue;
 PBD::Signal0<void> WaveView::VisualPropertiesChanged;
 PBD::Signal0<void> WaveView::ClipLevelChanged;
 
+/* NO_THREAD_WAVEVIEWS is defined by the top level wscript
+ * if --no-threaded-waveviws is provided at the configure step.
+ */
+
+#ifndef NO_THREADED_WAVEVIEWS
 #define ENABLE_THREADED_WAVEFORM_RENDERING
+#endif
 
 WaveView::WaveView (Canvas* c, boost::shared_ptr<ARDOUR::AudioRegion> region)
        : Item (c)
diff --git a/wscript b/wscript
index 4635eaf390d18c7ad12fa96a8413e6bc8e0b97b2..06882ecca061d8ab58ecc2b505524e22482fb9ba 100644 (file)
--- a/wscript
+++ b/wscript
@@ -741,6 +741,8 @@ def options(opt):
                     help='Turn on AddressSanitizer (requires GCC >= 4.8 or clang >= 3.1)')
     opt.add_option('--ptformat', action='store_true', default=False, dest='ptformat',
                     help='Turn on PT session import option')
+    opt.add_option('--no-threaded-waveviews', action='store_true', default=False, dest='no_threaded_waveviews',
+                    help='Disable threaded waveview rendering')
 
     for i in children:
         opt.recurse(i)
@@ -1079,7 +1081,10 @@ int main () { return 0; }
     if opts.ptformat:
         conf.define('PTFORMAT', 1)
         conf.env['PTFORMAT'] = True
-
+    if opts.no_threaded_waveviews:
+        conf.define('NO_THREADED_WAVEVIEWS', 1)
+        conf.env['NO_THREADED_WAVEVIEWS'] = True
+        
     backends = opts.with_backends.split(',')
 
     if not backends: