Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] package/qt: disable Qt GUI module for CS NiosII toolchain
@ 2015-12-23 23:03 Romain Naour
  2015-12-24  7:38 ` Thomas Petazzoni
  0 siblings, 1 reply; 8+ messages in thread
From: Romain Naour @ 2015-12-23 23:03 UTC (permalink / raw)
  To: buildroot

The libQtGui.so build triggers an ld error with Binutils 2.25.1

Avoid (GCC 5.2 and Binutils 2.25.51):
http://autobuild.buildroot.net/results/c94/c945bce96966e5e39d093c4265058a66f749eea6

Similar (GCC 4.9.3 and Binutils 2.25.1):
http://autobuild.buildroot.net/results/ca9/ca981c419bfedb38c591f6e75151a943bc9535ef

Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
 package/grantlee/Config.in | 1 +
 package/opencv/Config.in   | 1 +
 package/opencv3/Config.in  | 1 +
 package/pinentry/Config.in | 1 +
 package/poppler/Config.in  | 1 +
 package/qt/Config.in       | 4 ++++
 6 files changed, 9 insertions(+)

diff --git a/package/grantlee/Config.in b/package/grantlee/Config.in
index 01ddacd..2b27ead 100644
--- a/package/grantlee/Config.in
+++ b/package/grantlee/Config.in
@@ -3,6 +3,7 @@ config BR2_PACKAGE_GRANTLEE
 	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # Qt Script
 	depends on (BR2_PACKAGE_QT_ARCH_SUPPORTS_SCRIPT && BR2_PACKAGE_QT) || \
 		(BR2_PACKAGE_QT5_JSCORE_AVAILABLE && BR2_PACKAGE_QT5)
+	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII if BR2_PACKAGE_QT # Qt GUI module
 	select BR2_PACKAGE_QT_STL if BR2_PACKAGE_QT
 	select BR2_PACKAGE_QT_SCRIPT if BR2_PACKAGE_QT
 	select BR2_PACKAGE_QT_GUI_MODULE if BR2_PACKAGE_QT
diff --git a/package/opencv/Config.in b/package/opencv/Config.in
index 679ce6f..8c42dd8 100644
--- a/package/opencv/Config.in
+++ b/package/opencv/Config.in
@@ -210,6 +210,7 @@ config BR2_PACKAGE_OPENCV_WITH_QT
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_USE_MMU # qt
 	depends on BR2_PACKAGE_OPENCV_LIB_HIGHGUI
+	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # Qt GUI module
 	select BR2_PACKAGE_QT
 	select BR2_PACKAGE_QT_STL
 	select BR2_PACKAGE_QT_GUI_MODULE
diff --git a/package/opencv3/Config.in b/package/opencv3/Config.in
index 8736805..33e8c8b 100644
--- a/package/opencv3/Config.in
+++ b/package/opencv3/Config.in
@@ -84,6 +84,7 @@ comment "gtk3 support needs libgtk3"
 config BR2_PACKAGE_OPENCV3_WITH_QT
 	bool "qt4"
 	depends on BR2_PACKAGE_QT
+	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # Qt GUI module
 	select BR2_PACKAGE_QT_STL
 	select BR2_PACKAGE_QT_GUI_MODULE
 	select BR2_PACKAGE_QT_TEST
diff --git a/package/pinentry/Config.in b/package/pinentry/Config.in
index edf3316..4d7bdea 100644
--- a/package/pinentry/Config.in
+++ b/package/pinentry/Config.in
@@ -40,6 +40,7 @@ config BR2_PACKAGE_PINENTRY_QT4
 	depends on BR2_USE_MMU # fork
 	depends on BR2_INSTALL_LIBSTDCPP
 	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # Qt GUI module
 	select BR2_PACKAGE_QT
 	select BR2_PACKAGE_QT_GUI_MODULE
 	help
diff --git a/package/poppler/Config.in b/package/poppler/Config.in
index fa4ce22..c749790 100644
--- a/package/poppler/Config.in
+++ b/package/poppler/Config.in
@@ -15,6 +15,7 @@ if BR2_PACKAGE_POPPLER
 config BR2_PACKAGE_POPPLER_QT
 	bool "Qt support"
 	depends on BR2_PACKAGE_QT
+	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # Qt GUI module
 	select BR2_PACKAGE_QT_GUI_MODULE
 	select BR2_PACKAGE_QT_XML
 	help
diff --git a/package/qt/Config.in b/package/qt/Config.in
index bf14724..fda3826 100644
--- a/package/qt/Config.in
+++ b/package/qt/Config.in
@@ -33,6 +33,7 @@ comment "Qt standard (X11) not available (need X.org)"
 config BR2_PACKAGE_QT_X11
 	bool "Qt standard (X11)"
 	depends on BR2_PACKAGE_XORG7
+	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # Qt GUI module
 	select BR2_PACKAGE_FONTCONFIG
 	select BR2_PACKAGE_XLIB_LIBXI
 	select BR2_PACKAGE_XLIB_LIBX11
@@ -56,6 +57,7 @@ config BR2_PACKAGE_QT_DEBUG
 
 config BR2_PACKAGE_QT_DEMOS
 	bool "Compile and install Qt demos (with code)"
+	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # Qt GUI module
 	select BR2_PACKAGE_QT_GUI_MODULE
 	help
 	  If unsure, say N.
@@ -69,6 +71,7 @@ config BR2_PACKAGE_QT_TRANSLATION_FILES
 
 config BR2_PACKAGE_QT_EXAMPLES
 	bool "Compile and install Qt examples (with code)"
+	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # Qt GUI module
 	select BR2_PACKAGE_QT_GUI_MODULE
 	help
 	  If unsure, say N.
@@ -130,6 +133,7 @@ config BR2_PACKAGE_QT_QT3SUPPORT
 
 config BR2_PACKAGE_QT_GUI_MODULE
 	bool "Gui Module"
+	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII # triggers compiler bug with binutils 2.25
 	select BR2_PACKAGE_QT_NETWORK
 	default y
 	help
-- 
2.4.3

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH] package/qt: disable Qt GUI module for CS NiosII toolchain
  2015-12-23 23:03 [Buildroot] [PATCH] package/qt: disable Qt GUI module for CS NiosII toolchain Romain Naour
@ 2015-12-24  7:38 ` Thomas Petazzoni
  2015-12-24  8:14   ` Romain Naour
  0 siblings, 1 reply; 8+ messages in thread
From: Thomas Petazzoni @ 2015-12-24  7:38 UTC (permalink / raw)
  To: buildroot

Dear Romain Naour,

On Thu, 24 Dec 2015 00:03:37 +0100, Romain Naour wrote:
> The libQtGui.so build triggers an ld error with Binutils 2.25.1
> 
> Avoid (GCC 5.2 and Binutils 2.25.51):
> http://autobuild.buildroot.net/results/c94/c945bce96966e5e39d093c4265058a66f749eea6
> 
> Similar (GCC 4.9.3 and Binutils 2.25.1):
> http://autobuild.buildroot.net/results/ca9/ca981c419bfedb38c591f6e75151a943bc9535ef
> 
> Signed-off-by: Romain Naour <romain.naour@gmail.com>

Can you check if the internal NIOSII toolchain also has this problem or
not?

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH] package/qt: disable Qt GUI module for CS NiosII toolchain
  2015-12-24  7:38 ` Thomas Petazzoni
