wok-current diff make/stuff/bug30612.patch @ rev 6693
Added 2 patches to make. Patches came from archlinux.
author | Christopher Rogers <slaxemulator@gmail.com> |
---|---|
date | Wed Oct 13 01:41:55 2010 +0000 (2010-10-13) |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/make/stuff/bug30612.patch Wed Oct 13 01:41:55 2010 +0000 1.3 @@ -0,0 +1,66 @@ 1.4 +diff -Naur make-3.82-orig/main.c make-3.82-fix30612//main.c 1.5 +--- make-3.82-orig/main.c 2010-07-19 17:10:53.000000000 +1000 1.6 ++++ make-3.82-fix30612//main.c 2010-09-23 23:33:37.908855839 +1000 1.7 +@@ -1,3 +1,4 @@ 1.8 ++ 1.9 + /* Argument parsing and main program of GNU Make. 1.10 + Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1.11 + 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 1.12 +@@ -1138,7 +1139,7 @@ 1.13 + a macro and some compilers (MSVC) don't like conditionals in macros. */ 1.14 + { 1.15 + const char *features = "target-specific order-only second-expansion" 1.16 +- " else-if shortest-stem undefine" 1.17 ++ " else-if shortest-stem undefine oneshell" 1.18 + #ifndef NO_ARCHIVES 1.19 + " archives" 1.20 + #endif 1.21 +diff -Naur make-3.82-orig/read.c make-3.82-fix30612//read.c 1.22 +--- make-3.82-orig/read.c 2010-07-13 11:20:42.000000000 +1000 1.23 ++++ make-3.82-fix30612//read.c 2010-09-23 23:30:58.018855839 +1000 1.24 +@@ -3028,7 +3028,7 @@ 1.25 + { 1.26 + /* This looks like the first element in an open archive group. 1.27 + A valid group MUST have ')' as the last character. */ 1.28 +- const char *e = p + nlen; 1.29 ++ const char *e = p; 1.30 + do 1.31 + { 1.32 + e = next_token (e); 1.33 +@@ -3084,19 +3084,19 @@ 1.34 + Go to the next item in the string. */ 1.35 + if (flags & PARSEFS_NOGLOB) 1.36 + { 1.37 +- NEWELT (concat (2, prefix, tp)); 1.38 ++ NEWELT (concat (2, prefix, tmpbuf)); 1.39 + continue; 1.40 + } 1.41 + 1.42 + /* If we get here we know we're doing glob expansion. 1.43 + TP is a string in tmpbuf. NLEN is no longer used. 1.44 + We may need to do more work: after this NAME will be set. */ 1.45 +- name = tp; 1.46 ++ name = tmpbuf; 1.47 + 1.48 + /* Expand tilde if applicable. */ 1.49 +- if (tp[0] == '~') 1.50 ++ if (tmpbuf[0] == '~') 1.51 + { 1.52 +- tildep = tilde_expand (tp); 1.53 ++ tildep = tilde_expand (tmpbuf); 1.54 + if (tildep != 0) 1.55 + name = tildep; 1.56 + } 1.57 +@@ -3152,7 +3152,11 @@ 1.58 + else 1.59 + { 1.60 + /* We got a chain of items. Attach them. */ 1.61 +- (*newp)->next = found; 1.62 ++ if (*newp) 1.63 ++ (*newp)->next = found; 1.64 ++ else 1.65 ++ *newp = found; 1.66 ++ 1.67 + 1.68 + /* Find and set the new end. Massage names if necessary. */ 1.69 + while (1)