Patchwork [08/26] libcacard: fix mingw64 cross-compilation

login
register
mail settings
Submitter Alon Levy
Date March 18, 2013, 1:10 p.m.
Message ID <1363612272-13713-9-git-send-email-alevy@redhat.com>
Download mbox | patch
Permalink /patch/228626/
State New
Headers show

Comments

Alon Levy - March 18, 2013, 1:10 p.m.
From: Marc-André Lureau <marcandre.lureau@gmail.com>

Compile and link with version.lo

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
 Makefile  | 8 ++++++--
 rules.mak | 3 ++-
 2 files changed, 8 insertions(+), 3 deletions(-)
Paolo Bonzini - March 18, 2013, 2:54 p.m.
Il 18/03/2013 14:10, Alon Levy ha scritto:
> From: Marc-André Lureau <marcandre.lureau@gmail.com>
> 
> Compile and link with version.lo
> 
> Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> ---
>  Makefile  | 8 ++++++--
>  rules.mak | 3 ++-
>  2 files changed, 8 insertions(+), 3 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index 6915178..10abfee 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -151,11 +151,15 @@ recurse-all: $(SUBDIR_RULES) $(ROMSUBDIR_RULES)
>  
>  bt-host.o: QEMU_CFLAGS += $(BLUEZ_CFLAGS)
>  
> -version.o: $(SRC_PATH)/version.rc config-host.h
> +version.o: $(SRC_PATH)/version.rc config-host.h | version.lo
>  	$(call quiet-command,$(WINDRES) -I. -o $@ $<,"  RC    $(TARGET_DIR)$@")
> +version.lo: $(SRC_PATH)/version.rc config-host.h
> +	$(call quiet-command,$(LIBTOOL) --mode=compile --tag=RC $(WINDRES) -I. -o $@ $<,"lt RC   $(TARGET_DIR)$@")
>  
>  version-obj-$(CONFIG_WIN32) += version.o
> -Makefile: $(version-obj-y)
> +version-lobj-$(CONFIG_WIN32) += $(if $(LIBTOOL),version.lo)
> +Makefile: $(version-obj-y) $(version-lobj-y)
> +
>  
>  ######################################################################
>  # Build libraries
> diff --git a/rules.mak b/rules.mak
> index 36aba2d..292a422 100644
> --- a/rules.mak
> +++ b/rules.mak
> @@ -35,7 +35,8 @@ LIBTOOL += $(if $(V),,--quiet)
>  LINK = $(call quiet-command,\
>         $(if $(filter %.lo %.la,$^),$(LIBTOOL) --mode=link --tag=CC \
>         )$(CC) $(QEMU_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ \
> -       $(sort $(filter %.o, $1)) $(filter-out %.o, $1) $(version-obj-y) \
> +       $(sort $(filter %.o, $1)) $(filter-out %.o, $1) \
> +       $(if $(filter %.lo %.la,$^),$(version-lobj-y),$(version-obj-y)) \
>         $(if $(filter %.lo %.la,$^),$(LIBTOOLFLAGS)) \
>         $(LIBS),$(if $(filter %.lo %.la,$^),"lt LINK ", "  LINK  ")"$(TARGET_DIR)$@")
>  endif
> 

Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>

Patch

diff --git a/Makefile b/Makefile
index 6915178..10abfee 100644
--- a/Makefile
+++ b/Makefile
@@ -151,11 +151,15 @@  recurse-all: $(SUBDIR_RULES) $(ROMSUBDIR_RULES)
 
 bt-host.o: QEMU_CFLAGS += $(BLUEZ_CFLAGS)
 
-version.o: $(SRC_PATH)/version.rc config-host.h
+version.o: $(SRC_PATH)/version.rc config-host.h | version.lo
 	$(call quiet-command,$(WINDRES) -I. -o $@ $<,"  RC    $(TARGET_DIR)$@")
+version.lo: $(SRC_PATH)/version.rc config-host.h
+	$(call quiet-command,$(LIBTOOL) --mode=compile --tag=RC $(WINDRES) -I. -o $@ $<,"lt RC   $(TARGET_DIR)$@")
 
 version-obj-$(CONFIG_WIN32) += version.o
-Makefile: $(version-obj-y)
+version-lobj-$(CONFIG_WIN32) += $(if $(LIBTOOL),version.lo)
+Makefile: $(version-obj-y) $(version-lobj-y)
+
 
 ######################################################################
 # Build libraries
diff --git a/rules.mak b/rules.mak
index 36aba2d..292a422 100644
--- a/rules.mak
+++ b/rules.mak
@@ -35,7 +35,8 @@  LIBTOOL += $(if $(V),,--quiet)
 LINK = $(call quiet-command,\
        $(if $(filter %.lo %.la,$^),$(LIBTOOL) --mode=link --tag=CC \
        )$(CC) $(QEMU_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ \
-       $(sort $(filter %.o, $1)) $(filter-out %.o, $1) $(version-obj-y) \
+       $(sort $(filter %.o, $1)) $(filter-out %.o, $1) \
+       $(if $(filter %.lo %.la,$^),$(version-lobj-y),$(version-obj-y)) \
        $(if $(filter %.lo %.la,$^),$(LIBTOOLFLAGS)) \
        $(LIBS),$(if $(filter %.lo %.la,$^),"lt LINK ", "  LINK  ")"$(TARGET_DIR)$@")
 endif