Date: Mon, 02 Jun 2008 17:07:25 -0400 From: Joe Marcus Clarke <marcus@marcuscom.com> To: Coleman Kane <cokane@freebsd.org> Cc: cvs-src@freebsd.org, Stefan Farfeleder <stefanf@freebsd.org>, src-committers@freebsd.org, cvs-all@freebsd.org, John Baldwin <jhb@freebsd.org> Subject: Re: cvs commit: src/bin/sh expand.c parser.c parser.h Message-ID: <1212440845.18384.49.camel@shumai.marcuscom.com> In-Reply-To: <1212439968.3115.53.camel@localhost> References: <200805151955.m4FJtRMb099378@repoman.freebsd.org> <200806021445.15974.jhb@freebsd.org> <1212439968.3115.53.camel@localhost>
next in thread | previous in thread | raw e-mail | index | archive | help
--=-+7gKvAFE7GcO0N10zLdm Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Mon, 2008-06-02 at 16:52 -0400, Coleman Kane wrote: > On Mon, 2008-06-02 at 14:45 -0400, John Baldwin wrote: > > On Thursday 15 May 2008 03:55:27 pm Stefan Farfeleder wrote: > > > stefanf 2008-05-15 19:55:27 UTC > > >=20 > > > FreeBSD src repository > > >=20 > > > Modified files: > > > bin/sh expand.c parser.c parser.h=20 > > > Log: > > > Expand $LINENO to the current line number. This is required by=20 > > SUSv3's "User > > > Portability Utilities" option. > > > =20 > > > Often configure scripts generated by the autotools test if $LINENO = works=20 > > and > > > refuse to use /bin/sh if not. > > > =20 > > > Package test run by: pav > >=20 > > This breaks the build of editors/openoffice-2 > >=20 > > Specifically, the libxslt configure script has two statements like this= : > >=20 > > if test "1" =3D=3D "1" > > then > > blah blah > > endif > >=20 > > Specifically note the "=3D=3D" passed to test(1). POSIX says this shou= ld be "=3D",=20 > > and that's all our test(1) implements. The bash manpage for the builti= n-test=20 > > command says: > >=20 > > string1 =3D=3D string2 > > True if the strings are equal. =3D may be used in place = of =3D=3D for > > strict POSIX compliance. > >=20 > > IOW, it encourages "=3D=3D". I'm not sure if we want to force the use = of bash for=20 > > certain ports or if we want to just implement bash'isms in our tools as= we=20 > > encounter them (or patch the port?). In this case the patch is not=20 > > complicated (just replace the two '=3D=3D' with '=3D' in libxslt's conf= igure=20 > > script). > >=20 >=20 > This is annoying... I had to clean this behavior up once recently in > someone else's script. POSIX "test" syntax has been "=3D" and not "=3D=3D= " for > a long time. Bash is not C... so I don't understand why the attempt to > document "=3D=3D" as the "proper" operator. My thinking is the offending > script should be fixed with a patch that gets forwarded upstream to the > libxslt team (including a mention that /bin/sh and /bin/test are not > documented to support "=3D=3D" by POSIX). This is one of the most pervasive bashisms around. We (gnome@) typically fix the script to use "=3D" then forward the information upstream. Solaris is also bit by this, so it's usually not a big deal to get upstream vendors to fix their scripts. Joe >=20 --=20 PGP Key : http://www.marcuscom.com/pgp.asc --=-+7gKvAFE7GcO0N10zLdm Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (FreeBSD) iEYEABECAAYFAkhEYQ0ACgkQb2iPiv4Uz4cCZgCeLHIqNb+vFUE+r6clpJesSRSm 5+0An3LAyflwLYSGa1l3bDruddCVaOkA =bATg -----END PGP SIGNATURE----- --=-+7gKvAFE7GcO0N10zLdm--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1212440845.18384.49.camel>