cvs commit: ports/emulators Makefile ports/emulators/wine-gecko Makefile distinfo pkg-descr pkg-plist

Alexey Dokuchaev danfe at FreeBSD.org
Fri May 27 03:08:41 UTC 2011


On Wed, May 25, 2011 at 11:03:53PM +0200, Gerald Pfeifer wrote:
> On Tue, 24 May 2011, Alexey Dokuchaev wrote:
> > I believe DATADIR is also mishandled in main wine port: that is, extra
> > "wine" word crept in (paths look like /usr/local/share/wine/wine/fonts/...
> > for example).
> 
> I've been wondering about that, too, but then it's been working for
> years and
> 
>   CONFIGURE_ARGS+=--datadir=${DATADIR} --verbose ...
> 
> looks pretty innocent, doesn't it?  Or is the concept of FreeBSD's
> ${DATADIR} so different from GNU's --datadir?

It *looks* innocent and natural, but it's wrong: our DATADIR is set to
${PREFIX}/share/${PORTNAME} by default, that is, it is fully qualified
path with port name included.  In GNU world, and particularly in wine
configure script, it is just a common prefix where GNU programs should
put their data; what is, for program `foo' it would be ${datadir}/foo.
When you assign FreeBSD ${DATADIR} as GNU --datadir, you get extra
"wine" path component, which is, of course, bogus and should be fixed.

As been previously mentioned, correctly respecting DATADIR and friends
never actually worded in FreeBSD.  I still use %%DATADIR%% macro in
plists but every time I do so without actually checking if DATADIR can
be set independently from PREFIX God kills a kitten.  :-(

./danfe


More information about the cvs-all mailing list