* [Buildroot] Split supported architectures for Qt Script and Qt Webkit
@ 2014-11-20 11:51 Vicente Olivert Riera
2014-11-24 10:44 ` Vicente Olivert Riera
2014-11-27 23:57 ` Peter Korsgaard
0 siblings, 2 replies; 4+ messages in thread
From: Vicente Olivert Riera @ 2014-11-20 11:51 UTC (permalink / raw)
To: buildroot
Dear all,
please I would like you read this email and provide some feedback before
I start writing a patch.
Currently in Buildroot we have a BR2_PACKAGE_QT_ARCH_SUPPORTS_WEBKIT
variable indicating which architectures support Qt Webkit. We also make
Qt Script depending on that variable, so we are assuming that Qt Script
is supported for exactly the same architectures which support Qt Webkit,
and that's not true.
So I have done some tests to make clear which architectures support Qt
Script and which ones support Qt Webkit, in order to create another
variable called BR2_PACKAGE_QT_ARCH_SUPPORTS_SCRIPT.
That way we will be able to fix some problems we can't fix properly
right now. For instance, Qt Webkit is not supported for MIPS64 when
using the n32 ABI, but Qt Script is actually supported. So, if we make
BR2_PACKAGE_QT_ARCH_SUPPORTS_WEBKIT depending on !BR2_MIPS_NABI32 we
will also disable Qt Script, because as I said before, Qt Script depends
on BR2_PACKAGE_QT_ARCH_SUPPORTS_WEBKIT, and we don't want that because
Qt Script works.
Related:
http://lists.busybox.net/pipermail/buildroot/2014-November/111760.html
I have also included Grantlee in the tests because is the only package
which depends on Qt Script, so at the same time I do the tests we can
know which architectures do support Qt Script but don't support
Grantlee. There isn't any package depending on Qt Webkit.
I have assigned a code to each kind of problem I have found, and the
meaning of those codes are just below the table.
+------------------+-----------+-----------+----------+--------------+
| Architecture | Qt Script | Qt Webkit | Grantlee | Problem Code |
+------------------+-----------+-----------+----------+--------------+
| BR2_arcle | NO | NO | NO | 1 |
| BR2_arceb | NO | NO | NO | 1 |
| BR2_arm | YES | YES | YES | |
| BR2_armeb | YES | YES | YES | |
| BR2_aarch64 | YES | NO | YES | 2 |
| BR2_bfin | NO | NO | NO | 1 |
| BR2_i386 | YES | YES | YES | |
| BR2_microblazeel | YES | YES | NO | 3 |
| BR2_microblazebe | YES | YES | NO | 3 |
| BR2_mips | YES | YES | YES | |
| BR2_mipsel | YES | YES | YES | |
| BR2_mips64 | YES | YES | YES | |
| BR2_mips64el | YES | YES | YES | |
| BR2_nios2 | YES | NO | NO | 4 |
| BR2_powerpc | YES | YES | YES | |
| BR2_powerpc64 | YES | YES | YES | |
| BR2_powerpc64el | YES | YES | YES | |
| BR2_sh | YES | YES | YES | |
| BR2_sh64 | NO | NO | NO | 5 |
| BR2_sparc | NO | NO | NO | 5 |
| BR2_x86_64 | YES | YES | YES | |
| BR2_xtensa | NO | NO | NO | 1 |
+------------------+-----------+-----------+----------+--------------+
Problem 1
---------
There is no toolchain with NPTL for this architecture
Problem 2
---------
Qt Webkit fails to compile for aarch64:
In file included from runtime/JSCell.h:31:0,
from runtime/JSObject.h:31,
from wtf/DateMath.cpp:79:
runtime/JSValueInlineMethods.h: In constructor
?JSC::JSValue::JSValue(JSC::JSCell*)?:
runtime/JSValueInlineMethods.h:230:57: error: cast from ?JSC::JSCell*?
to ?int32_t {aka int}? loses precision [-fpermissive]
u.asBits.payload = reinterpret_cast<int32_t>(ptr);
^
Problem 3
---------
Grantlee fails to link for microblaze:
microblaze-buildroot-linux-gnu/bin/ld: fde encoding in
CMakeFiles/grantlee_core.dir/engine.cpp.o(.eh_frame) prevents
.eh_frame_hdr table being created.
microblaze-buildroot-linux-gnu/4.9.2/../../../../microblaze-buildroot-linux-gnu/bin/ld:
fde encoding in
CMakeFiles/grantlee_core.dir/engine.cpp.o(.eh_framecollect2: error: ld
returned 1 exit status
microblaze-buildroot-linux-gnu/4.9.2/make[3]: ../.***
[textdocument/lib/libgrantlee_gui.so.0.2.0] Error 1.
Problem 4
---------
Qt Gui fails to link for nios2. Both Qt Webkit and Grantlee packages
depend on Qt Gui:
linking ../../lib/libQtGui.so.4.8.6
/home/ldap/vriera/work/mips-buildroots/mips32/output/host/opt/ext-toolchain/bin/../lib/gcc/nios2-linux-gnu/4.8.3/../../../../nios2-linux-gnu/bin/ld:
BFD (Sourcery CodeBench Lite 2014.05-47) 2.24.51.20140217 assertion fail
/scratch/sandra/nios2-linux-respin/obj/binutils-src-2014.05-47-nios2-linux-gnu-i686-pc-linux-gnu/bfd/elf32-nios2.c:1037
Problem 5
---------
I'm unable to build a toolchain for this architecture, and there isn't
any external toolchain available.
Best regards,
--
Vicente Olivert Riera
Graduate Software Engineer, MIPS Processor IP
Imagination Technologies Limited
t: +44 (0)113 2429814
www.imgtec.com
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] Split supported architectures for Qt Script and Qt Webkit
2014-11-20 11:51 [Buildroot] Split supported architectures for Qt Script and Qt Webkit Vicente Olivert Riera
@ 2014-11-24 10:44 ` Vicente Olivert Riera
2014-11-27 23:57 ` Peter Korsgaard
1 sibling, 0 replies; 4+ messages in thread
From: Vicente Olivert Riera @ 2014-11-24 10:44 UTC (permalink / raw)
To: buildroot
On 11/20/2014 11:51 AM, Vicente Olivert Riera wrote:
> Dear all,
>
> please I would like you read this email and provide some feedback before
> I start writing a patch.
>
> Currently in Buildroot we have a BR2_PACKAGE_QT_ARCH_SUPPORTS_WEBKIT
> variable indicating which architectures support Qt Webkit. We also make
> Qt Script depending on that variable, so we are assuming that Qt Script
> is supported for exactly the same architectures which support Qt Webkit,
> and that's not true.
>
> So I have done some tests to make clear which architectures support Qt
> Script and which ones support Qt Webkit, in order to create another
> variable called BR2_PACKAGE_QT_ARCH_SUPPORTS_SCRIPT.
>
> That way we will be able to fix some problems we can't fix properly
> right now. For instance, Qt Webkit is not supported for MIPS64 when
> using the n32 ABI, but Qt Script is actually supported. So, if we make
> BR2_PACKAGE_QT_ARCH_SUPPORTS_WEBKIT depending on !BR2_MIPS_NABI32 we
> will also disable Qt Script, because as I said before, Qt Script depends
> on BR2_PACKAGE_QT_ARCH_SUPPORTS_WEBKIT, and we don't want that because
> Qt Script works.
>
> Related:
> http://lists.busybox.net/pipermail/buildroot/2014-November/111760.html
>
> I have also included Grantlee in the tests because is the only package
> which depends on Qt Script, so at the same time I do the tests we can
> know which architectures do support Qt Script but don't support
> Grantlee. There isn't any package depending on Qt Webkit.
>
> I have assigned a code to each kind of problem I have found, and the
> meaning of those codes are just below the table.
>
> +------------------+-----------+-----------+----------+--------------+
> | Architecture | Qt Script | Qt Webkit | Grantlee | Problem Code |
> +------------------+-----------+-----------+----------+--------------+
> | BR2_arcle | NO | NO | NO | 1 |
> | BR2_arceb | NO | NO | NO | 1 |
> | BR2_arm | YES | YES | YES | |
> | BR2_armeb | YES | YES | YES | |
> | BR2_aarch64 | YES | NO | YES | 2 |
> | BR2_bfin | NO | NO | NO | 1 |
> | BR2_i386 | YES | YES | YES | |
> | BR2_microblazeel | YES | YES | NO | 3 |
> | BR2_microblazebe | YES | YES | NO | 3 |
> | BR2_mips | YES | YES | YES | |
> | BR2_mipsel | YES | YES | YES | |
> | BR2_mips64 | YES | YES | YES | |
> | BR2_mips64el | YES | YES | YES | |
> | BR2_nios2 | YES | NO | NO | 4 |
> | BR2_powerpc | YES | YES | YES | |
> | BR2_powerpc64 | YES | YES | YES | |
> | BR2_powerpc64el | YES | YES | YES | |
> | BR2_sh | YES | YES | YES | |
> | BR2_sh64 | NO | NO | NO | 5 |
> | BR2_sparc | NO | NO | NO | 5 |
> | BR2_x86_64 | YES | YES | YES | |
> | BR2_xtensa | NO | NO | NO | 1 |
> +------------------+-----------+-----------+----------+--------------+
>
> Problem 1
> ---------
> There is no toolchain with NPTL for this architecture
>
> Problem 2
> ---------
> Qt Webkit fails to compile for aarch64:
>
> In file included from runtime/JSCell.h:31:0,
> from runtime/JSObject.h:31,
> from wtf/DateMath.cpp:79:
> runtime/JSValueInlineMethods.h: In constructor
> ?JSC::JSValue::JSValue(JSC::JSCell*)?:
> runtime/JSValueInlineMethods.h:230:57: error: cast from ?JSC::JSCell*?
> to ?int32_t {aka int}? loses precision [-fpermissive]
> u.asBits.payload = reinterpret_cast<int32_t>(ptr);
> ^
>
> Problem 3
> ---------
> Grantlee fails to link for microblaze:
>
> microblaze-buildroot-linux-gnu/bin/ld: fde encoding in
> CMakeFiles/grantlee_core.dir/engine.cpp.o(.eh_frame) prevents
> .eh_frame_hdr table being created.
> microblaze-buildroot-linux-gnu/4.9.2/../../../../microblaze-buildroot-linux-gnu/bin/ld:
> fde encoding in
> CMakeFiles/grantlee_core.dir/engine.cpp.o(.eh_framecollect2: error: ld
> returned 1 exit status
> microblaze-buildroot-linux-gnu/4.9.2/make[3]: ../.***
> [textdocument/lib/libgrantlee_gui.so.0.2.0] Error 1.
>
> Problem 4
> ---------
> Qt Gui fails to link for nios2. Both Qt Webkit and Grantlee packages
> depend on Qt Gui:
>
> linking ../../lib/libQtGui.so.4.8.6
> /home/ldap/vriera/work/mips-buildroots/mips32/output/host/opt/ext-toolchain/bin/../lib/gcc/nios2-linux-gnu/4.8.3/../../../../nios2-linux-gnu/bin/ld:
> BFD (Sourcery CodeBench Lite 2014.05-47) 2.24.51.20140217 assertion fail
> /scratch/sandra/nios2-linux-respin/obj/binutils-src-2014.05-47-nios2-linux-gnu-i686-pc-linux-gnu/bfd/elf32-nios2.c:1037
>
> Problem 5
> ---------
> I'm unable to build a toolchain for this architecture, and there isn't
> any external toolchain available.
>
> Best regards,
>
Nobody? :-(
--
Vicente Olivert Riera
Graduate Software Engineer, MIPS Processor IP
Imagination Technologies Limited
t: +44 (0)113 2429814
www.imgtec.com
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] Split supported architectures for Qt Script and Qt Webkit
2014-11-20 11:51 [Buildroot] Split supported architectures for Qt Script and Qt Webkit Vicente Olivert Riera
2014-11-24 10:44 ` Vicente Olivert Riera
@ 2014-11-27 23:57 ` Peter Korsgaard
2014-11-28 10:05 ` Vicente Olivert Riera
1 sibling, 1 reply; 4+ messages in thread
From: Peter Korsgaard @ 2014-11-27 23:57 UTC (permalink / raw)
To: buildroot
>>>>> "Vicente" == Vicente Olivert Riera <Vincent.Riera@imgtec.com> writes:
> Dear all,
> please I would like you read this email and provide some feedback before
> I start writing a patch.
Thanks for investigating!
> I have assigned a code to each kind of problem I have found, and the
> meaning of those codes are just below the table.
> +------------------+-----------+-----------+----------+--------------+
> | Architecture | Qt Script | Qt Webkit | Grantlee | Problem Code |
> +------------------+-----------+-----------+----------+--------------+
> | BR2_aarch64 | YES | NO | YES | 2 |
> | BR2_nios2 | YES | NO | NO | 4 |
So the only ones not covered today are these two, right? What about the
mips variant you mentioned above?
The BR2_aarch64 issue will presumably be solved in future qtwebkit
releases once the arch gets a bit more used. The nios issue is an
internal compiler error, that is less likely to get fixed (until a new
compiler is released atleast).
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] Split supported architectures for Qt Script and Qt Webkit
2014-11-27 23:57 ` Peter Korsgaard
@ 2014-11-28 10:05 ` Vicente Olivert Riera
0 siblings, 0 replies; 4+ messages in thread
From: Vicente Olivert Riera @ 2014-11-28 10:05 UTC (permalink / raw)
To: buildroot
Dear Peter Korsgaard,
first of all, thank you very much for taking your time to read the email.
On 11/27/2014 11:57 PM, Peter Korsgaard wrote:
>>>>>> "Vicente" == Vicente Olivert Riera <Vincent.Riera@imgtec.com> writes:
>
> > Dear all,
> > please I would like you read this email and provide some feedback before
> > I start writing a patch.
>
> Thanks for investigating!
>
> > I have assigned a code to each kind of problem I have found, and the
> > meaning of those codes are just below the table.
>
> > +------------------+-----------+-----------+----------+--------------+
> > | Architecture | Qt Script | Qt Webkit | Grantlee | Problem Code |
> > +------------------+-----------+-----------+----------+--------------+
> > | BR2_aarch64 | YES | NO | YES | 2 |
> > | BR2_nios2 | YES | NO | NO | 4 |
>
> So the only ones not covered today are these two, right? What about the
> mips variant you mentioned above?
Well, QT Webkit fails to compile for aarch64, but for nios2 is
different. The package which fails is Qt Gui, which is a dependence of
Qt Webkit. So, is not Qt Webkit the one which is failing for nios2, is
Qt Gui. But of course, if you can't have Qt Gui, you can't have Qt
Webkit either :P
The MIPS variant which fails to compile Qt Webkit is MIPS64 n32 ABI. I
will state that when I write the patch.
> The BR2_aarch64 issue will presumably be solved in future qtwebkit
> releases once the arch gets a bit more used. The nios issue is an
> internal compiler error, that is less likely to get fixed (until a new
> compiler is released atleast).
Ok.
Cheers,
--
Vicente Olivert Riera
Graduate Software Engineer, MIPS Platforms
Imagination Technologies Limited
t: +44 (0)113 2429814
www.imgtec.com
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-11-28 10:05 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-20 11:51 [Buildroot] Split supported architectures for Qt Script and Qt Webkit Vicente Olivert Riera
2014-11-24 10:44 ` Vicente Olivert Riera
2014-11-27 23:57 ` Peter Korsgaard
2014-11-28 10:05 ` Vicente Olivert Riera
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox