Ultrix 3.0 changed basename(1)
Mike Bryan
mjb at acd4.UUCP
Sat Aug 26 00:40:51 AEST 1989
Arrgh! I just discovered a change to basename(1) in Ultrix 3.0. My
apologies if this has been posted before, but I don't recall seeing
any news about this.
It seems basename() now does some limited regular expression handling.
Therefore, the command "basename /vmunix .x" will produce "vmun",
rather than the expected "vmunix". A workaround (the new required
method?) is to say "basename /vmunix \\.x". Of course this was not
documented in the release notes, although the manual page does mention
the blurb about RE's (but not the incompatibility!!!). The problem
comes about for us because we use basename in certain Makefile entries
to strip out a ".c" if it is inadvertently left on for lint checks, as
in "f=`basename $f .c`.c". Of course, if $f is now something like
"coproc", we're hosed.
Was this done just because it would be "useful/incompatible", or was
it done to match some other flavor of Unix???
Excuse me while I go change 150 million Makefiles...
--
Mike Bryan, Applied Computing Devices, 100 N Campus Dr, Terre Haute IN 47802
Phone: 812/232-6051 FAX: 812/231-5280 Home: 812/232-0815
UUCP: uunet!acd4!mjb ARPA: acd4!mjb at uunet.uu.net
"Did you make mankind after we made you?" --- XTC, "Dear God"
More information about the Comp.unix.ultrix
mailing list