libgo patch committed: Fill out syscall package for GNU/Linux

Rainer Orth ro@CeBiTec.Uni-Bielefeld.DE
Fri Mar 2 10:04:00 GMT 2012


Ian Lance Taylor <iant@google.com> writes:

> This patch to libgo fills out the syscall package for GNU/Linux to match
> all the functions in the syscall package in the master Go library.
> There is a test case for this patch at
> http://code.google.com/p/go/issues/detail?id=3071 .  Bootstrapped and
> ran Go testsuite on x86_64-unknown-linux-gnu.  Committed to mainline.

Unfortunately, this broke Solaris bootstrap:

/usr/include/sys/ustat.h:31:2: error: #error "Cannot use ustat in the large files compilation environment"
make[4]: *** No rule to make target `s-sysinfo', needed by `sysinfo.go'.  Stop.
make[4]: *** Waiting for unfinished jobs....

<sys/ustat.h> has

#if !defined(_LP64) && _FILE_OFFSET_BITS == 64
#error	"Cannot use ustat in the large files compilation environment"
#endif

I've used the hack below to restore bootstrap, but suppose a cleaner
solution would be to run the configure tests with the same flags as used
for the actual compilations (i.e. OSCFLAGS).

Alternatively, one could restrict the use of <ustat.h> to Linux since
it's only used in go/syscall/libcall_linux.go anyway.

	Rainer


-------------- next part --------------
A non-text attachment was scrubbed...
Name: sol2-libgo-ustat.patch
Type: text/x-patch
Size: 563 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20120302/c51acccc/attachment.bin>
-------------- next part --------------

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University


More information about the Gcc-patches mailing list