浏览代码

package/go-bootstrap-stage1: fix builds on GCC 15

GCC 15 defaults to -std=gnu23, which adds the bool keyword, causing
conflicts with stage1:

https://gcc.gnu.org/gcc-15/porting_to.html#c23-new-keywords

As a workaround, force the build to use -std=gnu99 mode.

Signed-off-by: Felicitas Pojtinger <felicitas@pojtinger.com>
[Peter: extend commit message]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit a2356a9e0a1a6d24c11bb74dd8ca3136c5c1c6cb)
Signed-off-by: Thomas Perale <thomas.perale@mind.be>
Felicitas Pojtinger 2 月之前
父节点
当前提交
23a6786f05
共有 1 个文件被更改,包括 2 次插入1 次删除
  1. 2 1
      package/go/go-bootstrap-stage1/go-bootstrap-stage1.mk

+ 2 - 1
package/go/go-bootstrap-stage1/go-bootstrap-stage1.mk

@@ -17,12 +17,13 @@ HOST_GO_BOOTSTRAP_STAGE1_ROOT = $(HOST_DIR)/lib/go-$(GO_BOOTSTRAP_STAGE1_VERSION
 
 # The go build system is not compatible with ccache, so use
 # HOSTCC_NOCCACHE. See https://github.com/golang/go/issues/11685.
+# CFLAGS and GO_CCFLAGS have no effect, so overwrite CC directly.
 HOST_GO_BOOTSTRAP_STAGE1_MAKE_ENV = \
 	GOOS=linux \
 	GOROOT_FINAL="$(HOST_GO_BOOTSTRAP_STAGE1_ROOT)" \
 	GOROOT="$(@D)" \
 	GOBIN="$(@D)/bin" \
-	CC=$(HOSTCC_NOCCACHE) \
+	CC="$(HOSTCC_NOCCACHE) -std=gnu99" \
 	CGO_ENABLED=0
 
 define HOST_GO_BOOTSTRAP_STAGE1_BUILD_CMDS