From e162e288ecf5a5eb16bd6c0cb432afa233e1e10b Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 21 Aug 2012 05:29:30 +0000 Subject: [PATCH] mksysinfo: Fix syscall.F_GETLK and friends for 32-bit x86. From-SVN: r190554 --- libgo/mksysinfo.sh | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/libgo/mksysinfo.sh b/libgo/mksysinfo.sh index 3955344..315d60c 100755 --- a/libgo/mksysinfo.sh +++ b/libgo/mksysinfo.sh @@ -211,6 +211,16 @@ if ! grep '^const O_CLOEXEC' ${OUT} >/dev/null 2>&1; then echo "const O_CLOEXEC = 0" >> ${OUT} fi +# These flags can be lost on i386 GNU/Linux when using +# -D_FILE_OFFSET_BITS=64, because we see "#define F_SETLK F_SETLK64" +# before we see the definition of F_SETLK64. +for flag in F_GETLK F_SETLK F_SETLKW; do + if ! grep "^const ${flag} " ${OUT} >/dev/null 2>&1 \ + && grep "^const ${flag}64 " ${OUT} >/dev/null 2>&1; then + echo "const ${flag} = ${flag}64" >> ${OUT} + fi +done + # The signal numbers. grep '^const _SIG[^_]' gen-sysinfo.go | \ grep -v '^const _SIGEV_' | \ -- 2.7.4