@ 2015-12-24  8:14   ` Romain Naour
  2015-12-24  8:19     ` Thomas Petazzoni
  0 siblings, 1 reply; 8+ messages in thread
From: Romain Naour @ 2015-12-24  8:14 UTC (permalink / raw)
  To: buildroot

Hi Thomas

Le 24 d?c. 2015 08:39, "Thomas Petazzoni" <
thomas.petazzoni@free-electrons.com> a ?crit :
>
> Dear Romain Naour,
>
> On Thu, 24 Dec 2015 00:03:37 +0100, Romain Naour wrote:
> > The libQtGui.so build triggers an ld error with Binutils 2.25.1
> >
> > Avoid (GCC 5.2 and Binutils 2.25.51):
> >
http://autobuild.buildroot.net/results/c94/c945bce96966e5e39d093c4265058a66f749eea6
> >
> > Similar (GCC 4.9.3 and Binutils 2.25.1):
> >
http://autobuild.buildroot.net/results/ca9/ca981c419bfedb38c591f6e75151a943bc9535ef
> >
> > Signed-off-by: Romain Naour <romain.naour@gmail.com>
>
> Can you check if the internal NIOSII toolchain also has this problem or
> not?

Actualy, the second build failure was with the internal NIOSII toolchain.

This patch doesn't avoid to select Qt GUI with the internal NIOSII
toolchain :-/

