package/gpsd: fix workaround for gcc bug 68485
authorFabrice Fontaine <fontaine.fabrice@gmail.com>
Tue, 3 Aug 2021 12:07:14 +0000 (14:07 +0200)
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tue, 3 Aug 2021 21:18:45 +0000 (23:18 +0200)
Workaround for gcc bug 68485 doesn't work anymore since bump to version
3.21 in commit 5b3e72139952e0c953c8649cca55571cec5f3836 because CXXFLAGS
is appended after CFLAGS and does not contain -O0:

/tmp/instance-7/output-1/host/bin/microblazeel-linux-gcc -o rtcm2_json.os -c --sysroot=/tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot -pthread -Wall -Wcast-align -Wextra -Wimplicit-fallthrough -Wmissing-declarations -Wmissing-prototypes -Wno-missing-field-initializers -Wno-uninitialized -Wpointer-arith -Wreturn-type -Wstrict-prototypes -Wvla -O0 -Os -g0 -pthread -fPIC -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/include/dbus-1.0 -I/tmp/instance-7/output-1/host/microblazeel-buildroot-linux-uclibc/sysroot/usr/lib/dbus-1.0/include rtcm2_json.c
during RTL pass: reload
rtcm2_json.c: In function ‘json_rtcm2_read’:
rtcm2_json.c:267:1: internal compiler error: in gen_reg_rtx, at emit-rtl.c:1155
  267 | }
      | ^

It should be noted that GPSD_CXXFLAGS was added 5 years ago with commit
b4c050e9afed7a8dc302e6e1014cc4ffb508590d but was not actually used in
that commit or any later.

Fixes:
 - http://autobuild.buildroot.org/results/fab33f25b08fa218af91640fdbd8c0dcf1d07228

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Reviewed-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
package/gpsd/gpsd.mk

index 0fbb5dfa1d59c9fc740a94194593a4771dc30351..45f6d35ef85f3f24136ea2e1631f83e488316009 100644 (file)
@@ -16,6 +16,7 @@ GPSD_DEPENDENCIES = host-python3 host-scons host-pkgconf
 
 GPSD_LDFLAGS = $(TARGET_LDFLAGS)
 GPSD_CFLAGS = $(TARGET_CFLAGS)
+GPSD_CXXFLAGS = $(TARGET_CXXFLAGS)
 
 GPSD_SCONS_ENV = $(TARGET_CONFIGURE_OPTS)
 
@@ -46,6 +47,7 @@ endif
 
 ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_68485),y)
 GPSD_CFLAGS += -O0
+GPSD_CXXFLAGS += -O0
 endif
 
 # If libusb is available build it before so the package can use it
@@ -203,7 +205,8 @@ endif
 GPSD_SCONS_ENV += \
        LDFLAGS="$(GPSD_LDFLAGS)" \
        CFLAGS="$(GPSD_CFLAGS)" \
-       CCFLAGS="$(GPSD_CFLAGS)"
+       CCFLAGS="$(GPSD_CFLAGS)" \
+       CXXFLAGS="$(GPSD_CXXFLAGS)"
 
 define GPSD_BUILD_CMDS
        (cd $(@D); \