All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862
@ 2019-05-22 12:25 Giulio Benetti
  2019-05-22 12:25 ` [Buildroot] [PATCH 1/8] toolchain: GCC bug 71124 Giulio Benetti
                   ` (8 more replies)
  0 siblings, 9 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 12:25 UTC (permalink / raw)
  To: buildroot

Following 'Fix GCC BUG 85180 per-package' patchset:
https://patchwork.ozlabs.org/project/buildroot/list/?series=109024
this patchset makes possible to build packages affected by GCC bugs 71124
and 85862.

Giulio Benetti (8):
  toolchain: GCC bug 71124
  package/sqlite: fix BUG_71124 build timeout
  package/ffmpeg: re-enable package if BUG_71124 is present
  package/assimp: re-enable package if BR2_microblaze is enabled
  package/libnss: re-enable package if BUG_85862 is present
  package/ecryptfs-utils: allow building with GCC_BUG_85862 and on
    Microblaze
  package/qt5webengine: re-enable building if BUG_85682=y on latest Qt5
  package/flashbench: remove old check if BR2_microblaze & BR2_sh2a

 package/assimp/Config.in           | 5 -----
 package/assimp/assimp.mk           | 4 ++++
 package/ecryptfs-utils/Config.in   | 6 ------
 package/ffmpeg/Config.in           | 2 --
 package/ffmpeg/ffmpeg.mk           | 5 +++++
 package/flashbench/flashbench.mk   | 5 -----
 package/libnss/Config.in           | 4 ----
 package/libnss/libnss.mk           | 8 ++++++--
 package/qt5/qt5webengine/Config.in | 6 ------
 package/sqlite/sqlite.mk           | 4 ++++
 toolchain/Config.in                | 7 +++++++
 11 files changed, 26 insertions(+), 30 deletions(-)

-- 
2.17.1

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

