Package: mesa Version: 8.0.5-3 Severity: wishlist Tags: patch User: debian-powerpc...@breakpoint.cc Usertags: powerpcspe
Hi, mesa currently fails to build from source on powerpcspe[1] like this: [...] gcc -c -I. -I../../../src/gallium/include -I../../../src/gallium/auxiliary -I../../../src/gallium/drivers -Wall -g -O2 -Wall -Wmissing-prototypes -std=c99 -fno-strict-aliasing -fno-builtin-memcmp -Wall -g -O2 -fPIC -DUSE_PPC_ASM -DUSE_VMX_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -fvisibility=hidden util/u_cpu_detect.c -o util/u_cpu_detect.o /tmp/ccAlRhTe.s: Assembler messages: /tmp/ccAlRhTe.s:57: Error: Unrecognized opcode: `vand' make[4]: *** [util/u_cpu_detect.o] Error 1 make[4]: Leaving directory `/«PKGBUILDDIR»/build/dri/src/gallium/auxiliary' [...] This is because in case of powerpc, mesa activates some altivec instructions that are unknown on the pwerpcspe architecture. The attached patch fixes this by preventing the PPC-specialcasing in case of powerpcspe (__NO_FPRS__ is only defined there). Thanks, Roland [1] http://wiki.debian.org/PowerPCSPEPort -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: i386 (i686) Kernel: Linux 3.2.0-4-686-pae (SMP w/2 CPU cores) Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash
--- mesa/src/gallium/include/pipe/p_config.h.orig 2012-12-11 19:50:59.320592313 +0100 +++ mesa/src/gallium/include/pipe/p_config.h 2012-12-11 19:52:41.936617814 +0100 @@ -99,12 +99,14 @@ #endif #endif +#ifndef __NO_FPRS__ #if defined(__ppc__) || defined(__ppc64__) || defined(__PPC__) #define PIPE_ARCH_PPC #if defined(__ppc64__) || defined(__PPC64__) #define PIPE_ARCH_PPC_64 #endif #endif +#endif /*