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

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



On Saturday 21 February 2015 00:01:20 Adam Borowski wrote:
[snip]
> > Can you please send this upstream to https://codereview.qt-project.org/?
> 
> I looked at the upstream website, and found it quite confusing.  Thus, if
> you could forward the patch, it would be nice.
> 
> > Or, if you can't do it, tell us that you license the patch under BSD
> > license and we will do that ourselves (needed because upstream has a
> > CLA).
> Sure.  The patch appears to be too small to be copyrightable, but anyway, I
> hereby grant the right to use it under any license of your choice.

Thanks Adam! The patch is indeed too small to be copyrightable, so no problems 
if Dmitry or I pushes the patch upstream.

> > > * 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...)
> > 
> > No longer needed with the current Qt 5.4 packages (in experimental), where
> > the symbols mess has been fixed.
> 
> I tried to check the patch against the packages in experimental, but one of
> dependencies (qtxmlpatterns) failed to build for me, for reasons that don't
> seem to be arch-dependent:
> 
> ============
> CMake Error at
> /home/kilobyte/tmp/x32/exp/qtxmlpatterns-opensource-src-5.4.0/lib/cmake/Qt5
> XmlPatterns/Qt5XmlPatternsConfig.cmake:27 (message): The imported target
> "Qt5::XmlPatterns" references the file
> 
>      "/home/kilobyte/tmp/x32/exp/include/x86_64-linux-gnux32/qt5/"
> 
>   but this file does not exist.  Possible reasons include:
> ============
> If it's supposed to work, I can poke around more.  I wonder, though, if it
> would cost less human time to throw the patch in blindly for now.

Maybe you have your own Qt build somewhere? That path sounds like a .cmake 
file coming from a personal build :-/

> It does require a change, though.  Against sources from experimental it's:
> --- src/qml/jsruntime/qv4global_p.h~	2014-12-05 17:25:11.000000000 +0100
> +++ src/qml/jsruntime/qv4global_p.h	2015-02-20 19:04:52.201925780 +0100
> @@ -69,9 +69,11 @@
>  //
>  // NOTE: This should match the logic in qv4targetplatform_p.h!
> 
> -#if defined(Q_PROCESSOR_X86) && (defined(Q_OS_WINDOWS) ||
> defined(Q_OS_LINUX) || defined(Q_OS_QNX) || defined(Q_OS_FREEBSD)) +#if
> defined(Q_PROCESSOR_X86) && !defined(__ILP32__) \
> +    && (defined(Q_OS_WINDOWS) || defined(Q_OS_LINUX) || defined(Q_OS_QNX)
> || defined(Q_OS_FREEBSD)) #define V4_ENABLE_JIT
> -#elif defined(Q_PROCESSOR_X86_64) && (defined(Q_OS_WINDOWS) ||
> defined(Q_OS_LINUX) || defined(Q_OS_MAC) || defined(Q_OS_FREEBSD)) +#elif
> defined(Q_PROCESSOR_X86_64) && !defined(__ILP32__) \
> +    && (defined(Q_OS_WINDOWS) || defined(Q_OS_LINUX) || defined(Q_OS_MAC)
> || defined(Q_OS_FREEBSD)) #define V4_ENABLE_JIT
>  #elif defined(Q_PROCESSOR_ARM_32)
> 
> 
> while against upstream's 5.4 git it's:
> --- a/src/qml/jsruntime/qv4global_p.h
> +++ b/src/qml/jsruntime/qv4global_p.h
> @@ -69,9 +69,11 @@ inline double trunc(double d) { return d > 0 ? floor(d) :
> ceil(d); } //
>  // NOTE: This should match the logic in qv4targetplatform_p.h!
> 
> -#if defined(Q_PROCESSOR_X86) && (defined(Q_OS_WIN) || defined(Q_OS_LINUX)
> || defined(Q_OS_QNX) || defined(Q_OS_FREEBSD)) +#if
> defined(Q_PROCESSOR_X86) && !defined(__ILP32__) \
> +    && (defined(Q_OS_WIN) || defined(Q_OS_LINUX) || defined(Q_OS_QNX) ||
> defined(Q_OS_FREEBSD)) #define V4_ENABLE_JIT
> -#elif defined(Q_PROCESSOR_X86_64) && (defined(Q_OS_WIN) ||
> defined(Q_OS_LINUX) || defined(Q_OS_MAC) || defined(Q_OS_FREEBSD)) +#elif
> defined(Q_PROCESSOR_X86_64) && !defined(__ILP32__) \
> +    && (defined(Q_OS_WIN) || defined(Q_OS_LINUX) || defined(Q_OS_MAC) ||
> defined(Q_OS_FREEBSD)) #define V4_ENABLE_JIT
>  #elif defined(Q_PROCESSOR_ARM_32)
> 
> 
> (Ie, Q_OS_WIN vs Q_OS_WINDOWS).

We need to look at what's going to ship with 5.4.1, due to next week.

-- 
Those are my principles. If you don't like them I have others.
 -- Groucho Marx

Lisandro Damián Nicanor Pérez Meyer
http://perezmeyer.com.ar/
http://perezmeyer.blogspot.com/

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: