Date: Mon, 27 Jan 2014 11:22:31 +0100 From: Baptiste Daroussin <bapt@FreeBSD.org> To: Alexey Dokuchaev <danfe@FreeBSD.org> Cc: svn-ports-head@freebsd.org, svn-ports-all@freebsd.org, ports-committers@freebsd.org Subject: Re: svn commit: r341341 - head/devel/xwpe Message-ID: <20140127102231.GD30300@ithaqua.etoilebsd.net> In-Reply-To: <20140127092855.GA88072@FreeBSD.org> References: <201401270841.s0R8fjq3007225@svn.freebsd.org> <20140127092855.GA88072@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--BI5RvnYi6R4T2M87 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Jan 27, 2014 at 09:28:55AM +0000, Alexey Dokuchaev wrote: > On Mon, Jan 27, 2014 at 08:41:45AM +0000, Baptiste Daroussin wrote: > > New Revision: 341341 > > URL: http://svnweb.freebsd.org/changeset/ports/341341 > > QAT: https://qat.redports.org/buildarchive/r341341/ > >=20 > > +CONFIGURE_ARGS=3D --libdir=3D\$${STAGEDIR}${PREFIX}/share >=20 > Just a heads-up, not implying that you did not check it; but in many cases > it can be wrong: passing ${STAGEDIR} directly to configure script argumen= ts > like this, there is a risk of ${STAGEDIR} getting embedded in the resulti= ng > binaries, which is not what we want. >=20 > To verify if it's OK, one should grep the source code to see if there are > any references to STAGEDIR (DESTDIR) passed via -D... (preprocessor or in > the config.h), and finally, running something like "strings bin/* lib/* | > grep stage" to verify that ${STAGEDIR} does not remain in what would get > installed on users' systems. >=20 > In general, every time you see the need to pass --libdir=3D\$${STAGEDIR} = or > even PREFIX=3D${STAGEDIR}${PREFIX} is an indication that ported software = is > not quite DESTDIR-ready, and should be checked more thoroughly. >=20 stage-qa is checking for that. if you not how this is constructed this is w= ay different from PREFIX=3D${STAGEDIR}${PREFIX} basically the Makefile will en= dup with prefix=3D ${STAGEDIR}/usr/local STAGEDIR is not expanded at all here (like in deskhack.mk) so we are just injecting in the port what it should have nothing more. This particular port is a bit special as the DESTDIR variable is already de= fine it but for something totally different, thus I decided to inject a variable named STAGEDIR instead that is why I defined DESTDIRNAME to STAGEDIR in the makefile. Your remark is valid is still valid for ports doing --prefix=3D${STAGEDIR}${PREFIX} which is often wrong but not for those doing --prefix=3D\$${STAGEDIR}${PREFIX} :) regards, Bapt --BI5RvnYi6R4T2M87 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.15 (FreeBSD) iEYEARECAAYFAlLmM2cACgkQ8kTtMUmk6ExpKQCfbqDl9J4amS/3tNRVNVNXgCiL I9AAnijihW4a+O+rUQim/jmsZKmcR7Qz =IwyN -----END PGP SIGNATURE----- --BI5RvnYi6R4T2M87--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140127102231.GD30300>