diff options
author | obrien <obrien@FreeBSD.org> | 2012-05-30 22:23:08 +0000 |
---|---|---|
committer | obrien <obrien@FreeBSD.org> | 2012-05-30 22:23:08 +0000 |
commit | 71a59e133691abcd6f586cd98889df75d6c7ef32 (patch) | |
tree | 4b421920429bb41cfa14b0713f37dec96f9c092b /usr.bin/make | |
parent | 928a481c653a909ac1f7811c68a12a3f7360a679 (diff) | |
download | FreeBSD-src-71a59e133691abcd6f586cd98889df75d6c7ef32.zip FreeBSD-src-71a59e133691abcd6f586cd98889df75d6c7ef32.tar.gz |
Deprecate the FreeBSD make's ":U" (to-upper case) and ":L" (to-lower case)
modifiers for ":tu" and ":tl" from OSF's ODE, which made its way into
NetBSD's make, which is the source for the Portable Berkeley Make.
Submitted by: Simon Gerraty <sjg@juniper.net>
Diffstat (limited to 'usr.bin/make')
-rw-r--r-- | usr.bin/make/Makefile | 2 | ||||
-rw-r--r-- | usr.bin/make/make.1 | 19 | ||||
-rw-r--r-- | usr.bin/make/var.c | 15 |
3 files changed, 35 insertions, 1 deletions
diff --git a/usr.bin/make/Makefile b/usr.bin/make/Makefile index 670e524..9afaa57 100644 --- a/usr.bin/make/Makefile +++ b/usr.bin/make/Makefile @@ -15,7 +15,7 @@ NO_SHARED?= YES .endif # Version has the RYYYYMMDDX format, where R is from RELENG_<R> -CFLAGS+=-DMAKE_VERSION=\"5201111300\" +CFLAGS+=-DMAKE_VERSION=\"10201120530\" # There is no obvious performance improvement currently. # CFLAGS+=-DUSE_KQUEUE diff --git a/usr.bin/make/make.1 b/usr.bin/make/make.1 index 80216b4..fc91f3c 100644 --- a/usr.bin/make/make.1 +++ b/usr.bin/make/make.1 @@ -902,6 +902,7 @@ Replaces each word in the variable with its suffix. Replaces each word in the variable with everything but the last component. .It Cm :L Converts variable to lower-case letters. +(deprecated) .It Cm :M Ns Ar pattern Select only those words that match the rest of the modifier. The standard shell wildcard characters @@ -993,8 +994,13 @@ to be replaced in .Ar new_string . .It Cm :T Replaces each word in the variable with its last component. +.It Cm :tl +Converts variable to lower-case letters. +.It Cm :tu +Converts variable to upper-case letters. .It Cm :U Converts variable to upper-case letters. +(deprecated) .It Cm :u Remove adjacent duplicate words (like .Xr uniq 1 ) . @@ -1742,6 +1748,19 @@ is set to the same value as .Va .MAKE ; support for this may be removed in the future. .Pp +The use of the +.Cm :L +and +.Cm :U +modifiers are deprecated +in +.Fx 10.0 +and the more portable (among Pmake decedents) +.Cm :tl +and +.Cm :tu +should be used instead. +.Pp Most of the more esoteric features of .Nm should probably be avoided for greater compatibility. diff --git a/usr.bin/make/var.c b/usr.bin/make/var.c index a7babaf..341ee79 100644 --- a/usr.bin/make/var.c +++ b/usr.bin/make/var.c @@ -1746,6 +1746,19 @@ ParseModifier(VarParser *vp, char startc, Var *v, Boolean *freeResult) case 'C': newStr = modifier_C(vp, value, v); break; + case 't': + /* :tl :tu for OSF ODE & NetBSD make compatibility */ + switch (vp->ptr[1]) { + case 'l': + vp->ptr++; + goto mod_lower; + break; + case 'u': + vp->ptr++; + goto mod_upper; + break; + } + /* FALLTHROUGH */ default: if (vp->ptr[1] != endc && vp->ptr[1] != ':') { #ifdef SUNSHCMD @@ -1774,6 +1787,7 @@ ParseModifier(VarParser *vp, char startc, Var *v, Boolean *freeResult) switch (vp->ptr[0]) { case 'L': + mod_lower: { const char *cp; Buffer *buf; @@ -1799,6 +1813,7 @@ ParseModifier(VarParser *vp, char startc, Var *v, Boolean *freeResult) vp->ptr++; break; case 'U': + mod_upper: { const char *cp; Buffer *buf; |