* [Buildroot] [PATCH 1/8] toolchain: GCC bug 71124
  2019-05-22 12:25 [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Giulio Benetti
@ 2019-05-22 12:25 ` Giulio Benetti
  2019-05-22 12:25 ` [Buildroot] [PATCH 2/8] package/sqlite: fix BUG_71124 build timeout Giulio Benetti
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 12:25 UTC (permalink / raw)
  To: buildroot

GCC < 8.x hangs while building sqlite for the Microblaze Arch.

Reported:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124

Similar to:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 toolchain/Config.in | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/toolchain/Config.in b/toolchain/Config.in
index d05ad88af4..68db4a2751 100644
--- a/toolchain/Config.in
+++ b/toolchain/Config.in
@@ -124,6 +124,13 @@ config BR2_TOOLCHAIN_HAS_GCC_BUG_64735
 	default y if !BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS && \
 		!BR2_TOOLCHAIN_GCC_AT_LEAST_7
 
+# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124. This bug no
+# longer exists in gcc 8.x.
+config BR2_TOOLCHAIN_HAS_GCC_BUG_71124
+	bool
+	default y if BR2_microblaze
+	depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_8
+
 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180. This bug no
 # longer exists in gcc 8.x.
 config BR2_TOOLCHAIN_HAS_GCC_BUG_85180
-- 
2.17.1

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

* [Buildroot] [PATCH 2/8] package/sqlite: fix BUG_71124 build timeout
  2019-05-22 12:25 [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Giulio Benetti
  2019-05-22 12:25 ` [Buildroot] [PATCH 1/8] toolchain: GCC bug 71124 Giulio Benetti
@ 2019-05-22 12:25 ` Giulio Benetti
  2019-05-22 12:25 ` [Buildroot] [PATCH 3/8] package/ffmpeg: re-enable package if BUG_71124 is present Giulio Benetti
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 12:25 UTC (permalink / raw)
  To: buildroot

With Microblaze Gcc version < 8.x build hangs on compiling last files
before linking.
This is due to bug 71124:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124
Bug shows up building sqlite with optimization but not when building
with -O0.

If BR2_TOOLCHAIN_HAS_GCC_BUG_71124=y force using -O0 passing it to
SQLITE_CFLAGS.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/sqlite/sqlite.mk | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/package/sqlite/sqlite.mk b/package/sqlite/sqlite.mk
index 7e97c966b7..acf759f4c0 100644
--- a/package/sqlite/sqlite.mk
+++ b/package/sqlite/sqlite.mk
@@ -39,8 +39,12 @@ ifeq ($(BR2_PACKAGE_SQLITE_NO_SYNC),y)
 SQLITE_CFLAGS += -DSQLITE_NO_SYNC
 endif
 
+ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_71124),y)
+SQLITE_CFLAGS += -O0
+else
 # fallback to standard -O3 when -Ofast is present to avoid -ffast-math
 SQLITE_CFLAGS += $(subst -Ofast,-O3,$(TARGET_CFLAGS))
+endif
 
 SQLITE_CONF_ENV = CFLAGS="$(SQLITE_CFLAGS)"
 
-- 
2.17.1

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

* [Buildroot] [PATCH 3/8] package/ffmpeg: re-enable package if BUG_71124 is present
  2019-05-22 12:25 [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Giulio Benetti
  2019-05-22 12:25 ` [Buildroot] [PATCH 1/8] toolchain: GCC bug 71124 Giulio Benetti
  2019-05-22 12:25 ` [Buildroot] [PATCH 2/8] package/sqlite: fix BUG_71124 build timeout Giulio Benetti
@ 2019-05-22 12:25 ` Giulio Benetti
  2019-05-22 12:25 ` [Buildroot] [PATCH 4/8] package/assimp: re-enable package if BR2_microblaze is enabled Giulio Benetti
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 12:25 UTC (permalink / raw)
  To: buildroot

With Microblaze Gcc version < 8.x build hangs on compiling.
This is due to bug 71124:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124
This package has been excluded from building if BUG_71124 is present.
Bug shows up building ffmpeg with optimization.

In config.mk if BR2_TOOLCHAIN_HAS_GCC_BUG_71124=y force using -O0 by:
- add --disable-optimizations to FFMPEG_CONF_OPTS
- passing -O0 to CFLAGS in FFMPEG_CONF_ENV
Then remove 'depends on !BR2_microblaze' from Config.in

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/ffmpeg/Config.in | 2 --
 package/ffmpeg/ffmpeg.mk | 5 +++++
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/package/ffmpeg/Config.in b/package/ffmpeg/Config.in
index eec7ce0f6b..a5c05d9c1c 100644
--- a/package/ffmpeg/Config.in
+++ b/package/ffmpeg/Config.in
@@ -7,8 +7,6 @@ config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
 	depends on !BR2_nios2
 	# No support for ARMv7-M in the ARM assembly logic
 	depends on !BR2_ARM_CPU_ARMV7M
-	# Microblaze build affected by gcc PR71124 (infinite loop)
-	depends on !BR2_microblaze
 	# m68k coldfire causes a build failure, because the check for
 	# atomics (atomic_store) succeeds, which causes ffmpeg to
 	# think atomic intrinsics are available, while they are
diff --git a/package/ffmpeg/ffmpeg.mk b/package/ffmpeg/ffmpeg.mk
index 8c91b149f4..1074a80182 100644
--- a/package/ffmpeg/ffmpeg.mk
+++ b/package/ffmpeg/ffmpeg.mk
@@ -525,6 +525,11 @@ endif
 
 FFMPEG_CONF_OPTS += $(call qstrip,$(BR2_PACKAGE_FFMPEG_EXTRACONF))
 
+ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_71124),y)
+FFMPEG_CONF_OPTS += --disable-optimizations
+FFMPEG_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -O0"
+endif
+
 # Override FFMPEG_CONFIGURE_CMDS: FFmpeg does not support --target and others
 define FFMPEG_CONFIGURE_CMDS
 	(cd $(FFMPEG_SRCDIR) && rm -rf config.cache && \
-- 
2.17.1

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

* [Buildroot] [PATCH 4/8] package/assimp: re-enable package if BR2_microblaze is enabled
  2019-05-22 12:25 [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Giulio Benetti
                   ` (2 preceding siblings ...)
  2019-05-22 12:25 ` [Buildroot] [PATCH 3/8] package/ffmpeg: re-enable package if BUG_71124 is present Giulio Benetti
@ 2019-05-22 12:25 ` Giulio Benetti
  2019-05-22 12:25 ` [Buildroot] [PATCH 5/8] package/libnss: re-enable package if BUG_85862 is present Giulio Benetti
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 12:25 UTC (permalink / raw)
  To: buildroot

With Microblaze Gcc version < 8.x build hangs on compiling first files.
This is due to bug 71124:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124
This package has been excluded from building if BR2_microblaze is
enabled.
Bug shows up building assimp with optimization but not when building
with -O0.

In config.mk if BR2_TOOLCHAIN_HAS_GCC_BUG_71124=y force using -O0 by:
- passing -O0 to ASSIMP_CXXFLAGS
Then remove 'depends on !BR2_microblaze' and its comment if not
available from Config.in

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/assimp/Config.in | 5 -----
 package/assimp/assimp.mk | 4 ++++
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/package/assimp/Config.in b/package/assimp/Config.in
index 41c1bb348b..630758f3e7 100644
--- a/package/assimp/Config.in
+++ b/package/assimp/Config.in
@@ -1,9 +1,5 @@
 config BR2_PACKAGE_ASSIMP
 	bool "assimp"
-	# All gcc versions affected by
-	# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124, that
-	# cause an infinite loop in gcc when building this package.
-	depends on !BR2_microblaze
 	depends on BR2_INSTALL_LIBSTDCPP
 	select BR2_PACKAGE_ZLIB
 	help
@@ -16,5 +12,4 @@ config BR2_PACKAGE_ASSIMP
 	  http://www.assimp.org
 
 comment "assimp needs a toolchain w/ C++"
-	depends on !BR2_microblaze
 	depends on !BR2_INSTALL_LIBSTDCPP
diff --git a/package/assimp/assimp.mk b/package/assimp/assimp.mk
index 1316720423..5720f9793f 100644
--- a/package/assimp/assimp.mk
+++ b/package/assimp/assimp.mk
@@ -24,6 +24,10 @@ ifeq ($(BR2_sh):$(BR2_STATIC_LIBS):$(BR2_TOOLCHAIN_GCC_AT_LEAST_6),y:y:)
 ASSIMP_CXXFLAGS += -O2
 endif
 
+ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y)
+ASSIMP_CXXFLAGS += -O0
+endif
+
 ASSIMP_CONF_OPTS += -DASSIMP_BUILD_TESTS=OFF \
 	-DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) $(ASSIMP_CXXFLAGS)"
 
-- 
2.17.1

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

* [Buildroot] [PATCH 5/8] package/libnss: re-enable package if BUG_85862 is present
  2019-05-22 12:25 [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Giulio Benetti
                   ` (3 preceding siblings ...)
  2019-05-22 12:25 ` [Buildroot] [PATCH 4/8] package/assimp: re-enable package if BR2_microblaze is enabled Giulio Benetti
@ 2019-05-22 12:25 ` Giulio Benetti
  2019-05-22 12:25 ` [Buildroot] [PATCH 6/8] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze Giulio Benetti
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 12:25 UTC (permalink / raw)
  To: buildroot

With Microblaze Gcc version < 7.x build hangs on compiling first files.
This is due to bug 85862:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85862
This package has been excluded from building if BUG_85862 is present.
Bug shows up building libnss with optimization.

In config.mk append BUILD_OPT=1 only if
BR2_TOOLCHAIN_HAS_GCC_BUG_85862=y otherwise don't declare BUILD_OPT
forcing build system to not emit -O* flag.
Then remove 'depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862' and its
comment if not available from Config.in

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/libnss/Config.in | 4 ----
 package/libnss/libnss.mk | 8 ++++++--
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/package/libnss/Config.in b/package/libnss/Config.in
index 34ddb91dfa..599c9a6536 100644
--- a/package/libnss/Config.in
+++ b/package/libnss/Config.in
@@ -3,7 +3,6 @@ config BR2_PACKAGE_LIBNSS
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libnspr
 	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnspr
 	depends on !BR2_STATIC_LIBS
-	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862
 	select BR2_PACKAGE_LIBNSPR
 	select BR2_PACKAGE_SQLITE
 	select BR2_PACKAGE_ZLIB
@@ -19,6 +18,3 @@ config BR2_PACKAGE_LIBNSS
 comment "libnss needs a toolchain w/ threads, dynamic library"
 	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT
 	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
-
-comment "libnss needs a toolchain not affected by GCC bug 85862"
-	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_85862
diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk
index 73c9b08fd2..1cee9eecb3 100644
--- a/package/libnss/libnss.mk
+++ b/package/libnss/libnss.mk
@@ -13,6 +13,7 @@ LIBNSS_DEPENDENCIES = libnspr sqlite zlib
 LIBNSS_LICENSE = MPL-2.0
 LIBNSS_LICENSE_FILES = nss/COPYING
 
+
 # --gc-sections triggers binutils ld segfault
 # https://sourceware.org/bugzilla/show_bug.cgi?id=21180
 ifeq ($(BR2_microblaze),y)
@@ -33,7 +34,6 @@ LIBNSS_BUILD_VARS = \
 	MOZILLA_CLIENT=1 \
 	NSPR_INCLUDE_DIR=$(STAGING_DIR)/usr/include/nspr \
 	NSPR_LIB_DIR=$(STAGING_DIR)/usr/lib \
-	BUILD_OPT=1 \
 	NS_USE_GCC=1 \
 	NSS_DISABLE_GTESTS=1 \
 	NSS_USE_SYSTEM_SQLITE=1 \
@@ -43,6 +43,10 @@ LIBNSS_BUILD_VARS = \
 	OS_RELEASE="2.6" \
 	OS_TEST="$(LIBNSS_ARCH)"
 
+ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85862),)
+LIBNSS_BUILD_VARS += BUILD_OPT=1
+endif
+
 # #pragma usage needs gcc >= 4.8
 # See https://bugzilla.mozilla.org/show_bug.cgi?id=1226179
 ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_8),)
@@ -62,7 +66,7 @@ define LIBNSS_BUILD_CMDS
 		SOURCE_MD_DIR=$(@D)/$(LIBNSS_DISTDIR) \
 		DIST=$(@D)/$(LIBNSS_DISTDIR) \
 		CHECKLOC= \
-		$(LIBNSS_BUILD_VARS)
+		$(LIBNSS_BUILD_VARS) CFLAGS="$(LIBNSS_CFLAGS)"
 	$(TARGET_CONFIGURE_OPTS) $(MAKE1) -C $(@D)/nss lib/dbm all \
 		SOURCE_MD_DIR=$(@D)/$(LIBNSS_DISTDIR) \
 		DIST=$(@D)/$(LIBNSS_DISTDIR) \
-- 
2.17.1

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

* [Buildroot] [PATCH 6/8] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze
  2019-05-22 12:25 [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Giulio Benetti
                   ` (4 preceding siblings ...)
  2019-05-22 12:25 ` [Buildroot] [PATCH 5/8] package/libnss: re-enable package if BUG_85862 is present Giulio Benetti
@ 2019-05-22 12:25 ` Giulio Benetti
  2019-05-22 12:25 ` [Buildroot] [PATCH 7/8] package/qt5webengine: re-enable building if BUG_85682=y on latest Qt5 Giulio Benetti
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 12:25 UTC (permalink / raw)
  To: buildroot

libnss gcc bug 85862 has been worked around and that caused build
failure on Microblaze.

Remove 'depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862' and 'depends on
!BR2_microblaze' from Config.in allowing this package to build.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/ecryptfs-utils/Config.in | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/package/ecryptfs-utils/Config.in b/package/ecryptfs-utils/Config.in
index 6652d33e0e..68a659d33d 100644
--- a/package/ecryptfs-utils/Config.in
+++ b/package/ecryptfs-utils/Config.in
@@ -2,12 +2,10 @@ config BR2_PACKAGE_ECRYPTFS_UTILS
 	bool "ecryptfs-utils"
 	depends on BR2_USE_WCHAR # gettext
 	depends on BR2_USE_MMU # keyutils
-	depends on !BR2_microblaze # keyutils
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libnss -> libnspr
 	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnss -> libnspr
 	depends on !BR2_MIPS_NABI32 # libnss
 	depends on !BR2_STATIC_LIBS # libnss, keyutils
-	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862 # microblaze specific & GCC < 7.x
 	select BR2_PACKAGE_KEYUTILS
 	select BR2_PACKAGE_LIBNSS
 	# runtime dependency only, some scripts are using the
@@ -31,11 +29,7 @@ config BR2_PACKAGE_ECRYPTFS_UTILS
 	  http://ecryptfs.org
 
 comment "ecryptfs-utils needs a toolchain w/ threads, wchar, dynami library"
-	depends on !BR2_microblaze
 	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT
 	depends on BR2_USE_MMU
 	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \
 		BR2_STATIC_LIBS
-
-comment "ecryptfs needs a toolchain not affected by GCC bug 85862"
-	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_85862 # libnss
-- 
2.17.1

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

* [Buildroot] [PATCH 7/8] package/qt5webengine: re-enable building if BUG_85682=y on latest Qt5
  2019-05-22 12:25 [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Giulio Benetti
                   ` (5 preceding siblings ...)
  2019-05-22 12:25 ` [Buildroot] [PATCH 6/8] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze Giulio Benetti
@ 2019-05-22 12:25 ` Giulio Benetti
  2019-05-22 12:25 ` [Buildroot] [PATCH 8/8] package/flashbench: remove old check if BR2_microblaze & BR2_sh2a Giulio Benetti
  2019-05-22 12:31 ` [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Thomas Petazzoni
  8 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 12:25 UTC (permalink / raw)
  To: buildroot

'depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862' is listed because libnss
was affected by that bug in latest Qt5, but now that bug has been worked
around.

So remove 'depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862' and allow
building latest Qt5 by removing also '|| BR2_PACKAGE_QT5_VERSION_5_6'.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/qt5/qt5webengine/Config.in | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/package/qt5/qt5webengine/Config.in b/package/qt5/qt5webengine/Config.in
index 744d659567..969582712e 100644
--- a/package/qt5/qt5webengine/Config.in
+++ b/package/qt5/qt5webengine/Config.in
@@ -20,18 +20,12 @@ comment "qt5webengine needs an OpenGL and EGL-capable backend"
 	depends on BR2_PACKAGE_QT5WEBENGINE_ARCH_SUPPORTS
 	depends on !BR2_PACKAGE_QT5_GL_AVAILABLE || !BR2_PACKAGE_HAS_LIBEGL
 
-comment "qt5webengine needs a toolchain not affected by GCC bug 85862"
-	depends on BR2_PACKAGE_QT5WEBENGINE_ARCH_SUPPORTS
-	depends on !BR2_PACKAGE_QT5_VERSION_5_6
-	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_85862 # libnss
-
 config BR2_PACKAGE_QT5WEBENGINE
 	bool "qt5webengine"
 	depends on BR2_PACKAGE_QT5WEBENGINE_ARCH_SUPPORTS
 	depends on BR2_TOOLCHAIN_USES_GLIBC # execinfo.h, mallinfo
 	depends on BR2_HOST_GCC_AT_LEAST_4_8 # qt5base-icu
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # qt5base-icu
-	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862 || BR2_PACKAGE_QT5_VERSION_5_6 # libnss
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2, libvpx, qt5base-dbus
 	depends on BR2_USE_WCHAR # libglib2
 	depends on BR2_PACKAGE_QT5_GL_AVAILABLE # qt5declarative, qt5base-eglfs
-- 
2.17.1

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

* [Buildroot] [PATCH 8/8] package/flashbench: remove old check if BR2_microblaze & BR2_sh2a
  2019-05-22 12:25 [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Giulio Benetti
                   ` (6 preceding siblings ...)
  2019-05-22 12:25 ` [Buildroot] [PATCH 7/8] package/qt5webengine: re-enable building if BUG_85682=y on latest Qt5 Giulio Benetti
@ 2019-05-22 12:25 ` Giulio Benetti
  2019-05-22 12:31 ` [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Thomas Petazzoni
  8 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 12:25 UTC (permalink / raw)
  To: buildroot

Commit:
https://git.buildroot.net/buildroot/commit/?id=bad25aff36b70b55b34ea4580b45f657385ae9ac
removed sourcery toolchain already deprecated in 2014 causing build
failure. It was based on Gcc 4.6.2 and Buildroot doesn't use this
anymore.

Remove check against BR2_microblaze and BR2_sh2a.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/flashbench/flashbench.mk | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/package/flashbench/flashbench.mk b/package/flashbench/flashbench.mk
index cbcf9ea2d1..e5c6b97283 100644
--- a/package/flashbench/flashbench.mk
+++ b/package/flashbench/flashbench.mk
@@ -11,11 +11,6 @@ FLASHBENCH_LICENSE_FILES = COPYING
 
 FLASHBENCH_CFLAGS = $(TARGET_CFLAGS)
 
-ifeq ($(BR2_microblaze)$(BR2_sh2a),y)
-# microblaze and sh2a toolchains only provide LLONG_MAX when used with gnu99 dialect
-FLASHBENCH_CFLAGS += -std=gnu99
-endif
-
 define FLASHBENCH_BUILD_CMDS
 	$(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \
 		CFLAGS="$(FLASHBENCH_CFLAGS)" \
-- 
2.17.1

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

* [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862
  2019-05-22 12:25 [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Giulio Benetti
                   ` (7 preceding siblings ...)
  2019-05-22 12:25 ` [Buildroot] [PATCH 8/8] package/flashbench: remove old check if BR2_microblaze & BR2_sh2a Giulio Benetti
@ 2019-05-22 12:31 ` Thomas Petazzoni
  2019-05-22 12:34   ` Giulio Benetti
  8 siblings, 1 reply; 45+ messages in thread
From: Thomas Petazzoni @ 2019-05-22 12:31 UTC (permalink / raw)
  To: buildroot

Hello Giulio,

On Wed, 22 May 2019 14:25:34 +0200
Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:

> Following 'Fix GCC BUG 85180 per-package' patchset:
> https://patchwork.ozlabs.org/project/buildroot/list/?series=109024
> this patchset makes possible to build packages affected by GCC bugs 71124
> and 85862.

Is there any evidence that bug 71124 and 85180 are different ?

When there is an infinite loop when building a package on Microblaze,
how do you know if it's caused by gcc bug 71124 or gcc bug 85180 ?

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862
  2019-05-22 12:31 ` [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Thomas Petazzoni
@ 2019-05-22 12:34   ` Giulio Benetti
  2019-05-22 13:02     ` Thomas Petazzoni
  0 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 12:34 UTC (permalink / raw)
  To: buildroot

Hello Thomas,

Il 22/05/2019 14:31, Thomas Petazzoni ha scritto:
> Hello Giulio,
> 
> On Wed, 22 May 2019 14:25:34 +0200
> Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
> 
>> Following 'Fix GCC BUG 85180 per-package' patchset:
>> https://patchwork.ozlabs.org/project/buildroot/list/?series=109024
>> this patchset makes possible to build packages affected by GCC bugs 71124
>> and 85862.
> 
> Is there any evidence that bug 71124 and 85180 are different ?
> 
> When there is an infinite loop when building a package on Microblaze,
> how do you know if it's caused by gcc bug 71124 or gcc bug 85180 ?

Actually not, I only based it on comments present inside Config.in, but 
almost probably they are the same.
Maybe is it better to fuse them into 85180?

Also, do i need to send these for next branch?
Because these patches don't fix bug, they only allow to build packages 
that before were not available.

Best regards
-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

> Best regards,
> 
> Thomas
> 

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

* [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862
  2019-05-22 12:34   ` Giulio Benetti
@ 2019-05-22 13:02     ` Thomas Petazzoni
  2019-05-22 13:15       ` Giulio Benetti
  0 siblings, 1 reply; 45+ messages in thread
From: Thomas Petazzoni @ 2019-05-22 13:02 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 22 May 2019 14:34:53 +0200
Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:

> > When there is an infinite loop when building a package on Microblaze,
> > how do you know if it's caused by gcc bug 71124 or gcc bug 85180 ?  
> 
> Actually not, I only based it on comments present inside Config.in, but 
> almost probably they are the same.
> Maybe is it better to fuse them into 85180?

I would suggest so, and perhaps we can mark 71124 as a duplicate of
85180 on the gcc bug tracker as well.

> Also, do i need to send these for next branch?

As said on IRC: just base your patches in master. I think it's material
from master, and if Peter/Arnout disagree, we will apply on next: there
won't be much conflicts anyway, and if there's any, it will be a
trivial conflict.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862
  2019-05-22 13:02     ` Thomas Petazzoni
@ 2019-05-22 13:15       ` Giulio Benetti
  2019-05-22 13:58         ` [Buildroot] [PATCH v2 0/7] fix GCC BUG 85180 " Giulio Benetti
  0 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 13:15 UTC (permalink / raw)
  To: buildroot

Hello,

Il 22/05/2019 15:02, Thomas Petazzoni ha scritto:
> Hello,
> 
> On Wed, 22 May 2019 14:34:53 +0200
> Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
> 
>>> When there is an infinite loop when building a package on Microblaze,
>>> how do you know if it's caused by gcc bug 71124 or gcc bug 85180 ?
>>
>> Actually not, I only based it on comments present inside Config.in, but
>> almost probably they are the same.
>> Maybe is it better to fuse them into 85180?
> 
> I would suggest so, and perhaps we can mark 71124 as a duplicate of
> 85180 on the gcc bug tracker as well.

Ok, I'm going to mark as duplicate on gcc bug tracker and fuse 71124 
into 85180.

>> Also, do i need to send these for next branch?
> 
> As said on IRC: just base your patches in master. I think it's material
> from master, and if Peter/Arnout disagree, we will apply on next: there
> won't be much conflicts anyway, and if there's any, it will be a
> trivial conflict.

Ok.

Thank you!

Kind regards
-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

> Best regards,
> 
> Thomas
> 

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

* [Buildroot] [PATCH v2 0/7] fix GCC BUG 85180 and 85862
  2019-05-22 13:15       ` Giulio Benetti
@ 2019-05-22 13:58         ` Giulio Benetti
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout Giulio Benetti
                             ` (6 more replies)
  0 siblings, 7 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 13:58 UTC (permalink / raw)
  To: buildroot

Following 'Fix GCC BUG 85180 per-package' patchset:
https://patchwork.ozlabs.org/project/buildroot/list/?series=109024
this patchset makes possible to build packages affected by GCC bugs 85180
and 85862.

V1->V2:
* merge gcc bug 71124 into 85180 since they are the same
  71124 has been marked as duplicate of 85180.
* removed patch 0001 where BUG_71124 was added since it's useless now

Giulio Benetti (7):
  package/sqlite: fix BUG_85180 build timeout
  package/ffmpeg: re-enable package if BUG_85180 is present
  package/assimp: re-enable package if BR2_microblaze is enabled
  package/libnss: re-enable package if BUG_85862 is present
  package/ecryptfs-utils: allow building with GCC_BUG_85862 and on
    Microblaze
  package/qt5webengine: re-enable building if BUG_85682=y on latest Qt5
  package/flashbench: remove old check if BR2_microblaze & BR2_sh2a

 package/assimp/Config.in           | 5 -----
 package/assimp/assimp.mk           | 4 ++++
 package/ecryptfs-utils/Config.in   | 6 ------
 package/ffmpeg/Config.in           | 2 --
 package/ffmpeg/ffmpeg.mk           | 5 +++++
 package/flashbench/flashbench.mk   | 5 -----
 package/libnss/Config.in           | 4 ----
 package/libnss/libnss.mk           | 8 ++++++--
 package/qt5/qt5webengine/Config.in | 6 ------
 package/sqlite/sqlite.mk           | 4 ++++
 10 files changed, 19 insertions(+), 30 deletions(-)

-- 
2.17.1

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
  2019-05-22 13:58         ` [Buildroot] [PATCH v2 0/7] fix GCC BUG 85180 " Giulio Benetti
@ 2019-05-22 13:59           ` Giulio Benetti
  2019-05-24 20:24             ` Thomas Petazzoni
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 2/7] package/ffmpeg: re-enable package if BUG_85180 is present Giulio Benetti
                             ` (5 subsequent siblings)
  6 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 13:59 UTC (permalink / raw)
  To: buildroot

With Microblaze Gcc version < 8.x build hangs on compiling last files
before linking.
This is due to bug 85180:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180
Bug shows up building sqlite with optimization but not when building
with -O0.

If BR2_TOOLCHAIN_HAS_GCC_BUG_85180=y force using -O0 passing it to
SQLITE_CFLAGS.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
V1->V2:
* use BUG_85180 instead of BUG_71124 since they are the same bug

 package/sqlite/sqlite.mk | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/package/sqlite/sqlite.mk b/package/sqlite/sqlite.mk
index 7e97c966b7..fa5dab6b57 100644
--- a/package/sqlite/sqlite.mk
+++ b/package/sqlite/sqlite.mk
@@ -39,8 +39,12 @@ ifeq ($(BR2_PACKAGE_SQLITE_NO_SYNC),y)
 SQLITE_CFLAGS += -DSQLITE_NO_SYNC
 endif
 
+ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y)
+SQLITE_CFLAGS += -O0
+else
 # fallback to standard -O3 when -Ofast is present to avoid -ffast-math
 SQLITE_CFLAGS += $(subst -Ofast,-O3,$(TARGET_CFLAGS))
+endif
 
 SQLITE_CONF_ENV = CFLAGS="$(SQLITE_CFLAGS)"
 
-- 
2.17.1

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

* [Buildroot] [PATCH v2 2/7] package/ffmpeg: re-enable package if BUG_85180 is present
  2019-05-22 13:58         ` [Buildroot] [PATCH v2 0/7] fix GCC BUG 85180 " Giulio Benetti
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout Giulio Benetti
@ 2019-05-22 13:59           ` Giulio Benetti
  2019-05-24 21:16             ` Thomas Petazzoni
  2019-06-06 15:00             ` Peter Korsgaard
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 3/7] package/assimp: re-enable package if BR2_microblaze is enabled Giulio Benetti
                             ` (4 subsequent siblings)
  6 siblings, 2 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 13:59 UTC (permalink / raw)
  To: buildroot

With Microblaze Gcc version < 8.x build hangs on compiling.
This is due to bug 85180:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180
This package has been excluded from building if BUG_85180 is present.
Bug shows up building ffmpeg with optimization.

In config.mk if BR2_TOOLCHAIN_HAS_GCC_BUG_85180=y force using -O0 by:
- add --disable-optimizations to FFMPEG_CONF_OPTS
- passing -O0 to CFLAGS in FFMPEG_CONF_ENV
Then remove 'depends on !BR2_microblaze' from Config.in

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
V1->V2:
* use BUG_85180 instead of BUG_71124 since they are the same bug

 package/ffmpeg/Config.in | 2 --
 package/ffmpeg/ffmpeg.mk | 5 +++++
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/package/ffmpeg/Config.in b/package/ffmpeg/Config.in
index eec7ce0f6b..a5c05d9c1c 100644
--- a/package/ffmpeg/Config.in
+++ b/package/ffmpeg/Config.in
@@ -7,8 +7,6 @@ config BR2_PACKAGE_FFMPEG_ARCH_SUPPORTS
 	depends on !BR2_nios2
 	# No support for ARMv7-M in the ARM assembly logic
 	depends on !BR2_ARM_CPU_ARMV7M
-	# Microblaze build affected by gcc PR71124 (infinite loop)
-	depends on !BR2_microblaze
 	# m68k coldfire causes a build failure, because the check for
 	# atomics (atomic_store) succeeds, which causes ffmpeg to
 	# think atomic intrinsics are available, while they are
diff --git a/package/ffmpeg/ffmpeg.mk b/package/ffmpeg/ffmpeg.mk
index 8c91b149f4..a3cc5be1a4 100644
--- a/package/ffmpeg/ffmpeg.mk
+++ b/package/ffmpeg/ffmpeg.mk
@@ -525,6 +525,11 @@ endif
 
 FFMPEG_CONF_OPTS += $(call qstrip,$(BR2_PACKAGE_FFMPEG_EXTRACONF))
 
+ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y)
+FFMPEG_CONF_OPTS += --disable-optimizations
+FFMPEG_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -O0"
+endif
+
 # Override FFMPEG_CONFIGURE_CMDS: FFmpeg does not support --target and others
 define FFMPEG_CONFIGURE_CMDS
 	(cd $(FFMPEG_SRCDIR) && rm -rf config.cache && \
-- 
2.17.1

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

* [Buildroot] [PATCH v2 3/7] package/assimp: re-enable package if BR2_microblaze is enabled
  2019-05-22 13:58         ` [Buildroot] [PATCH v2 0/7] fix GCC BUG 85180 " Giulio Benetti
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout Giulio Benetti
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 2/7] package/ffmpeg: re-enable package if BUG_85180 is present Giulio Benetti
@ 2019-05-22 13:59           ` Giulio Benetti
  2019-05-24 21:16             ` Thomas Petazzoni
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 4/7] package/libnss: re-enable package if BUG_85862 is present Giulio Benetti
                             ` (3 subsequent siblings)
  6 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 13:59 UTC (permalink / raw)
  To: buildroot

With Microblaze Gcc version < 8.x build hangs on compiling first files.
This is due to bug 85180:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180
This package has been excluded from building if BR2_microblaze is
enabled.
Bug shows up building assimp with optimization but not when building
with -O0.

In config.mk if BR2_TOOLCHAIN_HAS_GCC_BUG_85180=y force using -O0 by:
- passing -O0 to ASSIMP_CXXFLAGS
Then remove 'depends on !BR2_microblaze' and its comment if not
available from Config.in

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
V1->V2:
* use BUG_85180 instead of BUG_71124 since they are the same bug

 package/assimp/Config.in | 5 -----
 package/assimp/assimp.mk | 4 ++++
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/package/assimp/Config.in b/package/assimp/Config.in
index 41c1bb348b..630758f3e7 100644
--- a/package/assimp/Config.in
+++ b/package/assimp/Config.in
@@ -1,9 +1,5 @@
 config BR2_PACKAGE_ASSIMP
 	bool "assimp"
-	# All gcc versions affected by
-	# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71124, that
-	# cause an infinite loop in gcc when building this package.
-	depends on !BR2_microblaze
 	depends on BR2_INSTALL_LIBSTDCPP
 	select BR2_PACKAGE_ZLIB
 	help
@@ -16,5 +12,4 @@ config BR2_PACKAGE_ASSIMP
 	  http://www.assimp.org
 
 comment "assimp needs a toolchain w/ C++"
-	depends on !BR2_microblaze
 	depends on !BR2_INSTALL_LIBSTDCPP
diff --git a/package/assimp/assimp.mk b/package/assimp/assimp.mk
index 1316720423..5720f9793f 100644
--- a/package/assimp/assimp.mk
+++ b/package/assimp/assimp.mk
@@ -24,6 +24,10 @@ ifeq ($(BR2_sh):$(BR2_STATIC_LIBS):$(BR2_TOOLCHAIN_GCC_AT_LEAST_6),y:y:)
 ASSIMP_CXXFLAGS += -O2
 endif
 
+ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y)
+ASSIMP_CXXFLAGS += -O0
+endif
+
 ASSIMP_CONF_OPTS += -DASSIMP_BUILD_TESTS=OFF \
 	-DCMAKE_CXX_FLAGS="$(TARGET_CXXFLAGS) $(ASSIMP_CXXFLAGS)"
 
-- 
2.17.1

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

* [Buildroot] [PATCH v2 4/7] package/libnss: re-enable package if BUG_85862 is present
  2019-05-22 13:58         ` [Buildroot] [PATCH v2 0/7] fix GCC BUG 85180 " Giulio Benetti
                             ` (2 preceding siblings ...)
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 3/7] package/assimp: re-enable package if BR2_microblaze is enabled Giulio Benetti
@ 2019-05-22 13:59           ` Giulio Benetti
  2019-05-24 21:15             ` Thomas Petazzoni
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 5/7] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze Giulio Benetti
                             ` (2 subsequent siblings)
  6 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 13:59 UTC (permalink / raw)
  To: buildroot

With Microblaze Gcc version < 7.x build hangs on compiling first files.
This is due to bug 85862:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85862
This package has been excluded from building if BUG_85862 is present.
Bug shows up building libnss with optimization.

In config.mk append BUILD_OPT=1 only if
BR2_TOOLCHAIN_HAS_GCC_BUG_85862=y otherwise don't declare BUILD_OPT
forcing build system to not emit -O* flag.
Then remove 'depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862' and its
comment if not available from Config.in

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/libnss/Config.in | 4 ----
 package/libnss/libnss.mk | 8 ++++++--
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/package/libnss/Config.in b/package/libnss/Config.in
index 34ddb91dfa..599c9a6536 100644
--- a/package/libnss/Config.in
+++ b/package/libnss/Config.in
@@ -3,7 +3,6 @@ config BR2_PACKAGE_LIBNSS
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libnspr
 	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnspr
 	depends on !BR2_STATIC_LIBS
-	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862
 	select BR2_PACKAGE_LIBNSPR
 	select BR2_PACKAGE_SQLITE
 	select BR2_PACKAGE_ZLIB
@@ -19,6 +18,3 @@ config BR2_PACKAGE_LIBNSS
 comment "libnss needs a toolchain w/ threads, dynamic library"
 	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT
 	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
-
-comment "libnss needs a toolchain not affected by GCC bug 85862"
-	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_85862
diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk
index 73c9b08fd2..1cee9eecb3 100644
--- a/package/libnss/libnss.mk
+++ b/package/libnss/libnss.mk
@@ -13,6 +13,7 @@ LIBNSS_DEPENDENCIES = libnspr sqlite zlib
 LIBNSS_LICENSE = MPL-2.0
 LIBNSS_LICENSE_FILES = nss/COPYING
 
+
 # --gc-sections triggers binutils ld segfault
 # https://sourceware.org/bugzilla/show_bug.cgi?id=21180
 ifeq ($(BR2_microblaze),y)
@@ -33,7 +34,6 @@ LIBNSS_BUILD_VARS = \
 	MOZILLA_CLIENT=1 \
 	NSPR_INCLUDE_DIR=$(STAGING_DIR)/usr/include/nspr \
 	NSPR_LIB_DIR=$(STAGING_DIR)/usr/lib \
-	BUILD_OPT=1 \
 	NS_USE_GCC=1 \
 	NSS_DISABLE_GTESTS=1 \
 	NSS_USE_SYSTEM_SQLITE=1 \
@@ -43,6 +43,10 @@ LIBNSS_BUILD_VARS = \
 	OS_RELEASE="2.6" \
 	OS_TEST="$(LIBNSS_ARCH)"
 
+ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85862),)
+LIBNSS_BUILD_VARS += BUILD_OPT=1
+endif
+
 # #pragma usage needs gcc >= 4.8
 # See https://bugzilla.mozilla.org/show_bug.cgi?id=1226179
 ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_4_8),)
@@ -62,7 +66,7 @@ define LIBNSS_BUILD_CMDS
 		SOURCE_MD_DIR=$(@D)/$(LIBNSS_DISTDIR) \
 		DIST=$(@D)/$(LIBNSS_DISTDIR) \
 		CHECKLOC= \
-		$(LIBNSS_BUILD_VARS)
+		$(LIBNSS_BUILD_VARS) CFLAGS="$(LIBNSS_CFLAGS)"
 	$(TARGET_CONFIGURE_OPTS) $(MAKE1) -C $(@D)/nss lib/dbm all \
 		SOURCE_MD_DIR=$(@D)/$(LIBNSS_DISTDIR) \
 		DIST=$(@D)/$(LIBNSS_DISTDIR) \
-- 
2.17.1

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

* [Buildroot] [PATCH v2 5/7] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze
  2019-05-22 13:58         ` [Buildroot] [PATCH v2 0/7] fix GCC BUG 85180 " Giulio Benetti
                             ` (3 preceding siblings ...)
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 4/7] package/libnss: re-enable package if BUG_85862 is present Giulio Benetti
@ 2019-05-22 13:59           ` Giulio Benetti
  2019-05-27 17:28             ` Giulio Benetti
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 6/7] package/qt5webengine: re-enable building if BUG_85682=y on latest Qt5 Giulio Benetti
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 7/7] package/flashbench: remove old check if BR2_microblaze & BR2_sh2a Giulio Benetti
  6 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 13:59 UTC (permalink / raw)
  To: buildroot

libnss gcc bug 85862 has been worked around and that caused build
failure on Microblaze.

Remove 'depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862' and 'depends on
!BR2_microblaze' from Config.in allowing this package to build.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/ecryptfs-utils/Config.in | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/package/ecryptfs-utils/Config.in b/package/ecryptfs-utils/Config.in
index 6652d33e0e..68a659d33d 100644
--- a/package/ecryptfs-utils/Config.in
+++ b/package/ecryptfs-utils/Config.in
@@ -2,12 +2,10 @@ config BR2_PACKAGE_ECRYPTFS_UTILS
 	bool "ecryptfs-utils"
 	depends on BR2_USE_WCHAR # gettext
 	depends on BR2_USE_MMU # keyutils
-	depends on !BR2_microblaze # keyutils
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libnss -> libnspr
 	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnss -> libnspr
 	depends on !BR2_MIPS_NABI32 # libnss
 	depends on !BR2_STATIC_LIBS # libnss, keyutils
-	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862 # microblaze specific & GCC < 7.x
 	select BR2_PACKAGE_KEYUTILS
 	select BR2_PACKAGE_LIBNSS
 	# runtime dependency only, some scripts are using the
@@ -31,11 +29,7 @@ config BR2_PACKAGE_ECRYPTFS_UTILS
 	  http://ecryptfs.org
 
 comment "ecryptfs-utils needs a toolchain w/ threads, wchar, dynami library"
-	depends on !BR2_microblaze
 	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT
 	depends on BR2_USE_MMU
 	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \
 		BR2_STATIC_LIBS
-
-comment "ecryptfs needs a toolchain not affected by GCC bug 85862"
-	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_85862 # libnss
-- 
2.17.1

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

* [Buildroot] [PATCH v2 6/7] package/qt5webengine: re-enable building if BUG_85682=y on latest Qt5
  2019-05-22 13:58         ` [Buildroot] [PATCH v2 0/7] fix GCC BUG 85180 " Giulio Benetti
                             ` (4 preceding siblings ...)
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 5/7] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze Giulio Benetti
@ 2019-05-22 13:59           ` Giulio Benetti
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 7/7] package/flashbench: remove old check if BR2_microblaze & BR2_sh2a Giulio Benetti
  6 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 13:59 UTC (permalink / raw)
  To: buildroot

'depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862' is listed because libnss
was affected by that bug in latest Qt5, but now that bug has been worked
around.

So remove 'depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862' and allow
building latest Qt5 by removing also '|| BR2_PACKAGE_QT5_VERSION_5_6'.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/qt5/qt5webengine/Config.in | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/package/qt5/qt5webengine/Config.in b/package/qt5/qt5webengine/Config.in
index 744d659567..969582712e 100644
--- a/package/qt5/qt5webengine/Config.in
+++ b/package/qt5/qt5webengine/Config.in
@@ -20,18 +20,12 @@ comment "qt5webengine needs an OpenGL and EGL-capable backend"
 	depends on BR2_PACKAGE_QT5WEBENGINE_ARCH_SUPPORTS
 	depends on !BR2_PACKAGE_QT5_GL_AVAILABLE || !BR2_PACKAGE_HAS_LIBEGL
 
-comment "qt5webengine needs a toolchain not affected by GCC bug 85862"
-	depends on BR2_PACKAGE_QT5WEBENGINE_ARCH_SUPPORTS
-	depends on !BR2_PACKAGE_QT5_VERSION_5_6
-	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_85862 # libnss
-
 config BR2_PACKAGE_QT5WEBENGINE
 	bool "qt5webengine"
 	depends on BR2_PACKAGE_QT5WEBENGINE_ARCH_SUPPORTS
 	depends on BR2_TOOLCHAIN_USES_GLIBC # execinfo.h, mallinfo
 	depends on BR2_HOST_GCC_AT_LEAST_4_8 # qt5base-icu
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # qt5base-icu
-	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862 || BR2_PACKAGE_QT5_VERSION_5_6 # libnss
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2, libvpx, qt5base-dbus
 	depends on BR2_USE_WCHAR # libglib2
 	depends on BR2_PACKAGE_QT5_GL_AVAILABLE # qt5declarative, qt5base-eglfs
-- 
2.17.1

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

* [Buildroot] [PATCH v2 7/7] package/flashbench: remove old check if BR2_microblaze & BR2_sh2a
  2019-05-22 13:58         ` [Buildroot] [PATCH v2 0/7] fix GCC BUG 85180 " Giulio Benetti
                             ` (5 preceding siblings ...)
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 6/7] package/qt5webengine: re-enable building if BUG_85682=y on latest Qt5 Giulio Benetti
@ 2019-05-22 13:59           ` Giulio Benetti
  2019-05-24 21:18             ` Thomas Petazzoni
  6 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-22 13:59 UTC (permalink / raw)
  To: buildroot

Commit:
https://git.buildroot.net/buildroot/commit/?id=bad25aff36b70b55b34ea4580b45f657385ae9ac
removed sourcery toolchain already deprecated in 2014 causing build
failure. It was based on Gcc 4.6.2 and Buildroot doesn't use this
anymore.

Remove check against BR2_microblaze and BR2_sh2a.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/flashbench/flashbench.mk | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/package/flashbench/flashbench.mk b/package/flashbench/flashbench.mk
index cbcf9ea2d1..e5c6b97283 100644
--- a/package/flashbench/flashbench.mk
+++ b/package/flashbench/flashbench.mk
@@ -11,11 +11,6 @@ FLASHBENCH_LICENSE_FILES = COPYING
 
 FLASHBENCH_CFLAGS = $(TARGET_CFLAGS)
 
-ifeq ($(BR2_microblaze)$(BR2_sh2a),y)
-# microblaze and sh2a toolchains only provide LLONG_MAX when used with gnu99 dialect
-FLASHBENCH_CFLAGS += -std=gnu99
-endif
-
 define FLASHBENCH_BUILD_CMDS
 	$(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) \
 		CFLAGS="$(FLASHBENCH_CFLAGS)" \
-- 
2.17.1

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout Giulio Benetti
@ 2019-05-24 20:24             ` Thomas Petazzoni
       [not found]               ` <6dcdb1eb-5d48-e773-9711-1df461c542e2@micronovasrl.com>
  0 siblings, 1 reply; 45+ messages in thread
From: Thomas Petazzoni @ 2019-05-24 20:24 UTC (permalink / raw)
  To: buildroot

On Wed, 22 May 2019 15:59:00 +0200
Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:

> With Microblaze Gcc version < 8.x build hangs on compiling last files
> before linking.
> This is due to bug 85180:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180
> Bug shows up building sqlite with optimization but not when building
> with -O0.
> 
> If BR2_TOOLCHAIN_HAS_GCC_BUG_85180=y force using -O0 passing it to
> SQLITE_CFLAGS.
> 
> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>

I cannot reproduce this timeout, and you don't have any autobuilder
failure. Could you provide a configuration that exhibits the failure ?

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v2 4/7] package/libnss: re-enable package if BUG_85862 is present
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 4/7] package/libnss: re-enable package if BUG_85862 is present Giulio Benetti
@ 2019-05-24 21:15             ` Thomas Petazzoni
  2019-05-27 10:10               ` Giulio Benetti
  2019-06-05 12:13               ` [Buildroot] [PATCH 1/2] package/libnss: use correct CFLAGS and LDFLAGS Giulio Benetti
  0 siblings, 2 replies; 45+ messages in thread
From: Thomas Petazzoni @ 2019-05-24 21:15 UTC (permalink / raw)
  To: buildroot

On Wed, 22 May 2019 15:59:03 +0200
Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:

>  # --gc-sections triggers binutils ld segfault
>  # https://sourceware.org/bugzilla/show_bug.cgi?id=21180
>  ifeq ($(BR2_microblaze),y)
> @@ -33,7 +34,6 @@ LIBNSS_BUILD_VARS = \
>  	MOZILLA_CLIENT=1 \
>  	NSPR_INCLUDE_DIR=$(STAGING_DIR)/usr/include/nspr \
>  	NSPR_LIB_DIR=$(STAGING_DIR)/usr/lib \
> -	BUILD_OPT=1 \

In fact why are we building with BUILD_OPT=1 at all ? This adds some
semi-random optimization flags decided by libnss. I guess we should not
pass BUILD_OPT=1 at all, and simply pass CFLAGS=$(LIBNSS_CFLAGS), with
LIBNSS_CFLAGS = $(TARGET_CFLAGS), with -O0 added to work around the
Microblaze bug.

What do you think ?

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v2 3/7] package/assimp: re-enable package if BR2_microblaze is enabled
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 3/7] package/assimp: re-enable package if BR2_microblaze is enabled Giulio Benetti
@ 2019-05-24 21:16             ` Thomas Petazzoni
  0 siblings, 0 replies; 45+ messages in thread
From: Thomas Petazzoni @ 2019-05-24 21:16 UTC (permalink / raw)
  To: buildroot

On Wed, 22 May 2019 15:59:02 +0200
Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:

> With Microblaze Gcc version < 8.x build hangs on compiling first files.
> This is due to bug 85180:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180
> This package has been excluded from building if BR2_microblaze is
> enabled.
> Bug shows up building assimp with optimization but not when building
> with -O0.
> 
> In config.mk if BR2_TOOLCHAIN_HAS_GCC_BUG_85180=y force using -O0 by:
> - passing -O0 to ASSIMP_CXXFLAGS
> Then remove 'depends on !BR2_microblaze' and its comment if not
> available from Config.in
> 
> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
> ---
> V1->V2:
> * use BUG_85180 instead of BUG_71124 since they are the same bug

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v2 2/7] package/ffmpeg: re-enable package if BUG_85180 is present
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 2/7] package/ffmpeg: re-enable package if BUG_85180 is present Giulio Benetti
@ 2019-05-24 21:16             ` Thomas Petazzoni
  2019-06-06 15:00             ` Peter Korsgaard
  1 sibling, 0 replies; 45+ messages in thread
From: Thomas Petazzoni @ 2019-05-24 21:16 UTC (permalink / raw)
  To: buildroot

On Wed, 22 May 2019 15:59:01 +0200
Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:

> With Microblaze Gcc version < 8.x build hangs on compiling.
> This is due to bug 85180:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180
> This package has been excluded from building if BUG_85180 is present.
> Bug shows up building ffmpeg with optimization.
> 
> In config.mk if BR2_TOOLCHAIN_HAS_GCC_BUG_85180=y force using -O0 by:
> - add --disable-optimizations to FFMPEG_CONF_OPTS
> - passing -O0 to CFLAGS in FFMPEG_CONF_ENV
> Then remove 'depends on !BR2_microblaze' from Config.in
> 
> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
> ---
> V1->V2:
> * use BUG_85180 instead of BUG_71124 since they are the same bug

Applied to master, thanks.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v2 7/7] package/flashbench: remove old check if BR2_microblaze & BR2_sh2a
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 7/7] package/flashbench: remove old check if BR2_microblaze & BR2_sh2a Giulio Benetti
@ 2019-05-24 21:18             ` Thomas Petazzoni
  2019-05-28  8:58               ` Giulio Benetti
  0 siblings, 1 reply; 45+ messages in thread
From: Thomas Petazzoni @ 2019-05-24 21:18 UTC (permalink / raw)
  To: buildroot

Hello,

On Wed, 22 May 2019 15:59:06 +0200
Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:

> Commit:
> https://git.buildroot.net/buildroot/commit/?id=bad25aff36b70b55b34ea4580b45f657385ae9ac
> removed sourcery toolchain already deprecated in 2014 causing build
> failure. It was based on Gcc 4.6.2 and Buildroot doesn't use this
> anymore.

This explanation is quite fuzzy. What is the relationship between the
removal of those toolchains and this particular issue ? Also this
commit only removes Microblaze toolchains, not SH2A toolchains.

Since when the LLONG_MAX issue has been fixed ?

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
       [not found]               ` <6dcdb1eb-5d48-e773-9711-1df461c542e2@micronovasrl.com>
@ 2019-05-27  9:06                 ` Giulio Benetti
  2019-05-27  9:37                   ` Thomas Petazzoni
  0 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-27  9:06 UTC (permalink / raw)
  To: buildroot

Hello Thomas,

Il 26/05/2019 00:14, Giulio Benetti ha scritto:
> Il 24/05/2019 22:24, Thomas Petazzoni ha scritto:
>> On Wed, 22 May 2019 15:59:00 +0200
>> Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
>>
>>> With Microblaze Gcc version < 8.x build hangs on compiling last files
>>> before linking.
>>> This is due to bug 85180:
>>> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180
>>> Bug shows up building sqlite with optimization but not when building
>>> with -O0.
>>>
>>> If BR2_TOOLCHAIN_HAS_GCC_BUG_85180=y force using -O0 passing it to
>>> SQLITE_CFLAGS.
>>>
>>> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
>>
>> I cannot reproduce this timeout, and you don't have any autobuilder
>> failure. Could you provide a configuration that exhibits the failure ?

Sure, the problems comes out building libnss with gcc4.9/5/6/7.
Here is pastebin of my savedefconfig:
https://pastebin.com/wmR8Dme3

I use external toolchains, but they are BR toolchains.
The commit log is not precise, need to improve it.

Best regards
-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
  2019-05-27  9:06                 ` Giulio Benetti
@ 2019-05-27  9:37                   ` Thomas Petazzoni
  2019-05-27  9:44                     ` Giulio Benetti
  0 siblings, 1 reply; 45+ messages in thread
From: Thomas Petazzoni @ 2019-05-27  9:37 UTC (permalink / raw)
  To: buildroot

Hello,

On Mon, 27 May 2019 11:06:06 +0200
Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:

> >> I cannot reproduce this timeout, and you don't have any autobuilder
> >> failure. Could you provide a configuration that exhibits the failure ?  
> 
> Sure, the problems comes out building libnss with gcc4.9/5/6/7.
> Here is pastebin of my savedefconfig:
> https://pastebin.com/wmR8Dme3

I still don't understand. You're mentioning libnss, but your defconfig
does not have libnss enabled. Am I missing something ?

Thanks,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
  2019-05-27  9:37                   ` Thomas Petazzoni
@ 2019-05-27  9:44                     ` Giulio Benetti
  2019-05-27  9:46                       ` Thomas Petazzoni
  0 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-27  9:44 UTC (permalink / raw)
  To: buildroot

