summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNils Philippsen <nils@tiptoe.de>2015-11-23 13:52:14 +0100
committerPaul Davis <paul@linuxaudiosystems.com>2015-11-23 08:43:19 -0500
commite25ddc39f86f69e2e12cb679dff82a0c5068cc23 (patch)
treef62685aa3d0ab3542022408082939dc69d503170
parent4d599b3da1ff8fa5fa172be32fbd14d0ba25b915 (diff)
make copies of global lists before extending
Not doing so can make source or object files appear multiple times in the list of files to be compiled or linked, e.g. when doing './waf build install', subsequently leading to linker errors.
-rw-r--r--gtk2_ardour/wscript6
-rw-r--r--libs/ardour/wscript3
-rw-r--r--libs/gtkmm2ext/wscript3
3 files changed, 8 insertions, 4 deletions
diff --git a/gtk2_ardour/wscript b/gtk2_ardour/wscript
index 34bf3f04eb..e58c50c1a8 100644
--- a/gtk2_ardour/wscript
+++ b/gtk2_ardour/wscript
@@ -422,7 +422,8 @@ def build(bld):
# now the shared library containing the GTK GUI for ardour
obj = bld (features = 'cxx c cxxshlib')
- obj.source = gtk2_ardour_sources
+ # operate on copy to avoid adding sources twice
+ obj.source = list(gtk2_ardour_sources)
obj.includes = [ '../libs/fst', '.' ]
obj.name = 'libgtk2_ardour'
obj.target = 'gtk2_ardour'
@@ -433,7 +434,8 @@ def build(bld):
obj = bld (features = 'cxx c cxxprogram winres')
else:
obj = bld (features = 'cxx c cxxprogram')
- obj.source = gtk2_ardour_sources
+ # operate on copy to avoid adding sources twice
+ obj.source = list(gtk2_ardour_sources)
obj.target = 'ardour-' + str (bld.env['VERSION'])
obj.includes = ['.']
obj.ldflags = ['-no-undefined']
diff --git a/libs/ardour/wscript b/libs/ardour/wscript
index c0ef56b7e3..262b10159a 100644
--- a/libs/ardour/wscript
+++ b/libs/ardour/wscript
@@ -335,7 +335,8 @@ def build(bld):
# micro increment <=> no interface changes
LIBARDOUR_LIB_VERSION = "3.0.0"
- sources = libardour_sources
+ # operate on copy to avoid adding sources twice
+ sources = list(libardour_sources)
if bld.is_tracks_build():
sources += [ 'engine_state_controller.cc' ]
diff --git a/libs/gtkmm2ext/wscript b/libs/gtkmm2ext/wscript
index b7545c33c5..1832d6a03e 100644
--- a/libs/gtkmm2ext/wscript
+++ b/libs/gtkmm2ext/wscript
@@ -84,7 +84,8 @@ def configure(conf):
def build(bld):
- sources = gtkmm2ext_sources
+ # operate on copy to avoid adding sources twice
+ sources = list(gtkmm2ext_sources)
if bld.is_tracks_build():
sources += [ 'waves_fastmeter.cc', 'fader.cc' ]
else: