Date: Thu, 21 Nov 1996 04:38:16 -0800 (PST) From: asami@freebsd.org (Satoshi Asami) To: stable@freebsd.org Subject: urgent: make patch Message-ID: <199611211238.EAA01787@silvia.HIP.Berkeley.EDU>
next in thread | raw e-mail | index | archive | help
I just found out that the latest bsd.port.mk doesn't work on -stable because the :S fix by Adam is not in that version. Can someone test this real quick before I commit it to the -stable branch? I tested it here with some ports but I want to make sure this doesn't break anything. (A make world would be nice.) Satoshi ------- Index: var.c =================================================================== RCS file: /usr/cvs/src/usr.bin/make/var.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- var.c 1995/06/18 12:34:14 1.4 +++ var.c 1995/11/01 12:18:32 1.5 @@ -147,7 +147,6 @@ #define VAR_SUB_GLOBAL 1 /* Apply substitution globally */ #define VAR_MATCH_START 2 /* Match at start of word */ #define VAR_MATCH_END 4 /* Match at end of word */ -#define VAR_NO_SUB 8 /* Substitution is non-global and already done */ } VarPattern; static int VarCmp __P((ClientData, ClientData)); @@ -883,9 +882,9 @@ VarPattern *pattern = (VarPattern *) patternp; wordLen = strlen(word); - if ((pattern->flags & VAR_NO_SUB) == 0) { + if (1) { /* substitute in each word of the variable */ /* - * Still substituting -- break it down into simple anchored cases + * Break substitution down into simple anchored cases * and if none of them fits, perform the general substitution case. */ if ((pattern->flags & VAR_MATCH_START) && @@ -967,7 +966,7 @@ * Pattern is unanchored: search for the pattern in the word using * String_FindSubstring, copying unmatched portions and the * right-hand-side for each match found, handling non-global - * subsititutions correctly, etc. When the loop is done, any + * substitutions correctly, etc. When the loop is done, any * remaining part of the word (word and wordLen are adjusted * accordingly through the loop) is copied straight into the * buffer. @@ -990,13 +989,9 @@ Buf_AddBytes(buf, pattern->rightLen, (Byte *)pattern->rhs); wordLen -= (cp - word) + pattern->leftLen; word = cp + pattern->leftLen; - if (wordLen == 0) { + if (wordLen == 0 || (pattern->flags & VAR_SUB_GLOBAL) == 0){ done = TRUE; } - if ((pattern->flags & VAR_SUB_GLOBAL) == 0) { - done = TRUE; - pattern->flags |= VAR_NO_SUB; - } } else { done = TRUE; } @@ -1015,14 +1010,9 @@ return ((Buf_Size(buf) != origSize) || addSpace); } /* - * Common code for anchored substitutions: if performed a substitution - * and it's not supposed to be global, mark the pattern as requiring - * no more substitutions. addSpace was set TRUE if characters were - * added to the buffer. + * Common code for anchored substitutions: + * addSpace was set TRUE if characters were added to the buffer. */ - if ((pattern->flags & VAR_SUB_GLOBAL) == 0) { - pattern->flags |= VAR_NO_SUB; - } return (addSpace); } nosub:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199611211238.EAA01787>