[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#778257: src:qtdeclarative-opensource-src: FTBFS on x32: JIT, symbols



Package: src:qtdeclarative-opensource-src
Version: 5.3.2-4
Severity: normal
Tags: patch

Hi!
This package fails to build on the x32 second-class architecture.  This is
bad as it has a massive amount of reverse [build-]dependencies, both direct
and transitive.

The fix needs two parts:
* applying the attached patch: fixing misdetection of x32 as i386/amd64
  (a proper port of the JIT would be of course better, but take a good deal
  more work)
* updating the symbols file.  s/!sparc64/!sparc64 !x32/ worked for me, as
  symbols you skip on every architecture need to be skipped on x32 too
  (how surprising...)


Meow!
-- System Information:
Debian Release: 8.0
  APT prefers unstable
  APT policy: (600, 'unstable'), (500, 'unreleased'), (50, 'experimental')
Architecture: x32 (x86_64)

Kernel: Linux 3.19.0-x32 (SMP w/6 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
--- qtdeclarative-opensource-src-5.3.2.orig/src/qml/jsruntime/qv4global_p.h
+++ qtdeclarative-opensource-src-5.3.2/src/qml/jsruntime/qv4global_p.h
@@ -75,9 +75,9 @@ inline double trunc(double d) { return d
 
 // White list architectures
 
-#if defined(Q_PROCESSOR_X86)
+#if defined(Q_PROCESSOR_X86) && !defined(__ILP32__)
 #define V4_ENABLE_JIT
-#elif defined(Q_PROCESSOR_X86_64)
+#elif defined(Q_PROCESSOR_X86_64) && !defined(__ILP32__)
 #define V4_ENABLE_JIT
 #elif defined(Q_PROCESSOR_ARM_32)
 

Reply to: