Package: lightspark
Version: 0.6.0.1-2
Severity: wishlist
Tags: patch sid
User: [email protected]
Usertags: powerpcspe

Hi,

lightspark FTBFS on powerpcspe[1] like this:

[...]
[  4%] Building CXX object src/CMakeFiles/spark.dir/asobject.cpp.o
cd /«PKGBUILDDIR»/obj-powerpc-linux-gnuspe/src && /usr/bin/c++   
-Dspark_EXPORTS -DLLVM_30 -DAUDIO_BACKEND="\"pulse sdl\"" 
-DHAVE_AVCODEC_DECODE_VIDEO2 -DHAVE_AVCODEC_DECODE_AUDIO3 
-DHAVE_AVCODEC_DECODE_AUDIO4 -DHAVE_AVIO_ALLOC_CONTEXT -DENABLE_LIBAVCODEC 
-DHAVE_NEW_GLIBMM_THREAD_API -DENABLE_CURL -DENABLE_RTMP 
-DLS_DATADIR=\"/usr/share/lightspark\" -DGNASH_PATH=\"/usr/bin/gnash\" 
-DPRIVATELIBDIR=\"/usr/lib/lightspark\" -g -O2 -fstack-protector 
--param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2  
-maltivec -D__STDC_CONSTANT_MACROS -fPIC -Wall -Wnon-virtual-dtor 
-Woverloaded-virtual -pipe -fvisibility=hidden -fvisibility-inlines-hidden 
-std=c++0x -Wdisabled-optimization -Wextra -Wno-unused-parameter 
-Wno-invalid-offsetof -g -O2 -DNDEBUG -fPIC 
-I/«PKGBUILDDIR»/obj-powerpc-linux-gnuspe -I/usr/include/glibmm-2.4 
-I/usr/lib/powerpc-linux-gnuspe/glibmm-2.4/include -I/usr/include/sigc++-2.0 
-I/usr/lib/powerpc-linux-gnuspe/sigc++-2.0/include -I/usr/include/glib
 -2.0 -I/usr/lib/powerpc-linux-gnuspe/glib-2.0/include 
-I/usr/lib/llvm-3.0/include -I/usr/include/freetype2 -I/usr/include/libxml2 
-I/usr/include/libxml++-2.6 -I/usr/lib/libxml++-2.6/include 
-I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libpng12 
-I/usr/include/pango-1.0 -I/usr/include/gtk-2.0 
-I/usr/lib/powerpc-linux-gnuspe/gtk-2.0/include -I/usr/include/atk-1.0 
-I/usr/include/gdk-pixbuf-2.0 -I/usr/include/gio-unix-2.0 -I/«PKGBUILDDIR»/src 
-I/«PKGBUILDDIR»/src/scripting    -o CMakeFiles/spark.dir/asobject.cpp.o -c 
/«PKGBUILDDIR»/src/asobject.cpp
/«PKGBUILDDIR»/src/asobject.cpp:1:0: error: AltiVec and E500 instructions 
cannot coexist
make[3]: *** [src/CMakeFiles/spark.dir/asobject.cpp.o] Error 1
make[2]: *** [src/CMakeFiles/spark.dir/all] Error 2
[...]

The attached patch fixes this by enabling -maltivec only in the PowerPC case
when SPE is _not_present.

Thanks,

Roland


[1] http://wiki.debian.org/PowerPCSPEPort


-- System Information:
Debian Release: 7.0
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.7.0 (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) (ignored: LC_ALL 
set to en_GB.UTF-8)
Shell: /bin/sh linked to /bin/dash
--- lightspark-0.6.0.1.orig/CMakeLists.txt	2013-02-24 18:06:23.000000000 +0100
+++ lightspark-0.6.0.1/CMakeLists.txt	2013-02-24 18:19:53.572913726 +0100
@@ -142,7 +142,13 @@
 ELSEIF(${CMAKE_SYSTEM_PROCESSOR} MATCHES "ppc")
 	SET(ppc 1)
 	SET(LIB_SUFFIX "" CACHE STRING "Choose the suffix of the lib folder (if any) : None ppc")
-	SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -maltivec -D__STDC_CONSTANT_MACROS -fPIC")
+	SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D__STDC_CONSTANT_MACROS -fPIC")
+	EXECUTE_PROCESS(COMMAND dpkg-architecture -qDEB_HOST_ARCH
+			OUTPUT_VARIABLE DEB_HOST_ARCH)
+	MESSAGE("DEBUG DEB_HOST_ARCH: ${DEB_HOST_ARCH}")
+	IF(NOT(${DEB_HOST_ARCH} MATCHES "powerpcspe"))
+		SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -maltivec")
+	ENDIF()
 ELSE(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^i[3-6]86$|^x86$")
 	# All non-x86 non-ppc architectures.
 	SET(LIB_SUFFIX "" CACHE STRING "Choose the suffix of the lib folder (if any) : None")

Reply via email to