David Daney <dda...@caviumnetworks.com> writes: > In trying to build libgo on mips64-linux we try to build all three > multilibs (o32, n32 and n64 ABIs) > > For the n32 ABI, the configure script generates syscall_arch.go: > ----------- > package syscall > const ARCH = "mips64" > const OS = "linux" > ----------- > > The Makefile has GOARCH = mips64, so it is trying to compile my new > syscalls/syscall_linux_mips64.go. > > So far so good. > > But now what will happen for the n64 ABI? It has the exact same > GOARCH. This is not good because n64 will need a different > syscalls/syscall_linux_${GOARCH}.go > > Actually I think my syscall_linux_mips.go can be shared between both > the o32 and n32 libraries. > > How to sort this out?
I guess ARCH == mips64 is going to be appropriate for any 64-bit MIPS target. If you need a different syscall_linux_${GOARCH} file for different mips64 targets, then I think we're going to need to test some conditional in libgo/Makefile.am to add the file to build. E.g., look at syscall_filesize_file. Ian