From 26bc56883760995d3cb2d718fc68eec686920deb Mon Sep 17 00:00:00 2001
From: Petr Sumbera <petr.sumbera@oracle.com>
Date: Wed, 13 Nov 2019 18:05:21 +0000
Subject: gccgo should use GNU ar

Fix following error message:

$ /usr/gcc/9/bin/go build main.go
ar: bad option: -D
usage:
    ar -d [-SvV] archive [file...]
    ar -m [-SvV] [-{a|b|i} posname] archive [file...]
    ar -p [-sSvV] archive [file ...]
    ar -q [-cSvV] archive [file...]
    ar -r [-cSuvV] [-{a|b|i} posname] archive [file...]
    ar -t [-sSvV] archive [file...]
    ar -x [-CsSTvV] archive [file...]
    ar [-sSvV] archive

The error is harmless, no functionality issue, GCCGO runs Solaris "ar" which
doesn't know -D option, after failure, GCCGO runs it again without -D.
---
 libgo/go/cmd/go/internal/work/gccgo.go              | 2 +-
 libgo/go/go/internal/gccgoimporter/importer_test.go | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

--- gcc-releases-gcc-14.3.0/libgo/go/cmd/go/internal/work/gccgo.go.orig
+++ gcc-releases-gcc-14.3.0/libgo/go/cmd/go/internal/work/gccgo.go
@@ -46,7 +46,7 @@
 }
 
 func (gccgoToolchain) ar() []string {
-	return envList("AR", "ar")
+	return envList("AR", "/usr/bin/gar")
 }
 
 func checkGccgoBin() {
--- gcc-releases-gcc-14.3.0/libgo/go/go/internal/gccgoimporter/importer_test.go.orig
+++ gcc-releases-gcc-14.3.0/libgo/go/go/internal/gccgoimporter/importer_test.go
@@ -180,7 +180,7 @@
 
 		runImporterTest(t, imp, initmap, &test)
 
-		cmd = exec.Command("ar", "cr", afile, ofile)
+		cmd = exec.Command("/usr/bin/gar", "cr", afile, ofile)
 		out, err = cmd.CombinedOutput()
 		if err != nil {
 			t.Logf("%s", out)