public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
@ 2020-08-07 13:36 ` clhamilto at gmail dot com
2020-08-07 16:08 ` ian at airs dot com
` (11 subsequent siblings)
12 siblings, 0 replies; 13+ messages in thread
From: clhamilto at gmail dot com @ 2020-08-07 13:36 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #26 from Curtis Hamilton <clhamilto at gmail dot com> ---
Ian,
I've made progress with building the frontend but I have an issue with
implementing Syscall9 needed by libgo/go/os/wait_wait6.go. I tried adding the
file "syscall_freebsd_ppc64.go" containing the following:
func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2
uintptr, err Errno)
that gets me past the initial error.
But now I get the below error when linking gotools.
gmake[6]: Leaving directory
'/usr/ports/lang/gcc10/work/.build/powerpc64-portbld-freebsd12.1/libgo'
gmake[5]: Leaving directory
'/usr/ports/lang/gcc10/work/.build/powerpc64-portbld-freebsd12.1/libgo'
gmake[4]: Leaving directory
'/usr/ports/lang/gcc10/work/.build/powerpc64-portbld-freebsd12.1/libgo'
gmake[4]: Entering directory '/usr/ports/lang/gcc10/work/.build/gotools'
/usr/ports/lang/gcc10/work/.build/./gcc/gccgo
-B/usr/ports/lang/gcc10/work/.build/./gcc/
-B/usr/local/powerpc64-portbld-freebsd12.1/bin/
-B/usr/local/powerpc64-portbld-freebsd12.1/lib/ -isystem
/usr/local/powerpc64-portbld-freebsd12.1/include -isystem
/usr/local/powerpc64-portbld-freebsd12.1/sys-include -g -O2 -pipe
-DLIBICONV_PLUG -fno-strict-aliasing -I ../powerpc64-portbld-freebsd12.1/libgo
-static-libstdc++ -static-libgcc -L ../powerpc64-portbld-freebsd12.1/libgo -L
../powerpc64-portbld-freebsd12.1/libgo/.libs -o go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/go/alldocs.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/go/go11.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/go/main.go
../powerpc64-portbld-freebsd12.1/libgo/libgotool.a
/usr/ports/lang/gcc10/work/.build/./gcc/gccgo
-B/usr/ports/lang/gcc10/work/.build/./gcc/
-B/usr/local/powerpc64-portbld-freebsd12.1/bin/
-B/usr/local/powerpc64-portbld-freebsd12.1/lib/ -isystem
/usr/local/powerpc64-portbld-freebsd12.1/include -isystem
/usr/local/powerpc64-portbld-freebsd12.1/sys-include -g -O2 -pipe
-DLIBICONV_PLUG -fno-strict-aliasing -I ../powerpc64-portbld-freebsd12.1/libgo
-static-libstdc++ -static-libgcc -L ../powerpc64-portbld-freebsd12.1/libgo -L
../powerpc64-portbld-freebsd12.1/libgo/.libs -o gofmt
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/gofmt/doc.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/gofmt/gofmt.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/gofmt/internal.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/gofmt/rewrite.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/gofmt/simplify.go
../powerpc64-portbld-freebsd12.1/libgo/libgotool.a
/usr/ports/lang/gcc10/work/.build/./gcc/gccgo
-B/usr/ports/lang/gcc10/work/.build/./gcc/
-B/usr/local/powerpc64-portbld-freebsd12.1/bin/
-B/usr/local/powerpc64-portbld-freebsd12.1/lib/ -isystem
/usr/local/powerpc64-portbld-freebsd12.1/include -isystem
/usr/local/powerpc64-portbld-freebsd12.1/sys-include -g -O2 -pipe
-DLIBICONV_PLUG -fno-strict-aliasing -I ../powerpc64-portbld-freebsd12.1/libgo
-static-libstdc++ -static-libgcc -L ../powerpc64-portbld-freebsd12.1/libgo -L
../powerpc64-portbld-freebsd12.1/libgo/.libs -o vet
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/vet/doc.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/vet/main.go
../powerpc64-portbld-freebsd12.1/libgo/libgotool.a
/usr/ports/lang/gcc10/work/.build/./gcc/gccgo
-B/usr/ports/lang/gcc10/work/.build/./gcc/
-B/usr/local/powerpc64-portbld-freebsd12.1/bin/
-B/usr/local/powerpc64-portbld-freebsd12.1/lib/ -isystem
/usr/local/powerpc64-portbld-freebsd12.1/include -isystem
/usr/local/powerpc64-portbld-freebsd12.1/sys-include -g -O2 -pipe
-DLIBICONV_PLUG -fno-strict-aliasing -I ../powerpc64-portbld-freebsd12.1/libgo
-static-libstdc++ -static-libgcc -L ../powerpc64-portbld-freebsd12.1/libgo -L
../powerpc64-portbld-freebsd12.1/libgo/.libs -o buildid
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/buildid/buildid.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/buildid/doc.go
../powerpc64-portbld-freebsd12.1/libgo/libgotool.a
/usr/ports/lang/gcc10/work/.build/./gcc/gccgo
-B/usr/ports/lang/gcc10/work/.build/./gcc/
-B/usr/local/powerpc64-portbld-freebsd12.1/bin/
-B/usr/local/powerpc64-portbld-freebsd12.1/lib/ -isystem
/usr/local/powerpc64-portbld-freebsd12.1/include -isystem
/usr/local/powerpc64-portbld-freebsd12.1/sys-include -g -O2 -pipe
-DLIBICONV_PLUG -fno-strict-aliasing -I ../powerpc64-portbld-freebsd12.1/libgo
-static-libstdc++ -static-libgcc -L ../powerpc64-portbld-freebsd12.1/libgo -L
../powerpc64-portbld-freebsd12.1/libgo/.libs -o test2json
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/test2json/main.go
../powerpc64-portbld-freebsd12.1/libgo/libgotool.a
/usr/local/bin/ld: ../powerpc64-portbld-freebsd12.1/libgo/.libs/libgo.so:
undefined reference to `syscall.Syscall9'
/usr/local/bin/ld: ../powerpc64-portbld-freebsd12.1/libgo/.libs/libgo.so:
undefined reference to `syscall.Syscall9'
collect2: error: ld returned 1 exit status
gmake[4]: *** [Makefile:831: test2json] Error 1
gmake[4]: *** Waiting for unfinished jobs....
collect2: error: ld returned 1 exit status
gmake[4]: *** [Makefile:829: buildid] Error 1
/usr/local/bin/ld: ../powerpc64-portbld-freebsd12.1/libgo/.libs/libgo.so:
undefined reference to `syscall.Syscall9'
collect2: error: ld returned 1 exit status
gmake[4]: *** [Makefile:827: vet] Error 1
/usr/local/bin/ld: ../powerpc64-portbld-freebsd12.1/libgo/.libs/libgo.so:
undefined reference to `syscall.Syscall9'
/usr/local/bin/ld: ../powerpc64-portbld-freebsd12.1/libgo/.libs/libgo.so:
undefined reference to `syscall.Syscall9'
collect2: error: ld returned 1 exit status
gmake[4]: *** [Makefile:821: go] Error 1
collect2: error: ld returned 1 exit status
gmake[4]: *** [Makefile:823: gofmt] Error 1
gmake[4]: Leaving directory '/usr/ports/lang/gcc10/work/.build/gotools'
gmake[3]: *** [Makefile:14920: all-gotools] Error 2
gmake[3]: Leaving directory '/usr/ports/lang/gcc10/work/.build'
gmake[2]: *** [Makefile:24257: bootstrap-lean] Error 2
gmake[2]: Leaving directory '/usr/ports/lang/gcc10/work/.build'
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
2020-08-07 13:36 ` [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails clhamilto at gmail dot com
@ 2020-08-07 16:08 ` ian at airs dot com
2020-08-07 16:54 ` clhamilto at gmail dot com
` (10 subsequent siblings)
12 siblings, 0 replies; 13+ messages in thread
From: ian at airs dot com @ 2020-08-07 16:08 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #27 from Ian Lance Taylor <ian at airs dot com> ---
What is the complete contents of your new file? You showed just a declaration;
is there a function body there as well?
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
2020-08-07 13:36 ` [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails clhamilto at gmail dot com
2020-08-07 16:08 ` ian at airs dot com
@ 2020-08-07 16:54 ` clhamilto at gmail dot com
2020-08-07 17:46 ` ian at airs dot com
` (9 subsequent siblings)
12 siblings, 0 replies; 13+ messages in thread
From: clhamilto at gmail dot com @ 2020-08-07 16:54 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #28 from Curtis Hamilton <clhamilto at gmail dot com> ---
(In reply to Ian Lance Taylor from comment #27)
> What is the complete contents of your new file? You showed just a
> declaration; is there a function body there as well?
That's what I was missing. I now have it working, here's the complete contents
of the file.
package syscall
// We can't use the gc-syntax .s files for gccgo. On the plus side
// much of the functionality can be written directly in Go.
func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2
uintptr, err Errno) {
Entersyscall()
r, r2, errno := Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9)
Exitsyscall()
return r, 0, Errno(errno)
}
func syscall9(uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr,
uintptr, uintptr, uintptr) (uintptr, uintptr, Errno)
Also, there was an earlier error that I manually changed. Any idea on how to
fix the below:
runtime_sysinfo.go:580:6: error: invalid recursive type
580 | type _thread _thread
|
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
` (2 preceding siblings ...)
2020-08-07 16:54 ` clhamilto at gmail dot com
@ 2020-08-07 17:46 ` ian at airs dot com
2020-08-07 18:01 ` clhamilto at gmail dot com
` (8 subsequent siblings)
12 siblings, 0 replies; 13+ messages in thread
From: ian at airs dot com @ 2020-08-07 17:46 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #29 from Ian Lance Taylor <ian at airs dot com> ---
The runtime_sysinfo.go is manually generated by mkrsysinfo.sh. I don't know
where the _thread definition is coming from, but probably the simplest approach
is to remove it via the list of grep -v call nears the start of mkrsysinfo.sh.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
` (3 preceding siblings ...)
2020-08-07 17:46 ` ian at airs dot com
@ 2020-08-07 18:01 ` clhamilto at gmail dot com
2020-08-07 18:37 ` ian at airs dot com
` (7 subsequent siblings)
12 siblings, 0 replies; 13+ messages in thread
From: clhamilto at gmail dot com @ 2020-08-07 18:01 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #30 from Curtis Hamilton <clhamilto at gmail dot com> ---
Ian,
I've made progress with building the frontend but I have an issue with
implementing Syscall9 needed by libgo/go/os/wait_wait6.go. I tried adding the
file "syscall_freebsd_ppc64.go" containing the following:
func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2
uintptr, err Errno)
that gets me past the initial error.
But now I get the below error when linking gotools.
gmake[6]: Leaving directory
'/usr/ports/lang/gcc10/work/.build/powerpc64-portbld-freebsd12.1/libgo'
gmake[5]: Leaving directory
'/usr/ports/lang/gcc10/work/.build/powerpc64-portbld-freebsd12.1/libgo'
gmake[4]: Leaving directory
'/usr/ports/lang/gcc10/work/.build/powerpc64-portbld-freebsd12.1/libgo'
gmake[4]: Entering directory '/usr/ports/lang/gcc10/work/.build/gotools'
/usr/ports/lang/gcc10/work/.build/./gcc/gccgo
-B/usr/ports/lang/gcc10/work/.build/./gcc/
-B/usr/local/powerpc64-portbld-freebsd12.1/bin/
-B/usr/local/powerpc64-portbld-freebsd12.1/lib/ -isystem
/usr/local/powerpc64-portbld-freebsd12.1/include -isystem
/usr/local/powerpc64-portbld-freebsd12.1/sys-include -g -O2 -pipe
-DLIBICONV_PLUG -fno-strict-aliasing -I ../powerpc64-portbld-freebsd12.1/libgo
-static-libstdc++ -static-libgcc -L ../powerpc64-portbld-freebsd12.1/libgo -L
../powerpc64-portbld-freebsd12.1/libgo/.libs -o go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/go/alldocs.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/go/go11.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/go/main.go
../powerpc64-portbld-freebsd12.1/libgo/libgotool.a
/usr/ports/lang/gcc10/work/.build/./gcc/gccgo
-B/usr/ports/lang/gcc10/work/.build/./gcc/
-B/usr/local/powerpc64-portbld-freebsd12.1/bin/
-B/usr/local/powerpc64-portbld-freebsd12.1/lib/ -isystem
/usr/local/powerpc64-portbld-freebsd12.1/include -isystem
/usr/local/powerpc64-portbld-freebsd12.1/sys-include -g -O2 -pipe
-DLIBICONV_PLUG -fno-strict-aliasing -I ../powerpc64-portbld-freebsd12.1/libgo
-static-libstdc++ -static-libgcc -L ../powerpc64-portbld-freebsd12.1/libgo -L
../powerpc64-portbld-freebsd12.1/libgo/.libs -o gofmt
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/gofmt/doc.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/gofmt/gofmt.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/gofmt/internal.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/gofmt/rewrite.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/gofmt/simplify.go
../powerpc64-portbld-freebsd12.1/libgo/libgotool.a
/usr/ports/lang/gcc10/work/.build/./gcc/gccgo
-B/usr/ports/lang/gcc10/work/.build/./gcc/
-B/usr/local/powerpc64-portbld-freebsd12.1/bin/
-B/usr/local/powerpc64-portbld-freebsd12.1/lib/ -isystem
/usr/local/powerpc64-portbld-freebsd12.1/include -isystem
/usr/local/powerpc64-portbld-freebsd12.1/sys-include -g -O2 -pipe
-DLIBICONV_PLUG -fno-strict-aliasing -I ../powerpc64-portbld-freebsd12.1/libgo
-static-libstdc++ -static-libgcc -L ../powerpc64-portbld-freebsd12.1/libgo -L
../powerpc64-portbld-freebsd12.1/libgo/.libs -o vet
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/vet/doc.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/vet/main.go
../powerpc64-portbld-freebsd12.1/libgo/libgotool.a
/usr/ports/lang/gcc10/work/.build/./gcc/gccgo
-B/usr/ports/lang/gcc10/work/.build/./gcc/
-B/usr/local/powerpc64-portbld-freebsd12.1/bin/
-B/usr/local/powerpc64-portbld-freebsd12.1/lib/ -isystem
/usr/local/powerpc64-portbld-freebsd12.1/include -isystem
/usr/local/powerpc64-portbld-freebsd12.1/sys-include -g -O2 -pipe
-DLIBICONV_PLUG -fno-strict-aliasing -I ../powerpc64-portbld-freebsd12.1/libgo
-static-libstdc++ -static-libgcc -L ../powerpc64-portbld-freebsd12.1/libgo -L
../powerpc64-portbld-freebsd12.1/libgo/.libs -o buildid
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/buildid/buildid.go
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/buildid/doc.go
../powerpc64-portbld-freebsd12.1/libgo/libgotool.a
/usr/ports/lang/gcc10/work/.build/./gcc/gccgo
-B/usr/ports/lang/gcc10/work/.build/./gcc/
-B/usr/local/powerpc64-portbld-freebsd12.1/bin/
-B/usr/local/powerpc64-portbld-freebsd12.1/lib/ -isystem
/usr/local/powerpc64-portbld-freebsd12.1/include -isystem
/usr/local/powerpc64-portbld-freebsd12.1/sys-include -g -O2 -pipe
-DLIBICONV_PLUG -fno-strict-aliasing -I ../powerpc64-portbld-freebsd12.1/libgo
-static-libstdc++ -static-libgcc -L ../powerpc64-portbld-freebsd12.1/libgo -L
../powerpc64-portbld-freebsd12.1/libgo/.libs -o test2json
/usr/ports/lang/gcc10/work/gcc-10.1.0/gotools/../libgo/go/cmd/test2json/main.go
../powerpc64-portbld-freebsd12.1/libgo/libgotool.a
/usr/local/bin/ld: ../powerpc64-portbld-freebsd12.1/libgo/.libs/libgo.so:
undefined reference to `syscall.Syscall9'
/usr/local/bin/ld: ../powerpc64-portbld-freebsd12.1/libgo/.libs/libgo.so:
undefined reference to `syscall.Syscall9'
collect2: error: ld returned 1 exit status
gmake[4]: *** [Makefile:831: test2json] Error 1
gmake[4]: *** Waiting for unfinished jobs....
collect2: error: ld returned 1 exit status
gmake[4]: *** [Makefile:829: buildid] Error 1
/usr/local/bin/ld: ../powerpc64-portbld-freebsd12.1/libgo/.libs/libgo.so:
undefined reference to `syscall.Syscall9'
collect2: error: ld returned 1 exit status
gmake[4]: *** [Makefile:827: vet] Error 1
/usr/local/bin/ld: ../powerpc64-portbld-freebsd12.1/libgo/.libs/libgo.so:
undefined reference to `syscall.Syscall9'
/usr/local/bin/ld: ../powerpc64-portbld-freebsd12.1/libgo/.libs/libgo.so:
undefined reference to `syscall.Syscall9'
collect2: error: ld returned 1 exit status
gmake[4]: *** [Makefile:821: go] Error 1
collect2: error: ld returned 1 exit status
gmake[4]: *** [Makefile:823: gofmt] Error 1
gmake[4]: Leaving directory '/usr/ports/lang/gcc10/work/.build/gotools'
gmake[3]: *** [Makefile:14920: all-gotools] Error 2
gmake[3]: Leaving directory '/usr/ports/lang/gcc10/work/.build'
gmake[2]: *** [Makefile:24257: bootstrap-lean] Error 2
gmake[2]: Leaving directory '/usr/ports/lang/gcc10/work/.build'
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1
(In reply to Curtis Hamilton from comment #28)
> (In reply to Ian Lance Taylor from comment #27)
> > What is the complete contents of your new file? You showed just a
> > declaration; is there a function body there as well?
>
> That's what I was missing. I now have it working, here's the complete
> contents of the file.
>
>
> package syscall
>
> // We can't use the gc-syntax .s files for gccgo. On the plus side
> // much of the functionality can be written directly in Go.
>
> func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2
> uintptr, err Errno) {
> Entersyscall()
> r, r2, errno := Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9)
> Exitsyscall()
> return r, 0, Errno(errno)
> }
>
> func syscall9(uintptr, uintptr, uintptr, uintptr, uintptr, uintptr, uintptr,
> uintptr, uintptr, uintptr) (uintptr, uintptr, Errno)
>
>
> Also, there was an earlier error that I manually changed. Any idea on how
> to fix the below:
>
> runtime_sysinfo.go:580:6: error: invalid recursive type
> 580 | type _thread _thread
> |
Testing the build using simple hello program
root@blackbird:~ # ./a.out
runtime: len(sigtable)=33 _NSIG=32
fatal error: bad sigtable len
goroutine 1 [running, locked to thread]:
runtime.dopanic_m
:0
runtime.throw
:0
runtime.runtime..init4
:0
runtime..import
:0
__go_init_main
/root/test.go:2
runtime.main
:0
runtime.kickoff
:0
/usr/src/lib/libc/powerpc64/gen/_ctx_start.S:38
goroutine 2 [runnable]:
Any ideas?
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
` (4 preceding siblings ...)
2020-08-07 18:01 ` clhamilto at gmail dot com
@ 2020-08-07 18:37 ` ian at airs dot com
2020-08-07 23:04 ` clhamilto at gmail dot com
` (6 subsequent siblings)
12 siblings, 0 replies; 13+ messages in thread
From: ian at airs dot com @ 2020-08-07 18:37 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #31 from Ian Lance Taylor <ian at airs dot com> ---
> runtime: len(sigtable)=33 _NSIG=32
> fatal error: bad sigtable len
This error means that the sigtable generated by mksigtab.sh does not match the
value of _NSIG in the file generated by mksysinfo.sh. You'll need to figure
out why there is a discrepancy and resolve it.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
` (5 preceding siblings ...)
2020-08-07 18:37 ` ian at airs dot com
@ 2020-08-07 23:04 ` clhamilto at gmail dot com
2020-08-08 0:05 ` ian at airs dot com
` (5 subsequent siblings)
12 siblings, 0 replies; 13+ messages in thread
From: clhamilto at gmail dot com @ 2020-08-07 23:04 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #32 from Curtis Hamilton <clhamilto at gmail dot com> ---
(In reply to Ian Lance Taylor from comment #31)
> > runtime: len(sigtable)=33 _NSIG=32
> > fatal error: bad sigtable len
>
> This error means that the sigtable generated by mksigtab.sh does not match
> the value of _NSIG in the file generated by mksysinfo.sh. You'll need to
> figure out why there is a discrepancy and resolve it.
There are actually only 32 signals, however mksigtab.sh adds a signal at 0
"SIGNONE: no trap", which makes 33 signals in sigtable. Freebsd sets _NSIG to
32 for 33 signals, counting from 0 vice 1. mksysinfo.sh pulls the value for
_NSIG directly from signal.h. Seems the only way to fix is by modifying
signal.h
BTW, removing the "_thread" definition results in the following.
runtime_sysinfo.go:516:36: error: use of undefined type '_thread'
516 | type _cv_waitq struct { tqh_first *_thread; tqh_last **_thread; }
| ^
However, I don't see any other references to "__cv_waitq" in the code.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
` (6 preceding siblings ...)
2020-08-07 23:04 ` clhamilto at gmail dot com
@ 2020-08-08 0:05 ` ian at airs dot com
2020-08-08 15:43 ` clhamilto at gmail dot com
` (4 subsequent siblings)
12 siblings, 0 replies; 13+ messages in thread
From: ian at airs dot com @ 2020-08-08 0:05 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #33 from Ian Lance Taylor <ian at airs dot com> ---
> There are actually only 32 signals, however mksigtab.sh adds a signal at 0 "SIGNONE: no trap", which makes 33 signals in sigtable. Freebsd sets _NSIG to 32 for 33 signals, counting from 0 vice 1. mksysinfo.sh pulls the value for _NSIG directly from signal.h. Seems the only way to fix is by modifying signal.h
32 signals implies signal numbers 0 to 31. The error says that len(sigtable)
is 33, implying that mksigtab.sh found signal 32 somewhere. Where did that
come from?
(Changing signal.h is not going to be the right approach.)
> BTW, removing the "_thread" definition results in the following.
>
> runtime_sysinfo.go:516:36: error: use of undefined type '_thread'
> 516 | type _cv_waitq struct { tqh_first *_thread; tqh_last **_thread; }
> | ^
>
> However, I don't see any other references to "__cv_waitq" in the code.
Add it to the fgrep -v in mkrsysinfo.sh. The names like _thread and _cv_waitq
are coming from system header files, not from Go code.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
` (7 preceding siblings ...)
2020-08-08 0:05 ` ian at airs dot com
@ 2020-08-08 15:43 ` clhamilto at gmail dot com
2020-08-08 16:09 ` ian at airs dot com
` (3 subsequent siblings)
12 siblings, 0 replies; 13+ messages in thread
From: clhamilto at gmail dot com @ 2020-08-08 15:43 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #34 from Curtis Hamilton <clhamilto at gmail dot com> ---
Do you know if anyone has actively worked on the BSD code recently?
I'm abandoning my effort go get this working on freebsd. I'm not a really a
programmer and this is beyond my meager abilities.
So unless this is interest in further exploration, I'm going to close this
issue.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
` (8 preceding siblings ...)
2020-08-08 15:43 ` clhamilto at gmail dot com
@ 2020-08-08 16:09 ` ian at airs dot com
2023-12-11 10:04 ` ro at gcc dot gnu.org
` (2 subsequent siblings)
12 siblings, 0 replies; 13+ messages in thread
From: ian at airs dot com @ 2020-08-08 16:09 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #35 from Ian Lance Taylor <ian at airs dot com> ---
I don't know that anybody has looked at the BSD support recently.
Thanks for your efforts. I agree that this is work for a programmer.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
` (9 preceding siblings ...)
2020-08-08 16:09 ` ian at airs dot com
@ 2023-12-11 10:04 ` ro at gcc dot gnu.org
2023-12-14 21:18 ` ian at airs dot com
2023-12-21 12:42 ` ro at CeBiTec dot Uni-Bielefeld.DE
12 siblings, 0 replies; 13+ messages in thread
From: ro at gcc dot gnu.org @ 2023-12-11 10:04 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
Rainer Orth <ro at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
CC| |andreast at gcc dot gnu.org,
| |ro at gcc dot gnu.org
Ever confirmed|0 |1
Last reconfirmed| |2023-12-11
--- Comment #36 from Rainer Orth <ro at gcc dot gnu.org> ---
I originally ran into this issue in GCC 9, and now again on trunk: nothing
happened in years. I find it extremely frustrating to regularly fall into this
trap as a non-FreeBSD developer just trying to build trunk to test a patch.
How about disabling the libgo build on FreeBSD along the lines of the various
lib*/configure.tgt files?
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
` (10 preceding siblings ...)
2023-12-11 10:04 ` ro at gcc dot gnu.org
@ 2023-12-14 21:18 ` ian at airs dot com
2023-12-21 12:42 ` ro at CeBiTec dot Uni-Bielefeld.DE
12 siblings, 0 replies; 13+ messages in thread
From: ian at airs dot com @ 2023-12-14 21:18 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #37 from Ian Lance Taylor <ian at airs dot com> ---
Search for this comment in the top-level configure.ac file.
# Disable libgo for some systems where it is known to not work.
# For testing, you can easily override this with --enable-libgo.
That said if you don't configure with --enable-languages=go then you shouldn't
get libgo.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
` (11 preceding siblings ...)
2023-12-14 21:18 ` ian at airs dot com
@ 2023-12-21 12:42 ` ro at CeBiTec dot Uni-Bielefeld.DE
12 siblings, 0 replies; 13+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2023-12-21 12:42 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86535
--- Comment #38 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #37 from Ian Lance Taylor <ian at airs dot com> ---
> Search for this comment in the top-level configure.ac file.
>
> # Disable libgo for some systems where it is known to not work.
> # For testing, you can easily override this with --enable-libgo.
Ah, I'd missed that, being more used to the various lib*/configure.tgt
files. The disadvantage of having this in the toplevel configure.ac is
that this file is shared with binutils-gdb.
> That said if you don't configure with --enable-languages=go then you shouldn't
> get libgo.
True. However, I did configure with --enable-languages=all (which
expanded to c,ada,c++,d,fortran,go,lto,m2,objc,obj-c++,rust).
Unfortunately, we lack a --disable-languages=<list>, so you need to use
--enable-languages=<all of the above except go>, which is guaranteed to
break (or rather miss new languages) as has happened to me for m2 and
rust.
It's best if GCC self-defends against configurations which are known not
to work instead of having developers run into the trap first ;-)
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2023-12-21 12:42 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <bug-86535-4@http.gcc.gnu.org/bugzilla/>
2020-08-07 13:36 ` [Bug go/86535] FreeBSD/PowerPC64 - Building Go Frontend support for gcc 7.3.0 fails clhamilto at gmail dot com
2020-08-07 16:08 ` ian at airs dot com
2020-08-07 16:54 ` clhamilto at gmail dot com
2020-08-07 17:46 ` ian at airs dot com
2020-08-07 18:01 ` clhamilto at gmail dot com
2020-08-07 18:37 ` ian at airs dot com
2020-08-07 23:04 ` clhamilto at gmail dot com
2020-08-08 0:05 ` ian at airs dot com
2020-08-08 15:43 ` clhamilto at gmail dot com
2020-08-08 16:09 ` ian at airs dot com
2023-12-11 10:04 ` ro at gcc dot gnu.org
2023-12-14 21:18 ` ian at airs dot com
2023-12-21 12:42 ` ro at CeBiTec dot Uni-Bielefeld.DE
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).