Il 27/05/2019 11:37, Thomas Petazzoni ha scritto:
> Hello,
> 
> On Mon, 27 May 2019 11:06:06 +0200
> Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
> 
>>>> I cannot reproduce this timeout, and you don't have any autobuilder
>>>> failure. Could you provide a configuration that exhibits the failure ?
>>
>> Sure, the problems comes out building libnss with gcc4.9/5/6/7.
>> Here is pastebin of my savedefconfig:
>> https://pastebin.com/wmR8Dme3
> 
> I still don't understand. You're mentioning libnss, but your defconfig
> does not have libnss enabled. Am I missing something ?

Oh sorry, I use that defconfig and then I give:
"make libnss"

that causes 85180.

-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
  2019-05-27  9:44                     ` Giulio Benetti
@ 2019-05-27  9:46                       ` Thomas Petazzoni
  2019-05-27 10:20                         ` Giulio Benetti
  0 siblings, 1 reply; 45+ messages in thread
From: Thomas Petazzoni @ 2019-05-27  9:46 UTC (permalink / raw)
  To: buildroot

On Mon, 27 May 2019 11:44:45 +0200
Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:

> Il 27/05/2019 11:37, Thomas Petazzoni ha scritto:
> > Hello,
> > 
> > On Mon, 27 May 2019 11:06:06 +0200
> > Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
> >   
> >>>> I cannot reproduce this timeout, and you don't have any autobuilder
> >>>> failure. Could you provide a configuration that exhibits the failure ?  
> >>
> >> Sure, the problems comes out building libnss with gcc4.9/5/6/7.
> >> Here is pastebin of my savedefconfig:
> >> https://pastebin.com/wmR8Dme3  
> > 
> > I still don't understand. You're mentioning libnss, but your defconfig
> > does not have libnss enabled. Am I missing something ?  
> 
> Oh sorry, I use that defconfig and then I give:
> "make libnss"
> 
> that causes 85180.

But then what is the relationship with sqlite ? Your original patch,
which I'm replying to, is about fixing a build timeout in sqlite.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v2 4/7] package/libnss: re-enable package if BUG_85862 is present
  2019-05-24 21:15             ` Thomas Petazzoni
@ 2019-05-27 10:10               ` Giulio Benetti
  2019-06-05 12:13               ` [Buildroot] [PATCH 1/2] package/libnss: use correct CFLAGS and LDFLAGS Giulio Benetti
  1 sibling, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-27 10:10 UTC (permalink / raw)
  To: buildroot

Hello Thomas,

Il 24/05/2019 23:15, Thomas Petazzoni ha scritto:
> On Wed, 22 May 2019 15:59:03 +0200
> Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
> 
>>   # --gc-sections triggers binutils ld segfault
>>   # https://sourceware.org/bugzilla/show_bug.cgi?id=21180
>>   ifeq ($(BR2_microblaze),y)
>> @@ -33,7 +34,6 @@ LIBNSS_BUILD_VARS = \
>>   	MOZILLA_CLIENT=1 \
>>   	NSPR_INCLUDE_DIR=$(STAGING_DIR)/usr/include/nspr \
>>   	NSPR_LIB_DIR=$(STAGING_DIR)/usr/lib \
>> -	BUILD_OPT=1 \
> 
> In fact why are we building with BUILD_OPT=1 at all ? This adds some
> semi-random optimization flags decided by libnss. I guess we should not
> pass BUILD_OPT=1 at all, and simply pass CFLAGS=$(LIBNSS_CFLAGS), with
> LIBNSS_CFLAGS = $(TARGET_CFLAGS), with -O0 added to work around the
> Microblaze bug.
> 
> What do you think ?

I totally agree. I've taken a closer look to what I've done on this 
patch, LIBNSS_CFLAGS are not setup and CFLAGS=".." passed to $(MAKE1) 
are actually ignored by libnss. Need to find a way to pass our 
$(TARGET_CFLAGS).

-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
  2019-05-27  9:46                       ` Thomas Petazzoni
@ 2019-05-27 10:20                         ` Giulio Benetti
  2019-05-27 18:10                           ` Giulio Benetti
  0 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-27 10:20 UTC (permalink / raw)
  To: buildroot

Il 27/05/2019 11:46, Thomas Petazzoni ha scritto:
> On Mon, 27 May 2019 11:44:45 +0200
> Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
> 
>> Il 27/05/2019 11:37, Thomas Petazzoni ha scritto:
>>> Hello,
>>>
>>> On Mon, 27 May 2019 11:06:06 +0200
>>> Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
>>>    
>>>>>> I cannot reproduce this timeout, and you don't have any autobuilder
>>>>>> failure. Could you provide a configuration that exhibits the failure ?
>>>>
>>>> Sure, the problems comes out building libnss with gcc4.9/5/6/7.
>>>> Here is pastebin of my savedefconfig:
>>>> https://pastebin.com/wmR8Dme3
>>>
>>> I still don't understand. You're mentioning libnss, but your defconfig
>>> does not have libnss enabled. Am I missing something ?
>>
>> Oh sorry, I use that defconfig and then I give:
>> "make libnss"
>>
>> that causes 85180.
> 
> But then what is the relationship with sqlite ? Your original patch,
> which I'm replying to, is about fixing a build timeout in sqlite.

Ah yes, sqlite is a dependency of libnss.
And now I've found that it happens only with Gcc 4.9
I've been confused because when compiling sqlite3.c file it takes a very 
long time with Gcc 5/6/7/8/9 and I thought they hanged.
Instead it hangs only with Gcc 4.9, so it's a different Gcc bug, not 85180.
Need to check in gcc bugzilla, otherwise I should submit a new bug.

Can you try to build and check it hangs with gcc 4.9 and building sqlite 
during compiling sqlite3.c ?
This is to double check.

Thank you
Best regards
-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 5/7] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 5/7] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze Giulio Benetti
@ 2019-05-27 17:28             ` Giulio Benetti
  2019-05-27 19:13               ` Thomas Petazzoni
  0 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-27 17:28 UTC (permalink / raw)
  To: buildroot

Hello Thomas,

Il 22/05/2019 15:59, Giulio Benetti ha scritto:
> libnss gcc bug 85862 has been worked around and that caused build
> failure on Microblaze.
> 
> Remove 'depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862' and 'depends on
> !BR2_microblaze' from Config.in allowing this package to build.
> 
> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
> ---
>   package/ecryptfs-utils/Config.in | 6 ------
>   1 file changed, 6 deletions(-)
> 
> diff --git a/package/ecryptfs-utils/Config.in b/package/ecryptfs-utils/Config.in
> index 6652d33e0e..68a659d33d 100644
> --- a/package/ecryptfs-utils/Config.in
> +++ b/package/ecryptfs-utils/Config.in
> @@ -2,12 +2,10 @@ config BR2_PACKAGE_ECRYPTFS_UTILS
>   	bool "ecryptfs-utils"
>   	depends on BR2_USE_WCHAR # gettext
>   	depends on BR2_USE_MMU # keyutils
> -	depends on !BR2_microblaze # keyutils
>   	depends on BR2_TOOLCHAIN_HAS_THREADS # libnss -> libnspr
>   	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnss -> libnspr
>   	depends on !BR2_MIPS_NABI32 # libnss
>   	depends on !BR2_STATIC_LIBS # libnss, keyutils
> -	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862 # microblaze specific & GCC < 7.x
>   	select BR2_PACKAGE_KEYUTILS
>   	select BR2_PACKAGE_LIBNSS
>   	# runtime dependency only, some scripts are using the
> @@ -31,11 +29,7 @@ config BR2_PACKAGE_ECRYPTFS_UTILS
>   	  http://ecryptfs.org
>   
>   comment "ecryptfs-utils needs a toolchain w/ threads, wchar, dynami library"
> -	depends on !BR2_microblaze
>   	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT
>   	depends on BR2_USE_MMU
>   	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR || \
>   		BR2_STATIC_LIBS
> -
> -comment "ecryptfs needs a toolchain not affected by GCC bug 85862"
> -	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_85862 # libnss
> 

I've seen you've tagged this as Changes Requested:
https://patchwork.ozlabs.org/patch/1103358/

It is because of dependency to "keyutils" still not fixed right?

-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
  2019-05-27 10:20                         ` Giulio Benetti
@ 2019-05-27 18:10                           ` Giulio Benetti
  2019-05-27 21:11                             ` Arnout Vandecappelle
  0 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-27 18:10 UTC (permalink / raw)
  To: buildroot

Hello Thomas,

adding Atharva+

Il 27/05/2019 12:20, Giulio Benetti ha scritto:
> Il 27/05/2019 11:46, Thomas Petazzoni ha scritto:
>> On Mon, 27 May 2019 11:44:45 +0200
>> Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
>>
>>> Il 27/05/2019 11:37, Thomas Petazzoni ha scritto:
>>>> Hello,
>>>>
>>>> On Mon, 27 May 2019 11:06:06 +0200
>>>> Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
>>>>>>> I cannot reproduce this timeout, and you don't have any autobuilder
>>>>>>> failure. Could you provide a configuration that exhibits the 
>>>>>>> failure ?
>>>>>
>>>>> Sure, the problems comes out building libnss with gcc4.9/5/6/7.
>>>>> Here is pastebin of my savedefconfig:
>>>>> https://pastebin.com/wmR8Dme3
>>>>
>>>> I still don't understand. You're mentioning libnss, but your defconfig
>>>> does not have libnss enabled. Am I missing something ?
>>>
>>> Oh sorry, I use that defconfig and then I give:
>>> "make libnss"
>>>
>>> that causes 85180.
>>
>> But then what is the relationship with sqlite ? Your original patch,
>> which I'm replying to, is about fixing a build timeout in sqlite.
> 
> Ah yes, sqlite is a dependency of libnss.
> And now I've found that it happens only with Gcc 4.9
> I've been confused because when compiling sqlite3.c file it takes a very 
> long time with Gcc 5/6/7/8/9 and I thought they hanged.
> Instead it hangs only with Gcc 4.9, so it's a different Gcc bug, not 85180.
> Need to check in gcc bugzilla, otherwise I should submit a new bug.

It's a Gcc 4.9 only bug that I need to submit to gcc bugzilla.

Atharva built it and found it hangs while compiling sqlite3.c as me.

So, after submitting Gcc bug I'm going to add that bug to toolchain's 
Config.in and setting -O0 in sqlite.mk if that bug=y

Then I rewrite commit log and resubmit, but at this point this is not 
part of this patchset.

Right?

-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 5/7] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze
  2019-05-27 17:28             ` Giulio Benetti
@ 2019-05-27 19:13               ` Thomas Petazzoni
  2019-05-27 20:34                 ` Giulio Benetti
  0 siblings, 1 reply; 45+ messages in thread
From: Thomas Petazzoni @ 2019-05-27 19:13 UTC (permalink / raw)
  To: buildroot

On Mon, 27 May 2019 19:28:32 +0200
Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:

> I've seen you've tagged this as Changes Requested:
> https://patchwork.ozlabs.org/patch/1103358/
> 
> It is because of dependency to "keyutils" still not fixed right?

Because this patch depends on the libnss patch, which was also marked
as Changes Requested.

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* [Buildroot] [PATCH v2 5/7] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze
  2019-05-27 19:13               ` Thomas Petazzoni
