From 069f15a410c8995f1c0a858ea292735f30b5b82e Mon Sep 17 00:00:00 2001 From: P. J. McDermott Date: Sun, 08 Sep 2013 11:38:12 -0400 Subject: Remove awk portability patches. glibc/eglibc 2.18 will be a bit harder to build without gawk. So we're just using gawk. --- (limited to 'patches/04_add-strtonum-to-conftest.patch') diff --git a/patches/04_add-strtonum-to-conftest.patch b/patches/04_add-strtonum-to-conftest.patch deleted file mode 100644 index 675d7bb..0000000 --- a/patches/04_add-strtonum-to-conftest.patch +++ /dev/null @@ -1,127 +0,0 @@ -From: "P. J. McDermott" -Description: Add strtonum() to generated conftest.awk - conftest.awk uses the strtonum() function of GNU Awk to check for a linker that - supports the "-z relro" option. - . - This patch adds the pure awk implementation of strtonum() found in - awklib/eg/lib/strtonum.awk in GNU Awk to enable conftest.awk to run on other - awk implementations. - -diff -Naur src.orig/libc/configure src/libc/configure ---- src.orig/libc/configure 2012-12-02 16:11:45.000000000 -0500 -+++ src/libc/configure 2013-06-20 20:13:34.122952650 -0400 -@@ -6383,14 +6383,52 @@ - - _ACEOF - cat > conftest.awk <<\EOF -+# mystrtonum --- convert string to number -+# Arnold Robbins, arnold@skeeve.com, Public Domain -+# February, 2004 -+function mystrtonum(str, ret, chars, n, i, k, c) -+{ -+ if (str ~ /^0[0-7]*$/) { -+ # octal -+ n = length(str) -+ ret = 0 -+ for (i = 1; i <= n; i++) { -+ c = substr(str, i, 1) -+ if ((k = index("01234567", c)) > 0) -+ k-- # adjust for 1-basing in awk -+ ret = ret * 8 + k -+ } -+ } else if (str ~ /^0[xX][[:xdigit:]]+/) { -+ # hexadecimal -+ str = substr(str, 3) # lop off leading 0x -+ n = length(str) -+ ret = 0 -+ for (i = 1; i <= n; i++) { -+ c = substr(str, i, 1) -+ c = tolower(c) -+ if ((k = index("0123456789", c)) > 0) -+ k-- # adjust for 1-basing in awk -+ else if ((k = index("abcdef", c)) > 0) -+ k += 9 -+ ret = ret * 16 + k -+ } -+ } else if (str ~ \ -+ /^[-+]?([0-9]+([.][0-9]*([Ee][0-9]+)?)?|([.][0-9]+([Ee][-+]?[0-9]+)?))$/) { -+ # decimal number, possibly floating point -+ ret = str + 0 -+ } else -+ ret = "NOT-A-NUMBER" -+ -+ return ret -+} - BEGIN { - result = "no" -- commonpagesize = strtonum(commonpagesize) -+ commonpagesize = mystrtonum(commonpagesize) - } - { print "LINE:", $0 > "/dev/stderr" } - $1 == "GNU_RELRO" { -- vaddr = strtonum($3) -- memsz = strtonum($6) -+ vaddr = mystrtonum($3) -+ memsz = mystrtonum($6) - end = vaddr + memsz - printf "vaddr %#x memsz %#x end %#x commonpagesize %#x\n", \ - vaddr, memsz, end, commonpagesize > "/dev/stderr" -diff -Naur src.orig/libc/configure.in src/libc/configure.in ---- src.orig/libc/configure.in 2012-12-02 16:11:45.000000000 -0500 -+++ src/libc/configure.in 2013-06-20 20:13:42.351194464 -0400 -@@ -1475,14 +1475,52 @@ - int data[0x10000] = { 1, }; - ]])]) - cat > conftest.awk <<\EOF -+# mystrtonum --- convert string to number -+# Arnold Robbins, arnold@skeeve.com, Public Domain -+# February, 2004 -+function mystrtonum(str, ret, chars, n, i, k, c) -+{ -+ if (str ~ /^0[0-7]*$/) { -+ # octal -+ n = length(str) -+ ret = 0 -+ for (i = 1; i <= n; i++) { -+ c = substr(str, i, 1) -+ if ((k = index("01234567", c)) > 0) -+ k-- # adjust for 1-basing in awk -+ ret = ret * 8 + k -+ } -+ } else if (str ~ /^0[xX][[:xdigit:]]+/) { -+ # hexadecimal -+ str = substr(str, 3) # lop off leading 0x -+ n = length(str) -+ ret = 0 -+ for (i = 1; i <= n; i++) { -+ c = substr(str, i, 1) -+ c = tolower(c) -+ if ((k = index("0123456789", c)) > 0) -+ k-- # adjust for 1-basing in awk -+ else if ((k = index("abcdef", c)) > 0) -+ k += 9 -+ ret = ret * 16 + k -+ } -+ } else if (str ~ \ -+ /^[-+]?([0-9]+([.][0-9]*([Ee][0-9]+)?)?|([.][0-9]+([Ee][-+]?[0-9]+)?))$/) { -+ # decimal number, possibly floating point -+ ret = str + 0 -+ } else -+ ret = "NOT-A-NUMBER" -+ -+ return ret -+} - BEGIN { - result = "no" -- commonpagesize = strtonum(commonpagesize) -+ commonpagesize = mystrtonum(commonpagesize) - } - { print "LINE:", $0 > "/dev/stderr" } - $1 == "GNU_RELRO" { -- vaddr = strtonum($3) -- memsz = strtonum($6) -+ vaddr = mystrtonum($3) -+ memsz = mystrtonum($6) - end = vaddr + memsz - printf "vaddr %#x memsz %#x end %#x commonpagesize %#x\n", \ - vaddr, memsz, end, commonpagesize > "/dev/stderr" -- cgit v0.9.1