Duplicate removal was added to extract-libs in order to avoid including the same library multiple times into the linking command line; this could potentially happen when using "foo.mo-libs" (which adds the library to all components, causing it to appear N times if the module is composed of N objects). However, sorting and removing duplicates causes problems with static linking, and also with space-separated linker options as found in some Mac OS X packaging systems. Furthermore, the "optimization" is really a non-problem since we do not expect .mo modules to be composed of many files.
Reported-by: Sean Bruno <sbr...@ignoranthack.me> Tested-by: Sean Bruno <sbr...@ignoranthack.me> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- Peter, can you please apply this directly as it fixes the build and there are no other pending patches? --- rules.mak | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rules.mak b/rules.mak index dde8e00..945484e 100644 --- a/rules.mak +++ b/rules.mak @@ -22,7 +22,7 @@ QEMU_DGFLAGS += -MMD -MP -MT $@ -MF $(*D)/$(*F).d # Same as -I$(SRC_PATH) -I., but for the nested source/object directories QEMU_INCLUDES += -I$(<D) -I$(@D) -extract-libs = $(strip $(sort $(foreach o,$1,$($o-libs)))) +extract-libs = $(strip $(foreach o,$1,$($o-libs))) expand-objs = $(strip $(sort $(filter %.o,$1)) \ $(foreach o,$(filter %.mo,$1),$($o-objs)) \ $(filter-out %.o %.mo,$1)) -- 1.8.3.1