Patchwork build: fix Win32 clean build

login
register
mail settings
Submitter Paolo Bonzini
Date Jan. 15, 2013, 8:49 a.m.
Message ID <1358239777-29911-2-git-send-email-pbonzini@redhat.com>
Download mbox | patch
Permalink /patch/212034/
State New
Headers show

Comments

Paolo Bonzini - Jan. 15, 2013, 8:49 a.m.
The version.o file did not appear explicitly as a dependency, and
this caused clean builds to fail.  Force its build by making the
Makefile depend on version.o.

(We cannot add it to libqemuutil.a, because it doesn't export any
symbol and thus would not be pulled by the linker).

Cc: Blue Swirl <blauwirbel@gmail.com>
Cc: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 Makefile | 1 +
 1 file changed, 1 insertion(+)
Stefan Weil - Jan. 15, 2013, 5:34 p.m.
Am 15.01.2013 09:49, schrieb Paolo Bonzini:
> The version.o file did not appear explicitly as a dependency, and
> this caused clean builds to fail.  Force its build by making the
> Makefile depend on version.o.
>
> (We cannot add it to libqemuutil.a, because it doesn't export any
> symbol and thus would not be pulled by the linker).
>
> Cc: Blue Swirl <blauwirbel@gmail.com>
> Cc: Stefan Weil <sw@weilnetz.de>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>  Makefile | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/Makefile b/Makefile
> index 7622a4c..cfa2fa6 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -153,6 +153,7 @@ version.o: $(SRC_PATH)/version.rc config-host.h
>  	$(call quiet-command,$(WINDRES) -I. -o $@ $<,"  RC    $(TARGET_DIR)$@")
>  
>  version-obj-$(CONFIG_WIN32) += version.o
> +Makefile: $(version-obj-y)
>  
>  ######################################################################
>  # Build libraries


Tested-by: Stefan Weil <sw@weilnetz.de>

Blue, Paolo's patch fixes a recently introduced build regression for MinGW.
Please apply it to git master.

I won't send a pull request because it is a build fix.

Paolo, your latest modifications added one more regression
because MinGW builds now compile files which are only needed
for user mode (= never for MinGW).util/envlist.c uses strtok_r
which is unavailable for MinGW, so we get a compiler warning,
but no linker error because it is unused.

Regards
Stefan
Paolo Bonzini - Jan. 16, 2013, 5:40 p.m.
Il 15/01/2013 18:34, Stefan Weil ha scritto:
> 
> Tested-by: Stefan Weil <sw@weilnetz.de>
> 
> Blue, Paolo's patch fixes a recently introduced build regression for MinGW.
> Please apply it to git master.
> 
> I won't send a pull request because it is a build fix.
> 
> Paolo, your latest modifications added one more regression
> because MinGW builds now compile files which are only needed
> for user mode (= never for MinGW).util/envlist.c uses strtok_r
> which is unavailable for MinGW, so we get a compiler warning,
> but no linker error because it is unused.

Yeah, this is a side effect of having an understandable directory
layout. :)  However I'd prefer if we added strtok_r to oslib-win32.c to
silence the warning, even if it's dead code.

Paolo
Anthony Liguori - Jan. 16, 2013, 9:14 p.m.
Applied.  Thanks.

Regards,

Anthony Liguori

Patch

diff --git a/Makefile b/Makefile
index 7622a4c..cfa2fa6 100644
--- a/Makefile
+++ b/Makefile
@@ -153,6 +153,7 @@  version.o: $(SRC_PATH)/version.rc config-host.h
 	$(call quiet-command,$(WINDRES) -I. -o $@ $<,"  RC    $(TARGET_DIR)$@")
 
 version-obj-$(CONFIG_WIN32) += version.o
+Makefile: $(version-obj-y)
 
 ######################################################################
 # Build libraries