* [bug#28226] Build go with gccgo
@ 2017-08-24 20:51 Efraim Flashner
2017-09-12 9:59 ` Catonano
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Efraim Flashner @ 2017-08-24 20:51 UTC (permalink / raw)
To: 28226
[-- Attachment #1.1: Type: text/plain, Size: 493 bytes --]
I need some help testing this on x86_64, I did all the building and
testing on aarch64. It turns out there's a known issues in the cgo
implementation that causes the test suite to fail on aarch64. With this
patch set I was able to build gccgo@7 -> go@1.7 -> lfam's syncthing.
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #1.2: 0001-gnu-custom-gcc-Add-flag-to-optionally-not-remove-con.patch --]
[-- Type: text/plain, Size: 1926 bytes --]
From 83bfb82f4da6fb23d3b64c7e23f9db001c85b283 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Mon, 7 Aug 2017 22:56:57 +0300
Subject: [PATCH 1/3] gnu: custom-gcc: Add flag to optionally not remove
conflicting files.
* gnu/packages/gcc.scm (custom-gcc): Add flag to optionally keep the
files that would conflict with gcc.
---
gnu/packages/gcc.scm | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index bb8570bec..a22bb3c25 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -485,7 +485,8 @@ using compilers other than GCC."
(define* (custom-gcc gcc name languages
#:optional
(search-paths (package-native-search-paths gcc))
- #:key (separate-lib-output? #t))
+ #:key (separate-lib-output? #t)
+ (remove-conflicting-files? #t))
"Return a custom version of GCC that supports LANGUAGES. Use SEARCH-PATHS
as the 'native-search-paths' field."
(package (inherit gcc)
@@ -508,12 +509,14 @@ as the 'native-search-paths' field."
,flags)))
((#:phases phases)
`(modify-phases ,phases
- (add-after 'install 'remove-broken-or-conflicting-files
+ ,@(if remove-conflicting-files?
+ `((add-after 'install 'remove-broken-or-conflicting-files
(lambda* (#:key outputs #:allow-other-keys)
(for-each delete-file
(find-files (string-append (assoc-ref outputs "out") "/bin")
".*(c\\+\\+|cpp|g\\+\\+|gcov|gcc.*)"))
- #t))))))))
+ #t)))
+ '())))))))
(define %generic-search-paths
;; This is the language-neutral search path for GCC. Entries in $CPATH are
--
2.14.0
[-- Attachment #1.3: 0002-gnu-Add-gccgo-7.patch --]
[-- Type: text/plain, Size: 3756 bytes --]
From fbdf746826b308a9d23644fbb5bea93dee5e85e9 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Mon, 7 Aug 2017 22:59:22 +0300
Subject: [PATCH 2/3] gnu: Add gccgo@7.
* gnu/packages/gcc.scm (gccgo@7): New variable.
* gnu/packages/gcc.scm (gcc@7)[source]: Add patch.
* gnu/packages/patches/gcc-7.1-go-runpath.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
---
gnu/local.mk | 1 +
gnu/packages/gcc.scm | 15 ++++++++++++++-
gnu/packages/patches/gcc-7.1-go-runpath.patch | 10 ++++++++++
3 files changed, 25 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/gcc-7.1-go-runpath.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 8c00b0020..ee9429770 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -623,6 +623,7 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-5-source-date-epoch-2.patch \
%D%/packages/patches/gcc-6-arm-none-eabi-multilib.patch \
%D%/packages/patches/gcc-6-cross-environment-variables.patch \
+ %D%/packages/patches/gcc-7.1-go-runpath.patch \
%D%/packages/patches/gcr-disable-failing-tests.patch \
%D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch \
%D%/packages/patches/gdk-pixbuf-list-dir.patch \
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index a22bb3c25..9cf347f76 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -414,7 +414,8 @@ Go. It also includes runtime support libraries for these languages.")
(base32
"05xwps0ci7wgxh50askpa2r9p8518qxdgh6ad7pnyk7n6p13d0ca"))
(patches (search-patches "gcc-strmov-store-file-names.patch"
- "gcc-5.0-libvtv-runpath.patch"))))))
+ "gcc-5.0-libvtv-runpath.patch"
+ "gcc-7.1-go-runpath.patch"))))))
;; Note: When changing the default gcc version, update
;; the gcc-toolchain-* definitions and the gfortran definition
@@ -565,6 +566,18 @@ as the 'native-search-paths' field."
;; a cyclic dependency. <http://debbugs.gnu.org/18101>
#:separate-lib-output? #f))
+(define-public gccgo-7
+ (custom-gcc gcc-7 "gccgo" '("go")
+ %generic-search-paths
+ ;; Suppress the separate "lib" output, because otherwise the
+ ;; "lib" and "out" outputs would refer to each other, creating
+ ;; a cyclic dependency. <http://debbugs.gnu.org/18101>
+ #:separate-lib-output? #f
+ ;; When building go, it is expected to use the same GCC output
+ ;; for gcc and for gccgo, so we compile go with the gcc from
+ ;; this build.
+ #:remove-conflicting-files? #f))
+
(define-public gcc-objc-4.8
(custom-gcc gcc-4.8 "gcc-objc" '("objc")
(list (search-path-specification
diff --git a/gnu/packages/patches/gcc-7.1-go-runpath.patch b/gnu/packages/patches/gcc-7.1-go-runpath.patch
new file mode 100644
index 000000000..d7d91301e
--- /dev/null
+++ b/gnu/packages/patches/gcc-7.1-go-runpath.patch
@@ -0,0 +1,10 @@
+--- gcc-7.1.0/gotools/Makefile.in
++++ gcc-7.1.0/gotools/Makefile.in
+@@ -258,6 +258,6 @@
+ # Use the compiler we just built.
+ @NATIVE_TRUE@GOCOMPILER = $(GOC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET)
+ GOCOMPILE = $(GOCOMPILER) $(GOCFLAGS)
+-AM_LDFLAGS = -L $(libgodir) -L $(libgodir)/.libs
++AM_LDFLAGS = -Wl,-rpath=$(libdir) -L $(libgodir) -L $(libgodir)/.libs
+ GOLINK = $(GOCOMPILER) $(GOCFLAGS) $(AM_GOCFLAGS) $(LDFLAGS) $(AM_LDFLAGS) -o $@
+ cmdsrcdir = $(srcdir)/../libgo/go/cmd
--
2.14.0
[-- Attachment #1.4: 0003-gnu-go-Build-with-gccgo-7.patch --]
[-- Type: text/plain, Size: 2055 bytes --]
From 5b3e3ed9e8fddb36b7d884ab5d2dd6f0a4ad5220 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Mon, 7 Aug 2017 23:09:29 +0300
Subject: [PATCH 3/3] gnu: go: Build with gccgo@7.
* gnu/packages/golang.scm (go@1.8)[inputs]: Remove gcc-lib.
[native-inputs]: Remove go@1.4, add gccgo@7.
---
gnu/packages/golang.scm | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 70cae6d87..3dee1d72b 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
;;; Copyright © 2016 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
@@ -219,7 +219,7 @@ sequential processes (CSP) concurrent programming features added.")
(replace 'prebuild
;; TODO: Most of this could be factorized with Go 1.4.
(lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib"))
+ (let* ((gcclib (string-append (assoc-ref inputs "go") "/lib"))
(ld (string-append (assoc-ref inputs "libc") "/lib"))
(loader (car (find-files ld "^ld-linux.+")))
(net-base (assoc-ref inputs "net-base"))
@@ -362,8 +362,11 @@ sequential processes (CSP) concurrent programming features added.")
"LICENSE" "VERSION" "CONTRIBUTING.md" "robots.txt"))
(copy-recursively "../" output))))))))
+ (inputs
+ `(("tzdata" ,tzdata)
+ ("pcre" ,pcre)))
(native-inputs
- `(("go" ,go-1.4)
+ `(("go" ,gccgo-7)
,@(package-native-inputs go-1.4)))))
(define-public go go-1.8)
--
2.14.0
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [bug#28226] Build go with gccgo
2017-08-24 20:51 [bug#28226] Build go with gccgo Efraim Flashner
@ 2017-09-12 9:59 ` Catonano
2017-09-12 10:44 ` Efraim Flashner
2020-06-05 23:58 ` [bug#28226] go with gccgo still relevant? Jack Hill
2021-08-05 23:05 ` bug#28226: Build go with gccgo Sarah Morgensen
2 siblings, 1 reply; 7+ messages in thread
From: Catonano @ 2017-09-12 9:59 UTC (permalink / raw)
To: Efraim Flashner; +Cc: 28226
[-- Attachment #1: Type: text/plain, Size: 1371 bytes --]
2017-08-24 22:51 GMT+02:00 Efraim Flashner <efraim@flashner.co.il>:
> I need some help testing this on x86_64, I did all the building and
> testing on aarch64. It turns out there's a known issues in the cgo
> implementation that causes the test suite to fail on aarch64. With this
> patch set I was able to build gccgo@7 -> go@1.7 -> lfam's syncthing.
>
I can't apply these patches
~/projects/guix$ git am
0001-gnu-custom-gcc-Add-flag-to-optionally-not-remove-con.patch
Applying: gnu: custom-gcc: Add flag to optionally not remove conflicting
files.
~/projects/guix$ git am 0002-gnu-Add-gccgo-7.patch
Applying: gnu: Add gccgo@7.
error: patch non riuscita: gnu/packages/gcc.scm:414
error: gnu/packages/gcc.scm: la patch non può essere applicata
Patch failed at 0001 gnu: Add gccgo@7.
The copy of the patch that failed is found in: .git/rebase-apply/patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
I don't know what these patches do, I was just trying to apply them in
order (1, 2, 3)
Should I follow a different order ?
I would have attempted to build this thing
I git pulled on master right now ( 12 september) and created a branch for
thhese patches and git am'ed there
[-- Attachment #2: Type: text/html, Size: 1867 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* [bug#28226] Build go with gccgo
2017-09-12 9:59 ` Catonano
@ 2017-09-12 10:44 ` Efraim Flashner
2017-09-12 12:54 ` Catonano
0 siblings, 1 reply; 7+ messages in thread
From: Efraim Flashner @ 2017-09-12 10:44 UTC (permalink / raw)
To: Catonano; +Cc: 28226
[-- Attachment #1.1: Type: text/plain, Size: 1784 bytes --]
On Tue, Sep 12, 2017 at 11:59:31AM +0200, Catonano wrote:
> 2017-08-24 22:51 GMT+02:00 Efraim Flashner <efraim@flashner.co.il>:
>
> > I need some help testing this on x86_64, I did all the building and
> > testing on aarch64. It turns out there's a known issues in the cgo
> > implementation that causes the test suite to fail on aarch64. With this
> > patch set I was able to build gccgo@7 -> go@1.7 -> lfam's syncthing.
> >
>
> I can't apply these patches
>
> ~/projects/guix$ git am
> 0001-gnu-custom-gcc-Add-flag-to-optionally-not-remove-con.patch
> Applying: gnu: custom-gcc: Add flag to optionally not remove conflicting
> files.
>
> ~/projects/guix$ git am 0002-gnu-Add-gccgo-7.patch
> Applying: gnu: Add gccgo@7.
> error: patch non riuscita: gnu/packages/gcc.scm:414
> error: gnu/packages/gcc.scm: la patch non può essere applicata
> Patch failed at 0001 gnu: Add gccgo@7.
> The copy of the patch that failed is found in: .git/rebase-apply/patch
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> To restore the original branch and stop patching, run "git am --abort".
>
>
> I don't know what these patches do, I was just trying to apply them in
> order (1, 2, 3)
>
> Should I follow a different order ?
>
> I would have attempted to build this thing
>
> I git pulled on master right now ( 12 september) and created a branch for
> thhese patches and git am'ed there
I've reattached the patches, seems they don't apply cleanly anymore
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #1.2: 0001-gnu-custom-gcc-Add-flag-to-optionally-not-remove-con.patch --]
[-- Type: text/plain, Size: 1928 bytes --]
From 649980fb84726ba758f68e40b836974148154428 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Mon, 7 Aug 2017 22:56:57 +0300
Subject: [PATCH 1/3] gnu: custom-gcc: Add flag to optionally not remove
conflicting files.
* gnu/packages/gcc.scm (custom-gcc): Add flag to optionally keep the
files that would conflict with gcc.
---
gnu/packages/gcc.scm | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index da4d66ce36..14a49b9aac 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -486,7 +486,8 @@ using compilers other than GCC."
(define* (custom-gcc gcc name languages
#:optional
(search-paths (package-native-search-paths gcc))
- #:key (separate-lib-output? #t))
+ #:key (separate-lib-output? #t)
+ (remove-conflicting-files? #t))
"Return a custom version of GCC that supports LANGUAGES. Use SEARCH-PATHS
as the 'native-search-paths' field."
(package (inherit gcc)
@@ -509,12 +510,14 @@ as the 'native-search-paths' field."
,flags)))
((#:phases phases)
`(modify-phases ,phases
- (add-after 'install 'remove-broken-or-conflicting-files
+ ,@(if remove-conflicting-files?
+ `((add-after 'install 'remove-broken-or-conflicting-files
(lambda* (#:key outputs #:allow-other-keys)
(for-each delete-file
(find-files (string-append (assoc-ref outputs "out") "/bin")
".*(c\\+\\+|cpp|g\\+\\+|gcov|gcc.*)"))
- #t))))))))
+ #t)))
+ '())))))))
(define %generic-search-paths
;; This is the language-neutral search path for GCC. Entries in $CPATH are
--
2.14.1
[-- Attachment #1.3: 0002-gnu-Add-gccgo-7.patch --]
[-- Type: text/plain, Size: 3782 bytes --]
From 6917ddf5d319df740b63e5a2f50c7d0da0bbfea9 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Mon, 7 Aug 2017 22:59:22 +0300
Subject: [PATCH 2/3] gnu: Add gccgo@7.
* gnu/packages/gcc.scm (gccgo@7): New variable.
* gnu/packages/gcc.scm (gcc@7)[source]: Add patch.
* gnu/packages/patches/gcc-7.1-go-runpath.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
---
gnu/local.mk | 1 +
gnu/packages/gcc.scm | 15 ++++++++++++++-
gnu/packages/patches/gcc-7.1-go-runpath.patch | 13 +++++++++++++
3 files changed, 28 insertions(+), 1 deletion(-)
create mode 100644 gnu/packages/patches/gcc-7.1-go-runpath.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 643a88db81..9b61b16578 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -628,6 +628,7 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-5-source-date-epoch-2.patch \
%D%/packages/patches/gcc-6-arm-none-eabi-multilib.patch \
%D%/packages/patches/gcc-6-cross-environment-variables.patch \
+ %D%/packages/patches/gcc-7.1-go-runpath.patch \
%D%/packages/patches/gcr-disable-failing-tests.patch \
%D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch \
%D%/packages/patches/gdk-pixbuf-list-dir.patch \
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index 14a49b9aac..aca2e19696 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -415,7 +415,8 @@ Go. It also includes runtime support libraries for these languages.")
(base32
"16j7i0888j2f1yp9l0nhji6cq65dy6y4nwy8868a8njbzzwavxqw"))
(patches (search-patches "gcc-strmov-store-file-names.patch"
- "gcc-5.0-libvtv-runpath.patch"))))))
+ "gcc-5.0-libvtv-runpath.patch"
+ "gcc-7.1-go-runpath.patch"))))))
;; Note: When changing the default gcc version, update
;; the gcc-toolchain-* definitions and the gfortran definition
@@ -566,6 +567,18 @@ as the 'native-search-paths' field."
;; a cyclic dependency. <http://debbugs.gnu.org/18101>
#:separate-lib-output? #f))
+(define-public gccgo-7
+ (custom-gcc gcc-7 "gccgo" '("go")
+ %generic-search-paths
+ ;; Suppress the separate "lib" output, because otherwise the
+ ;; "lib" and "out" outputs would refer to each other, creating
+ ;; a cyclic dependency. <http://debbugs.gnu.org/18101>
+ #:separate-lib-output? #f
+ ;; When building go, it is expected to use the same GCC output
+ ;; for gcc and for gccgo, so we compile go with the gcc from
+ ;; this build.
+ #:remove-conflicting-files? #f))
+
(define-public gcc-objc-4.8
(custom-gcc gcc-4.8 "gcc-objc" '("objc")
(list (search-path-specification
diff --git a/gnu/packages/patches/gcc-7.1-go-runpath.patch b/gnu/packages/patches/gcc-7.1-go-runpath.patch
new file mode 100644
index 0000000000..e1ff2fc034
--- /dev/null
+++ b/gnu/packages/patches/gcc-7.1-go-runpath.patch
@@ -0,0 +1,13 @@
+--- gcc-7.1.0/gotools/Makefile.in
++++ gcc-7.1.0/gotools/Makefile.in
+@@ -258,6 +258,6 @@
+ # Use the compiler we just built.
+ @NATIVE_TRUE@GOCOMPILER = $(GOC_FOR_TARGET) $(XGCC_FLAGS_FOR_TARGET)
+ GOCOMPILE = $(GOCOMPILER) $(GOCFLAGS)
+-AM_LDFLAGS = -L $(libgodir) -L $(libgodir)/.libs
++AM_LDFLAGS = -Wl,-rpath=$(libdir) -L $(libgodir) -L $(libgodir)/.libs
+ GOLINK = $(GOCOMPILER) $(GOCFLAGS) $(AM_GOCFLAGS) $(LDFLAGS) $(AM_LDFLAGS) -o $@
+ cmdsrcdir = $(srcdir)/../libgo/go/cmd
+--
+2.14.0
+
--
2.14.1
[-- Attachment #1.4: 0003-gnu-go-Build-with-gccgo-7.patch --]
[-- Type: text/plain, Size: 2057 bytes --]
From 5ae1423b545a1284a840ee883e2781bb92b49741 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efraim@flashner.co.il>
Date: Mon, 7 Aug 2017 23:09:29 +0300
Subject: [PATCH 3/3] gnu: go: Build with gccgo@7.
* gnu/packages/golang.scm (go@1.8)[inputs]: Remove gcc-lib.
[native-inputs]: Remove go@1.4, add gccgo@7.
---
gnu/packages/golang.scm | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 9f3ccc8f69..be5f2f8e37 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
;;; Copyright © 2016 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
@@ -220,7 +220,7 @@ sequential processes (CSP) concurrent programming features added.")
(replace 'prebuild
;; TODO: Most of this could be factorized with Go 1.4.
(lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib"))
+ (let* ((gcclib (string-append (assoc-ref inputs "go") "/lib"))
(ld (string-append (assoc-ref inputs "libc") "/lib"))
(loader (car (find-files ld "^ld-linux.+")))
(net-base (assoc-ref inputs "net-base"))
@@ -370,8 +370,11 @@ sequential processes (CSP) concurrent programming features added.")
"LICENSE" "VERSION" "CONTRIBUTING.md" "robots.txt"))
(copy-recursively "../" output))))))))
+ (inputs
+ `(("tzdata" ,tzdata)
+ ("pcre" ,pcre)))
(native-inputs
- `(("go" ,go-1.4)
+ `(("go" ,gccgo-7)
,@(package-native-inputs go-1.4)))))
(define-public go go-1.9)
--
2.14.1
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [bug#28226] Build go with gccgo
2017-09-12 10:44 ` Efraim Flashner
@ 2017-09-12 12:54 ` Catonano
0 siblings, 0 replies; 7+ messages in thread
From: Catonano @ 2017-09-12 12:54 UTC (permalink / raw)
To: Efraim Flashner; +Cc: 28226
[-- Attachment #1: Type: text/plain, Size: 5439 bytes --]
2017-09-12 12:44 GMT+02:00 Efraim Flashner <efraim@flashner.co.il>:
> On Tue, Sep 12, 2017 at 11:59:31AM +0200, Catonano wrote:
> > 2017-08-24 22:51 GMT+02:00 Efraim Flashner <efraim@flashner.co.il>:
> >
> > > I need some help testing this on x86_64, I did all the building and
> > > testing on aarch64. It turns out there's a known issues in the cgo
> > > implementation that causes the test suite to fail on aarch64. With this
> > > patch set I was able to build gccgo@7 -> go@1.7 -> lfam's syncthing.
> > >
> >
> > I can't apply these patches
> >
> > ~/projects/guix$ git am
> > 0001-gnu-custom-gcc-Add-flag-to-optionally-not-remove-con.patch
> > Applying: gnu: custom-gcc: Add flag to optionally not remove conflicting
> > files.
> >
> > ~/projects/guix$ git am 0002-gnu-Add-gccgo-7.patch
> > Applying: gnu: Add gccgo@7.
> > error: patch non riuscita: gnu/packages/gcc.scm:414
> > error: gnu/packages/gcc.scm: la patch non può essere applicata
> > Patch failed at 0001 gnu: Add gccgo@7.
> > The copy of the patch that failed is found in: .git/rebase-apply/patch
> > When you have resolved this problem, run "git am --continue".
> > If you prefer to skip this patch, run "git am --skip" instead.
> > To restore the original branch and stop patching, run "git am --abort".
> >
> >
> > I don't know what these patches do, I was just trying to apply them in
> > order (1, 2, 3)
> >
> > Should I follow a different order ?
> >
> > I would have attempted to build this thing
> >
> > I git pulled on master right now ( 12 september) and created a branch for
> > thhese patches and git am'ed there
>
> I've reattached the patches, seems they don't apply cleanly anymore
>
>
This is the last part of the build log
Do you need the whole log ?
[...]
##### Testing without libgcc.
ok crypto/x509 0.662s
ok net 0.005s
ok os/user 0.007s
##### internal linking of -buildmode=pie
ok reflect 0.680s
##### sync -cpu=10
ok sync 0.325s
##### ../misc/cgo/stdio
##### ../misc/cgo/life
##### ../misc/cgo/test
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/test 6.050s
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/test 6.250s
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/test 5.827s
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/testtls 0.002s
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/testtls 0.009s
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/testtls 0.001s
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/nocgo 0.002s
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/nocgo 0.002s
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/nocgo 0.002s
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/test 4.177s
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/testtls 0.016s
PASS
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/nocgo 0.010s
##### Testing race detector
ok runtime/race 4.613s
ok flag 1.031s
ok os 1.051s
ok os/exec 1.028s [no tests to run]
PASS
scatter = 0x610b10
hello from C
sqrt is: 0
ok _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/test 4.708s
ok flag 1.031s
ok os/exec 1.012s [no tests to run]
##### ../misc/cgo/testgodefs
##### ../misc/cgo/testso
##### ../misc/cgo/testsovar
##### ../misc/cgo/testcarchive
PASS
##### ../misc/cgo/testcshared
ok
##### ../misc/cgo/testshared
--- FAIL: TestGoPathShlibGccgo (0.13s)
shared_test.go:65: executing go install
-installsuffix=5577006791947779410 -compiler=gccgo -buildmode=shared
-linkshared depBase failed exit status 2:
# /tmp/guix-build-go-1.9.drv-0/go-build895598556/libdepBase.so
gccgo: error: unrecognized command line option
‘-rpath=/gnu/store/41938jrv1xlhawdskyhz45vvbzaic60v-gccgo-7.2.0/lib’
--- FAIL: TestTwoGopathShlibsGccgo (0.08s)
shared_test.go:65: executing go install
-installsuffix=5577006791947779410 -compiler=gccgo -buildmode=shared
-linkshared depBase failed exit status 2:
# /tmp/guix-build-go-1.9.drv-0/go-build013538701/libdepBase.so
gccgo: error: unrecognized command line option
‘-rpath=/gnu/store/41938jrv1xlhawdskyhz45vvbzaic60v-gccgo-7.2.0/lib’
FAIL
exit status 1
FAIL _/tmp/guix-build-go-1.9.drv-0/go/misc/cgo/testshared 19.432s
2017/09/12 12:45:19 Failed: exit status 1
##### ../misc/cgo/testplugin
PASS
something
##### ../misc/cgo/testasan
##### ../misc/cgo/testsanitizers
./test.bash: line 18: sysctl: command not found
skipping msan tests: gcc -fsanitize=memory not supported
##### ../misc/cgo/errors
skipped due to earlier error
##### ../misc/cgo/testsigfwd
skipped due to earlier error
##### ../test/bench/go1
skipped due to earlier error
##### ../test
skipped due to earlier error
##### API check
skipped due to earlier error
2017/09/12 12:45:37 FAILED
phase `build' failed after 382.6 seconds
builder for `/gnu/store/4k6ag9n2r2239r9cjjkyq76pa9n0bw94-go-1.9.drv' failed
with exit code 1
@ build-failed /gnu/store/4k6ag9n2r2239r9cjjkyq76pa9n0bw94-go-1.9.drv - 1
builder for `/gnu/store/4k6ag9n2r2239r9cjjkyq76pa9n0bw94-go-1.9.drv' failed
with exit code 1
guix build: error: build failed: build of
`/gnu/store/4k6ag9n2r2239r9cjjkyq76pa9n0bw94-go-1.9.drv' failed
catonano@xps ~/projects/guix [env]$
[-- Attachment #2: Type: text/html, Size: 6645 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* [bug#28226] go with gccgo still relevant?
2017-08-24 20:51 [bug#28226] Build go with gccgo Efraim Flashner
2017-09-12 9:59 ` Catonano
@ 2020-06-05 23:58 ` Jack Hill
2020-06-07 7:34 ` Efraim Flashner
2021-08-05 23:05 ` bug#28226: Build go with gccgo Sarah Morgensen
2 siblings, 1 reply; 7+ messages in thread
From: Jack Hill @ 2020-06-05 23:58 UTC (permalink / raw)
To: Efraim Flashner; +Cc: 28226
Efraim,
I cam across this old bug. Do you think it is still relevant?
Best,
Jack
^ permalink raw reply [flat|nested] 7+ messages in thread
* [bug#28226] go with gccgo still relevant?
2020-06-05 23:58 ` [bug#28226] go with gccgo still relevant? Jack Hill
@ 2020-06-07 7:34 ` Efraim Flashner
0 siblings, 0 replies; 7+ messages in thread
From: Efraim Flashner @ 2020-06-07 7:34 UTC (permalink / raw)
To: Jack Hill; +Cc: 28226
[-- Attachment #1: Type: text/plain, Size: 545 bytes --]
On Fri, Jun 05, 2020 at 07:58:15PM -0400, Jack Hill wrote:
> Efraim,
>
> I cam across this old bug. Do you think it is still relevant?
>
> Best,
> Jack
Yes and no. The patches I provided didn't work as expected, but we do
want to have an alternate go implementation for architectures which
aren't supported by go-1.4.
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#28226: Build go with gccgo
2017-08-24 20:51 [bug#28226] Build go with gccgo Efraim Flashner
2017-09-12 9:59 ` Catonano
2020-06-05 23:58 ` [bug#28226] go with gccgo still relevant? Jack Hill
@ 2021-08-05 23:05 ` Sarah Morgensen
2 siblings, 0 replies; 7+ messages in thread
From: Sarah Morgensen @ 2021-08-05 23:05 UTC (permalink / raw)
To: bug#28226
Implemented by #49221; closing.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-08-05 23:06 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-24 20:51 [bug#28226] Build go with gccgo Efraim Flashner
2017-09-12 9:59 ` Catonano
2017-09-12 10:44 ` Efraim Flashner
2017-09-12 12:54 ` Catonano
2020-06-05 23:58 ` [bug#28226] go with gccgo still relevant? Jack Hill
2020-06-07 7:34 ` Efraim Flashner
2021-08-05 23:05 ` bug#28226: Build go with gccgo Sarah Morgensen
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).