Best regards,
Romain

>
> Thanks!
>
> Thomas
> --
> Thomas Petazzoni, CTO, Free Electrons
> Embedded Linux, Kernel and Android engineering
> http://free-electrons.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20151224/5d7cf4d5/attachment.html>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH] package/qt: disable Qt GUI module for CS NiosII toolchain
  2015-12-24  8:14   ` Romain Naour
@ 2015-12-24  8:19     ` Thomas Petazzoni
  2015-12-24  8:36       ` Romain Naour
  0 siblings, 1 reply; 8+ messages in thread
From: Thomas Petazzoni @ 2015-12-24  8:19 UTC (permalink / raw)
  To: buildroot

Romain,

On Thu, 24 Dec 2015 09:14:56 +0100, Romain Naour wrote:

> > Can you check if the internal NIOSII toolchain also has this problem or
> > not?
> 
> Actualy, the second build failure was with the internal NIOSII toolchain.

Then it would be good to report the bug to upstream binutils. And
indeed, your patch needs to be adjusted then :)

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH] package/qt: disable Qt GUI module for CS NiosII toolchain
  2015-12-24  8:19     ` Thomas Petazzoni
@ 2015-12-24  8:36       ` Romain Naour
  2015-12-24 10:12         ` Thomas Petazzoni
  0 siblings, 1 reply; 8+ messages in thread
From: Romain Naour @ 2015-12-24  8:36 UTC (permalink / raw)
  To: buildroot

Thomas,

Le 24 d?c. 2015 09:19, "Thomas Petazzoni" <
thomas.petazzoni@free-electrons.com> a ?crit :
>
> Romain,
>
> On Thu, 24 Dec 2015 09:14:56 +0100, Romain Naour wrote:
>
> > > Can you check if the internal NIOSII toolchain also has this problem
or
> > > not?
> >
> > Actualy, the second build failure was with the internal NIOSII
toolchain.
>
> Then it would be good to report the bug to upstream binutils. And
> indeed, your patch needs to be adjusted then :)

I think this patch is ok as is because we black list Qt GUI only with the
CS toolchain and there is nothing we can do to fix the issue.
I will see latter if I found a Binutils patch for it, if not report the
issue.

>
> Thomas
> --
> Thomas Petazzoni, CTO, Free Electrons
> Embedded Linux, Kernel and Android engineering
> http://free-electrons.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20151224/b355fd4b/attachment.html>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH] package/qt: disable Qt GUI module for CS NiosII toolchain
  2015-12-24  8:36       ` Romain Naour
@ 2015-12-24 10:12         ` Thomas Petazzoni
  2015-12-28 18:01           ` Romain Naour
  0 siblings, 1 reply; 8+ messages in thread
From: Thomas Petazzoni @ 2015-12-24 10:12 UTC (permalink / raw)
  To: buildroot

Dear Romain Naour,

On Thu, 24 Dec 2015 09:36:57 +0100, Romain Naour wrote:

> I think this patch is ok as is because we black list Qt GUI only with the
> CS toolchain and there is nothing we can do to fix the issue.
> I will see latter if I found a Binutils patch for it, if not report the
> issue.

Well, since the problem also affects nios2 internal toolchains, I
believe the dependencies should be !BR2_nios2, of course unless you
find an existing binutils patch to fix the problem. But if you don't,
then we will have to exclude nios2 entirely.

To be honest, the likeliness of having people using Qt GUI on nios2 is
very small, if not zero. So we shouldn't care too much about this IMO.

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH] package/qt: disable Qt GUI module for CS NiosII toolchain
  2015-12-24 10:12         ` Thomas Petazzoni
@ 2015-12-28 18:01           ` Romain Naour
  2015-12-28 20:35             ` Thomas Petazzoni
  0 siblings, 1 reply; 8+ messages in thread
From: Romain Naour @ 2015-12-28 18:01 UTC (permalink / raw)
  To: buildroot

Hi Thomas,

Le 24/12/2015 11:12, Thomas Petazzoni a ?crit :
> Dear Romain Naour,
> 
> On Thu, 24 Dec 2015 09:36:57 +0100, Romain Naour wrote:
> 
>> I think this patch is ok as is because we black list Qt GUI only with the
>> CS toolchain and there is nothing we can do to fix the issue.
>> I will see latter if I found a Binutils patch for it, if not report the
>> issue.
> 
> Well, since the problem also affects nios2 internal toolchains, I
> believe the dependencies should be !BR2_nios2, of course unless you
> find an existing binutils patch to fix the problem. But if you don't,
> then we will have to exclude nios2 entirely.

I greped in the Binutils git tree but I didn't see anything easy to backport to
fixes the issue. I tried to build a nios2 toolchain with gcc 5.2.3 and the
latest commit of the upcoming Binutils 2.26 release, and Qt GUI build fine.

I think we'll need to rebuild a new nios2 toolchain (with gcc 5.2.3 and binutils
2.26) to fix most of the build issues related to ld assertion fail or Assembler
messages (libcap-ng).

Also Qt GUI is not the only one affected by this issue (gtkmm3):
http://autobuild.buildroot.net/results/3e2/3e2ad2de03b5e9f181332d06dcf860e51fcd47f8/build-end.log

(Ok, likely not very used on nios2 ether)

> 
> To be honest, the likeliness of having people using Qt GUI on nios2 is
> very small, if not zero. So we shouldn't care too much about this IMO.

Ok, let exclude Qt GUI on nios2 but other packages may have the same issue.

Best regards,
Romain

> 
> Thanks,
> 
> Thomas
> 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Buildroot] [PATCH] package/qt: disable Qt GUI module for CS NiosII toolchain
  2015-12-28 18:01           ` Romain Naour
@ 2015-12-28 20:35             ` Thomas Petazzoni
  0 siblings, 0 replies; 8+ messages in thread
From: Thomas Petazzoni @ 2015-12-28 20:35 UTC (permalink / raw)
  To: buildroot

Hello,

On Mon, 28 Dec 2015 19:01:00 +0100, Romain Naour wrote:

> > Well, since the problem also affects nios2 internal toolchains, I
> > believe the dependencies should be !BR2_nios2, of course unless you
> > find an existing binutils patch to fix the problem. But if you don't,
> > then we will have to exclude nios2 entirely.
> 
> I greped in the Binutils git tree but I didn't see anything easy to backport to
> fixes the issue. I tried to build a nios2 toolchain with gcc 5.2.3 and the
> latest commit of the upcoming Binutils 2.26 release, and Qt GUI build fine.

Ah! This is interesting! I tested with binutils 2.25 and the gtkmm3 use
case, and it was still failing, so I reported the bug upstream at
https://sourceware.org/bugzilla/show_bug.cgi?id=19405.

> I think we'll need to rebuild a new nios2 toolchain (with gcc 5.2.3 and binutils
> 2.26) to fix most of the build issues related to ld assertion fail or Assembler
> messages (libcap-ng).

Interesting! I quickly tried to backport a few patches from binutils
git on top of 2.25, but I still get the assertion fail when building
gtkmm3.

> Also Qt GUI is not the only one affected by this issue (gtkmm3):
> http://autobuild.buildroot.net/results/3e2/3e2ad2de03b5e9f181332d06dcf860e51fcd47f8/build-end.log

Indeed.

> > To be honest, the likeliness of having people using Qt GUI on nios2 is
> > very small, if not zero. So we shouldn't care too much about this IMO.
> 
> Ok, let exclude Qt GUI on nios2 but other packages may have the same issue.

I suggest to simply exclude all those packages on BR2_nios2, with maybe
a comment "broken on existing external/internal toolchains, revisit
when they are upgraded". In any case, such "big" packages are highly
unlikely to ever be used on nios2.

Can you resend a patch adding a !BR2_nios2 dependency everywhere?

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-12-28 20:35 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-12-23 23:03 [Buildroot] [PATCH] package/qt: disable Qt GUI module for CS NiosII toolchain Romain Naour
2015-12-24  7:38 ` Thomas Petazzoni
2015-12-24  8:14   ` Romain Naour
2015-12-24  8:19     ` Thomas Petazzoni
2015-12-24  8:36       ` Romain Naour
2015-12-24 10:12         ` Thomas Petazzoni
2015-12-28 18:01           ` Romain Naour
2015-12-28 20:35             ` Thomas Petazzoni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox