|
From: | Stefan Weil |
Subject: | Re: [Qemu-devel] [PATCH] Fix out-of-tree and cross compile builds for pixman |
Date: | Sun, 04 Nov 2012 13:10:49 +0100 |
User-agent: | Mozilla/5.0 (X11; Linux i686; rv:16.0) Gecko/20121011 Thunderbird/16.0.1 |
Am 03.11.2012 21:15, schrieb Blue Swirl:
On Sat, Nov 3, 2012 at 7:02 PM, Peter Maydell <address@hidden> wrote:On 3 November 2012 19:47, Blue Swirl <address@hidden> wrote:--- a/Makefile +++ b/Makefile @@ -122,7 +122,7 @@ subdir-pixman: pixman/Makefile $(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C pixman V="$(V)" all,) pixman/Makefile: $(SRC_PATH)/pixman/configure - (cd pixman; $(SRC_PATH)/pixman/configure --disable-shared --enable-static) + (cd pixman; CC=$(CC) LD=$(LD) AR=$(AR) NM=$(NM) RANLIB=$(RANLIB) $(SRC_PATH)/pixman/configure --disable-shared --enable-static)Not tested, but aren't there quoting issues here if you're building with --cc='ccache gcc' ?Yes. Also configure fails because the variables are not expanded and directory pixman/pixman does not exist. Funny how it worked earlier.
I struggle with the same issue, and there are more problems caused by the internal pixman code. The dependencies are wrong because pixman is built too late: $(TOOLS) also depends on it. It is not trivial to model them correctly. IMHO it would be better to build the internal pixman immediately when QEMU's configure is called. Then QEMU's make can always rely on an existing pixman. The internal pixman code is also too old for cross compilations with MinGW-w64. It already fails when running configure. Newer versions of pixman compile after a trivial modification which is needed to avoid redefined symbols: diff --git a/pixman/pixman-mmx.c b/pixman/pixman-mmx.c index 1a014fd..723c245 100644 --- a/pixman/pixman-mmx.c +++ b/pixman/pixman-mmx.c @@ -61,7 +61,7 @@ _mm_empty (void) #endif #ifdef USE_X86_MMX -# if (defined(__SUNPRO_C) || defined(_MSC_VER)) +# if (defined(__SUNPRO_C) || defined(_MSC_VER) || defined(__WIN64)) # include <xmmintrin.h> # else /* We have to compile with -msse to use xmmintrin.h, but that causes SSE More changes are needed to avoid typical MinGW-w64 compiler warnings (pointer to int conversions without uintptr_t). Up to now, I did not test the resulting code, so maybe there will be more surprises. Regards Stefan
[Prev in Thread] | Current Thread | [Next in Thread] |