qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] rules.mak: remove $(sort) from extract-libs
@ 2014-06-16 14:43 Paolo Bonzini
  2014-06-16 14:56 ` Fam Zheng
  2014-06-16 17:26 ` Peter Maydell
  0 siblings, 2 replies; 3+ messages in thread
From: Paolo Bonzini @ 2014-06-16 14:43 UTC (permalink / raw)
  To: qemu-devel; +Cc: peter.maydell, sbruno

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 <sbruno@ignoranthack.me>
Tested-by: Sean Bruno <sbruno@ignoranthack.me>
Signed-off-by: Paolo Bonzini <pbonzini@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

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [PATCH] rules.mak: remove $(sort) from extract-libs
  2014-06-16 14:43 [Qemu-devel] [PATCH] rules.mak: remove $(sort) from extract-libs Paolo Bonzini
@ 2014-06-16 14:56 ` Fam Zheng
  2014-06-16 17:26 ` Peter Maydell
  1 sibling, 0 replies; 3+ messages in thread
From: Fam Zheng @ 2014-06-16 14:56 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: peter.maydell, sbruno, qemu-devel

On Mon, 06/16 16:43, Paolo Bonzini wrote:
> 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 <sbruno@ignoranthack.me>
> Tested-by: Sean Bruno <sbruno@ignoranthack.me>
> Signed-off-by: Paolo Bonzini <pbonzini@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))

I was wondering about the $(sort), now this matches what I proposed in

http://lists.nongnu.org/archive/html/qemu-devel/2014-06/msg02351.html

Reviewed-by: Fam Zheng <famz@redhat.com>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [PATCH] rules.mak: remove $(sort) from extract-libs
  2014-06-16 14:43 [Qemu-devel] [PATCH] rules.mak: remove $(sort) from extract-libs Paolo Bonzini
  2014-06-16 14:56 ` Fam Zheng
@ 2014-06-16 17:26 ` Peter Maydell
  1 sibling, 0 replies; 3+ messages in thread
From: Peter Maydell @ 2014-06-16 17:26 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: sbruno, QEMU Developers

On 16 June 2014 15:43, Paolo Bonzini <pbonzini@redhat.com> wrote:
> 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 <sbruno@ignoranthack.me>
> Tested-by: Sean Bruno <sbruno@ignoranthack.me>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>         Peter, can you please apply this directly as it fixes the
>         build and there are no other pending patches?
> ---

Applied, thanks.

-- PMM

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2014-06-16 17:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-16 14:43 [Qemu-devel] [PATCH] rules.mak: remove $(sort) from extract-libs Paolo Bonzini
2014-06-16 14:56 ` Fam Zheng
2014-06-16 17:26 ` Peter Maydell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).