@ 2019-05-27 20:34                 ` Giulio Benetti
  0 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-27 20:34 UTC (permalink / raw)
  To: buildroot

Il 27/05/2019 21:13, Thomas Petazzoni ha scritto:
> On Mon, 27 May 2019 19:28:32 +0200
> Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
> 
>> I've seen you've tagged this as Changes Requested:
>> https://patchwork.ozlabs.org/patch/1103358/
>>
>> It is because of dependency to "keyutils" still not fixed right?
> 
> Because this patch depends on the libnss patch, which was also marked
> as Changes Requested.

Ok, thanks.
-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
  2019-05-27 18:10                           ` Giulio Benetti
@ 2019-05-27 21:11                             ` Arnout Vandecappelle
  2019-05-27 21:14                               ` Giulio Benetti
  0 siblings, 1 reply; 45+ messages in thread
From: Arnout Vandecappelle @ 2019-05-27 21:11 UTC (permalink / raw)
  To: buildroot



On 27/05/2019 20:10, Giulio Benetti wrote:
> It's a Gcc 4.9 only bug that I need to submit to gcc bugzilla.

 There's not much point to submit a bug for GCC 4.9, which is no longer
maintained...

 Regards,
 Arnout

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
  2019-05-27 21:11                             ` Arnout Vandecappelle
@ 2019-05-27 21:14                               ` Giulio Benetti
  2019-05-27 21:28                                 ` Arnout Vandecappelle
  0 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-05-27 21:14 UTC (permalink / raw)
  To: buildroot

Il 27/05/2019 23:11, Arnout Vandecappelle ha scritto:
> 
> 
> On 27/05/2019 20:10, Giulio Benetti wrote:
>> It's a Gcc 4.9 only bug that I need to submit to gcc bugzilla.
> 
>   There's not much point to submit a bug for GCC 4.9, which is no longer
> maintained...

Ah, I didn't know it's maintained anymore.
So in this case I can base the rule for using -O0 on 
BR2_TOOLCHAIN_GCC_AT_LEAST_5 and comment on top of it.
At the moment sqlite is the only package suffering from this.

Thank you
Kind regards
-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
  2019-05-27 21:14                               ` Giulio Benetti
@ 2019-05-27 21:28                                 ` Arnout Vandecappelle
  2019-05-27 21:34                                   ` Giulio Benetti
  0 siblings, 1 reply; 45+ messages in thread
From: Arnout Vandecappelle @ 2019-05-27 21:28 UTC (permalink / raw)
  To: buildroot



On 27/05/2019 23:14, Giulio Benetti wrote:
> Il 27/05/2019 23:11, Arnout Vandecappelle ha scritto:
>>
>>
>> On 27/05/2019 20:10, Giulio Benetti wrote:
>>> It's a Gcc 4.9 only bug that I need to submit to gcc bugzilla.
>>
>> ? There's not much point to submit a bug for GCC 4.9, which is no longer
>> maintained...
> 
> Ah, I didn't know it's maintained anymore.
> So in this case I can base the rule for using -O0 on
> BR2_TOOLCHAIN_GCC_AT_LEAST_5 and comment on top of it.
> At the moment sqlite is the only package suffering from this.

 You mean, without introducing a _GCC_HAS_BUG_ option, right? Sounds good to me.

 Regards,
 Arnout

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

* [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout
  2019-05-27 21:28                                 ` Arnout Vandecappelle
@ 2019-05-27 21:34                                   ` Giulio Benetti
  0 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-27 21:34 UTC (permalink / raw)
  To: buildroot



Il 27/05/2019 23:28, Arnout Vandecappelle ha scritto:
> 
> 
> On 27/05/2019 23:14, Giulio Benetti wrote:
>> Il 27/05/2019 23:11, Arnout Vandecappelle ha scritto:
>>>
>>>
>>> On 27/05/2019 20:10, Giulio Benetti wrote:
>>>> It's a Gcc 4.9 only bug that I need to submit to gcc bugzilla.
>>>
>>>  ? There's not much point to submit a bug for GCC 4.9, which is no longer
>>> maintained...
>>
>> Ah, I didn't know it's maintained anymore.
>> So in this case I can base the rule for using -O0 on
>> BR2_TOOLCHAIN_GCC_AT_LEAST_5 and comment on top of it.
>> At the moment sqlite is the only package suffering from this.
> 
>   You mean, without introducing a _GCC_HAS_BUG_ option, right? Sounds good to me.

Yes. I hope there won't be other packages affected by this, but since 
4.9 is no longer maintained I don't see other way, excect adding 
internal special _GCC_HAS_BUG_ but I think that could mess things up.

Kind regards
-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 7/7] package/flashbench: remove old check if BR2_microblaze & BR2_sh2a
  2019-05-24 21:18             ` Thomas Petazzoni
@ 2019-05-28  8:58               ` Giulio Benetti
  0 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-05-28  8:58 UTC (permalink / raw)
  To: buildroot

Hello Thomas,

Il 24/05/2019 23:18, Thomas Petazzoni ha scritto:
> Hello,
> 
> On Wed, 22 May 2019 15:59:06 +0200
> Giulio Benetti <giulio.benetti@micronovasrl.com> wrote:
> 
>> Commit:
>> https://git.buildroot.net/buildroot/commit/?id=bad25aff36b70b55b34ea4580b45f657385ae9ac
>> removed sourcery toolchain already deprecated in 2014 causing build
>> failure. It was based on Gcc 4.6.2 and Buildroot doesn't use this
>> anymore.
> 
> This explanation is quite fuzzy. What is the relationship between the
> removal of those toolchains and this particular issue ? 

I improve commit log.

>Also this commit only removes Microblaze toolchains, not SH2A toolchains.

I've messed up, I need to remove BR2_microblaze only.

> Since when the LLONG_MAX issue has been fixed ?

Need to check and report on commit log.

Best regards
-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

> Best regards,
> 
> Thomas
> 

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

* [Buildroot] [PATCH 1/2] package/libnss: use correct CFLAGS and LDFLAGS
  2019-05-24 21:15             ` Thomas Petazzoni
  2019-05-27 10:10               ` Giulio Benetti
@ 2019-06-05 12:13               ` Giulio Benetti
  2019-06-05 12:13                 ` [Buildroot] [PATCH 2/2] package/libnss: re-enable package on microblaze Giulio Benetti
  1 sibling, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-06-05 12:13 UTC (permalink / raw)
  To: buildroot

Actually libnss is configure with BUILD_OPT=1 that doesn't take into
account TARGET_CFLAGS nor TARGET_LDFLAGS resulting in pre-chosen
optimizations and debugging symbols.

Can't pass TARGET_CFLAGS through CFLAGS or similar otherwise other
iternal libnss will be overwritten(i.e. -fPIC), so prefer to append
TARGET_CFLAGS at the end of Linux.mk as well as TARGET_LDFLAGS according
to internal libnss Makefile system's names. And obviously remove
BUILD_OPT=1 from BUILD_VARS.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/libnss/libnss.mk | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk
index 89d614fe1c..484c79e9da 100644
--- a/package/libnss/libnss.mk
+++ b/package/libnss/libnss.mk
@@ -13,6 +13,14 @@ LIBNSS_DEPENDENCIES = libnspr sqlite zlib
 LIBNSS_LICENSE = MPL-2.0
 LIBNSS_LICENSE_FILES = nss/COPYING
 
+# Need to pass down TARGET_CFLAGS and TARGET_LDFLAGS
+define LIBNSS_FIXUP_LINUX_MK
+	echo 'OS_CFLAGS += ${TARGET_CFLAGS}' >> $(@D)/nss/coreconf/Linux.mk
+	echo 'LDFLAGS += ${TARGET_LDFLAGS}' >> $(@D)/nss/coreconf/Linux.mk
+endef
+
+LIBNSS_PRE_CONFIGURE_HOOKS += LIBNSS_FIXUP_LINUX_MK
+
 # --gc-sections triggers binutils ld segfault
 # https://sourceware.org/bugzilla/show_bug.cgi?id=21180
 ifeq ($(BR2_microblaze),y)
@@ -33,7 +41,6 @@ LIBNSS_BUILD_VARS = \
 	MOZILLA_CLIENT=1 \
 	NSPR_INCLUDE_DIR=$(STAGING_DIR)/usr/include/nspr \
 	NSPR_LIB_DIR=$(STAGING_DIR)/usr/lib \
-	BUILD_OPT=1 \
 	NS_USE_GCC=1 \
 	NSS_DISABLE_GTESTS=1 \
 	NSS_USE_SYSTEM_SQLITE=1 \
@@ -102,7 +109,6 @@ HOST_LIBNSS_BUILD_VARS = \
 	MOZILLA_CLIENT=1 \
 	NSPR_INCLUDE_DIR=$(HOST_DIR)/include/nspr \
 	NSPR_LIB_DIR=$(HOST_DIR)/lib \
-	BUILD_OPT=1 \
 	NS_USE_GCC=1 \
 	NSS_DISABLE_GTESTS=1 \
 	NSS_USE_SYSTEM_SQLITE=1 \
-- 
2.17.1

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

* [Buildroot] [PATCH 2/2] package/libnss: re-enable package on microblaze
  2019-06-05 12:13               ` [Buildroot] [PATCH 1/2] package/libnss: use correct CFLAGS and LDFLAGS Giulio Benetti
@ 2019-06-05 12:13                 ` Giulio Benetti
  2019-06-05 12:14                   ` Giulio Benetti
  0 siblings, 1 reply; 45+ messages in thread
From: Giulio Benetti @ 2019-06-05 12:13 UTC (permalink / raw)
  To: buildroot

With Microblaze Gcc version < 8.x the build hangs due to bug 85862:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85862
To avoid this, the libnss package has a !BR2_TOOLCHAIN_HAS_GCC_BUG_85862
dependency. However, gcc bug 85862 only triggers when optimization is
enabled, so we can work around the issue by passing -O0, which is what
we do in other Buildroot packages to work around this bug.

Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
---
 package/libnss/Config.in | 4 ----
 package/libnss/libnss.mk | 8 +++++++-
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/package/libnss/Config.in b/package/libnss/Config.in
index 34ddb91dfa..599c9a6536 100644
--- a/package/libnss/Config.in
+++ b/package/libnss/Config.in
@@ -3,7 +3,6 @@ config BR2_PACKAGE_LIBNSS
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libnspr
 	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnspr
 	depends on !BR2_STATIC_LIBS
-	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862
 	select BR2_PACKAGE_LIBNSPR
 	select BR2_PACKAGE_SQLITE
 	select BR2_PACKAGE_ZLIB
@@ -19,6 +18,3 @@ config BR2_PACKAGE_LIBNSS
 comment "libnss needs a toolchain w/ threads, dynamic library"
 	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT
 	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
-
-comment "libnss needs a toolchain not affected by GCC bug 85862"
-	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_85862
diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk
index 484c79e9da..893ff80154 100644
--- a/package/libnss/libnss.mk
+++ b/package/libnss/libnss.mk
@@ -13,9 +13,15 @@ LIBNSS_DEPENDENCIES = libnspr sqlite zlib
 LIBNSS_LICENSE = MPL-2.0
 LIBNSS_LICENSE_FILES = nss/COPYING
 
+LIBNSS_CFLAGS = $(TARGET_CFLAGS)
+
+ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85862),y)
+LIBNSS_CFLAGS += -O0
+endif
+
 # Need to pass down TARGET_CFLAGS and TARGET_LDFLAGS
 define LIBNSS_FIXUP_LINUX_MK
-	echo 'OS_CFLAGS += ${TARGET_CFLAGS}' >> $(@D)/nss/coreconf/Linux.mk
+	echo 'OS_CFLAGS += ${LIBNSS_CFLAGS}' >> $(@D)/nss/coreconf/Linux.mk
 	echo 'LDFLAGS += ${TARGET_LDFLAGS}' >> $(@D)/nss/coreconf/Linux.mk
 endef
 
-- 
2.17.1

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

* [Buildroot] [PATCH 2/2] package/libnss: re-enable package on microblaze
  2019-06-05 12:13                 ` [Buildroot] [PATCH 2/2] package/libnss: re-enable package on microblaze Giulio Benetti
