]> Cypherpunks repositories - gostls13.git/commitdiff
syscall: mksysnum_linux.pl: run syscall numbers through GCC
authorIan Lance Taylor <iant@golang.org>
Tue, 12 May 2015 21:24:26 +0000 (14:24 -0700)
committerIan Lance Taylor <iant@golang.org>
Tue, 12 May 2015 22:01:25 +0000 (22:01 +0000)
This will skip system call numbers that are ifdef'ed out in unistd.h,
as occurs on PPC.

Change-Id: I88e640e4621c7a8cc266433f34a7b4be71543ec9
Reviewed-on: https://go-review.googlesource.com/9966
Reviewed-by: Minux Ma <minux@golang.org>
src/syscall/mkall.sh
src/syscall/mksysnum_linux.pl

index 739663ed9c460cafc4599ff28fafd2e8924dcc0e..85fab4ff3e3a4ecc6b56bd0829d95503b8154180 100755 (executable)
@@ -179,7 +179,7 @@ linux_amd64)
 linux_arm)
        mkerrors="$mkerrors"
        mksyscall="./mksyscall.pl -l32 -arm"
-       mksysnum="curl -s 'http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/plain/arch/arm/include/uapi/asm/unistd.h' | ./mksysnum_linux.pl"
+       mksysnum="curl -s 'http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/plain/arch/arm/include/uapi/asm/unistd.h' | ./mksysnum_linux.pl -"
        mktypes="GOARCH=$GOARCH go tool cgo -godefs"
        ;;
 linux_arm64)
index 7a8add8bab28c13ffabe51cb8d2033ed216a0715..b6fbcb599b1e53cb8d19b63e9d31f8efbc48cddb 100755 (executable)
@@ -28,7 +28,8 @@ sub fmt {
 }
 
 my $prev;
-while(<>){
+open(GCC, "gcc -E -dD $ARGV[0] |") || die "can't run gcc";
+while(<GCC>){
        if(/^#define __NR_syscalls\s+/) {
                # ignore redefinitions of __NR_syscalls
        }