@ 2019-06-05 12:14                   ` Giulio Benetti
  0 siblings, 0 replies; 45+ messages in thread
From: Giulio Benetti @ 2019-06-05 12:14 UTC (permalink / raw)
  To: buildroot

Hello Thomas,

adding you in Cc

Il 05/06/2019 14:13, Giulio Benetti ha scritto:
> With Microblaze Gcc version < 8.x the build hangs due to bug 85862:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85862
> To avoid this, the libnss package has a !BR2_TOOLCHAIN_HAS_GCC_BUG_85862
> dependency. However, gcc bug 85862 only triggers when optimization is
> enabled, so we can work around the issue by passing -O0, which is what
> we do in other Buildroot packages to work around this bug.
> 
> Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>
> ---
>   package/libnss/Config.in | 4 ----
>   package/libnss/libnss.mk | 8 +++++++-
>   2 files changed, 7 insertions(+), 5 deletions(-)
> 
> diff --git a/package/libnss/Config.in b/package/libnss/Config.in
> index 34ddb91dfa..599c9a6536 100644
> --- a/package/libnss/Config.in
> +++ b/package/libnss/Config.in
> @@ -3,7 +3,6 @@ config BR2_PACKAGE_LIBNSS
>   	depends on BR2_TOOLCHAIN_HAS_THREADS # libnspr
>   	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT # libnspr
>   	depends on !BR2_STATIC_LIBS
> -	depends on !BR2_TOOLCHAIN_HAS_GCC_BUG_85862
>   	select BR2_PACKAGE_LIBNSPR
>   	select BR2_PACKAGE_SQLITE
>   	select BR2_PACKAGE_ZLIB
> @@ -19,6 +18,3 @@ config BR2_PACKAGE_LIBNSS
>   comment "libnss needs a toolchain w/ threads, dynamic library"
>   	depends on BR2_PACKAGE_LIBNSPR_ARCH_SUPPORT
>   	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
> -
> -comment "libnss needs a toolchain not affected by GCC bug 85862"
> -	depends on BR2_TOOLCHAIN_HAS_GCC_BUG_85862
> diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk
> index 484c79e9da..893ff80154 100644
> --- a/package/libnss/libnss.mk
> +++ b/package/libnss/libnss.mk
> @@ -13,9 +13,15 @@ LIBNSS_DEPENDENCIES = libnspr sqlite zlib
>   LIBNSS_LICENSE = MPL-2.0
>   LIBNSS_LICENSE_FILES = nss/COPYING
>   
> +LIBNSS_CFLAGS = $(TARGET_CFLAGS)
> +
> +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85862),y)
> +LIBNSS_CFLAGS += -O0
> +endif
> +
>   # Need to pass down TARGET_CFLAGS and TARGET_LDFLAGS
>   define LIBNSS_FIXUP_LINUX_MK
> -	echo 'OS_CFLAGS += ${TARGET_CFLAGS}' >> $(@D)/nss/coreconf/Linux.mk
> +	echo 'OS_CFLAGS += ${LIBNSS_CFLAGS}' >> $(@D)/nss/coreconf/Linux.mk
>   	echo 'LDFLAGS += ${TARGET_LDFLAGS}' >> $(@D)/nss/coreconf/Linux.mk
>   endef
>   
> 

-- 
Giulio Benetti
CTO

MICRONOVA SRL
Sede: Via A. Niedda 3 - 35010 Vigonza (PD)
Tel. 049/8931563 - Fax 049/8931346
Cod.Fiscale - P.IVA 02663420285
Capitale Sociale ? 26.000 i.v.
Iscritta al Reg. Imprese di Padova N. 02663420285
Numero R.E.A. 258642

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

* [Buildroot] [PATCH v2 2/7] package/ffmpeg: re-enable package if BUG_85180 is present
  2019-05-22 13:59           ` [Buildroot] [PATCH v2 2/7] package/ffmpeg: re-enable package if BUG_85180 is present Giulio Benetti
  2019-05-24 21:16             ` Thomas Petazzoni
@ 2019-06-06 15:00             ` Peter Korsgaard
  1 sibling, 0 replies; 45+ messages in thread
From: Peter Korsgaard @ 2019-06-06 15:00 UTC (permalink / raw)
  To: buildroot

>>>>> "Giulio" == Giulio Benetti <giulio.benetti@micronovasrl.com> writes:

 > With Microblaze Gcc version < 8.x build hangs on compiling.
 > This is due to bug 85180:
 > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85180
 > This package has been excluded from building if BUG_85180 is present.
 > Bug shows up building ffmpeg with optimization.

 > In config.mk if BR2_TOOLCHAIN_HAS_GCC_BUG_85180=y force using -O0 by:
 > - add --disable-optimizations to FFMPEG_CONF_OPTS
 > - passing -O0 to CFLAGS in FFMPEG_CONF_ENV
 > Then remove 'depends on !BR2_microblaze' from Config.in

 > Signed-off-by: Giulio Benetti <giulio.benetti@micronovasrl.com>

Committed to 2019.02.x, thanks.

-- 
Bye, Peter Korsgaard

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

end of thread, other threads:[~2019-06-06 15:00 UTC | newest]

Thread overview: 45+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-22 12:25 [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Giulio Benetti
2019-05-22 12:25 ` [Buildroot] [PATCH 1/8] toolchain: GCC bug 71124 Giulio Benetti
2019-05-22 12:25 ` [Buildroot] [PATCH 2/8] package/sqlite: fix BUG_71124 build timeout Giulio Benetti
2019-05-22 12:25 ` [Buildroot] [PATCH 3/8] package/ffmpeg: re-enable package if BUG_71124 is present Giulio Benetti
2019-05-22 12:25 ` [Buildroot] [PATCH 4/8] package/assimp: re-enable package if BR2_microblaze is enabled Giulio Benetti
2019-05-22 12:25 ` [Buildroot] [PATCH 5/8] package/libnss: re-enable package if BUG_85862 is present Giulio Benetti
2019-05-22 12:25 ` [Buildroot] [PATCH 6/8] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze Giulio Benetti
2019-05-22 12:25 ` [Buildroot] [PATCH 7/8] package/qt5webengine: re-enable building if BUG_85682=y on latest Qt5 Giulio Benetti
2019-05-22 12:25 ` [Buildroot] [PATCH 8/8] package/flashbench: remove old check if BR2_microblaze & BR2_sh2a Giulio Benetti
2019-05-22 12:31 ` [Buildroot] [PATCH 0/8] fix GCC BUG 71124 and 85862 Thomas Petazzoni
2019-05-22 12:34   ` Giulio Benetti
2019-05-22 13:02     ` Thomas Petazzoni
2019-05-22 13:15       ` Giulio Benetti
2019-05-22 13:58         ` [Buildroot] [PATCH v2 0/7] fix GCC BUG 85180 " Giulio Benetti
2019-05-22 13:59           ` [Buildroot] [PATCH v2 1/7] package/sqlite: fix BUG_85180 build timeout Giulio Benetti
2019-05-24 20:24             ` Thomas Petazzoni
     [not found]               ` <6dcdb1eb-5d48-e773-9711-1df461c542e2@micronovasrl.com>
2019-05-27  9:06                 ` Giulio Benetti
2019-05-27  9:37                   ` Thomas Petazzoni
2019-05-27  9:44                     ` Giulio Benetti
2019-05-27  9:46                       ` Thomas Petazzoni
2019-05-27 10:20                         ` Giulio Benetti
2019-05-27 18:10                           ` Giulio Benetti
2019-05-27 21:11                             ` Arnout Vandecappelle
2019-05-27 21:14                               ` Giulio Benetti
2019-05-27 21:28                                 ` Arnout Vandecappelle
2019-05-27 21:34                                   ` Giulio Benetti
2019-05-22 13:59           ` [Buildroot] [PATCH v2 2/7] package/ffmpeg: re-enable package if BUG_85180 is present Giulio Benetti
2019-05-24 21:16             ` Thomas Petazzoni
2019-06-06 15:00             ` Peter Korsgaard
2019-05-22 13:59           ` [Buildroot] [PATCH v2 3/7] package/assimp: re-enable package if BR2_microblaze is enabled Giulio Benetti
2019-05-24 21:16             ` Thomas Petazzoni
2019-05-22 13:59           ` [Buildroot] [PATCH v2 4/7] package/libnss: re-enable package if BUG_85862 is present Giulio Benetti
2019-05-24 21:15             ` Thomas Petazzoni
2019-05-27 10:10               ` Giulio Benetti
2019-06-05 12:13               ` [Buildroot] [PATCH 1/2] package/libnss: use correct CFLAGS and LDFLAGS Giulio Benetti
2019-06-05 12:13                 ` [Buildroot] [PATCH 2/2] package/libnss: re-enable package on microblaze Giulio Benetti
2019-06-05 12:14                   ` Giulio Benetti
2019-05-22 13:59           ` [Buildroot] [PATCH v2 5/7] package/ecryptfs-utils: allow building with GCC_BUG_85862 and on Microblaze Giulio Benetti
2019-05-27 17:28             ` Giulio Benetti
2019-05-27 19:13               ` Thomas Petazzoni
2019-05-27 20:34                 ` Giulio Benetti
2019-05-22 13:59           ` [Buildroot] [PATCH v2 6/7] package/qt5webengine: re-enable building if BUG_85682=y on latest Qt5 Giulio Benetti
2019-05-22 13:59           ` [Buildroot] [PATCH v2 7/7] package/flashbench: remove old check if BR2_microblaze & BR2_sh2a Giulio Benetti
2019-05-24 21:18             ` Thomas Petazzoni
2019-05-28  8:58               ` Giulio Benetti

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.