Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Dec 2001 09:30:30 +0200
From:      Ruslan Ermilov <ru@FreeBSD.ORG>
To:        The Anarcat <anarcat@anarcat.dyndns.org>
Cc:        freebsd-arch@FreeBSD.ORG, freebsd-hackers@FreeBSD.ORG
Subject:   Re: making /usr/share/mk apps PREFIX-independant???
Message-ID:  <20011221093030.D39918@sunbay.com>
In-Reply-To: <20011220183103.GH2956@shall.anarcat.dyndns.org>
References:  <20011220183103.GH2956@shall.anarcat.dyndns.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Dec 20, 2001 at 01:31:04PM -0500, The Anarcat wrote:
> [posted to -arch, and CC'd to hackers since I have no idea as to where
> this belongs, please redirect if necessary]
> 
> Hi.
> 
> As a developper working in the FreeBSD/ports paradigm, and developping
> exclusively for FreeBSD through the libh project, it has come to my
> attention that applications developped through /usr/share/mk Makefiles
> (in particular bsd.prog.mk and bsd.lib.mk) do not respect PREFIX. 
> 
> That is, the libh Makefiles, as set now, install in /usr no matter what.
> There is no real alternative. Setting DESTDIR will install in
> /${DESTDIR}/usr, without changing the PREFIX (/usr). 
> 
> In other words, apps developped using /usr/share/mk makefiles are
> incompatible with the ports collection PREFIX-independance paradigm.
> 
> That sucks.
> 
> This is a problem which must be solved. As a hack, the libh port uses a
> custom install target in the ports skeleton (ie, it doesn't use libh
> install targets).
> 
> How I see it, the .mk files must be hacked. One could try such a replace
> pattern, I guess: s!install(.*)${DESTDIR}!install\1${PREFIX}/${DESTDIR}!
> 
> I tried to produce a significant patch, and I failed. I do not
> understand how some files end up in /bin and some other in /usr/bin.
> 
> If someone can help me with that, I will happily start hacking on the mk
> files, but in the meantime, I'm lost.
> 
I'm against PREFIX in share/mk files.  Instead, just setting
DESTDIR=${PREFIX} should (almost) be enough.  Another set of
"hacks" might be required for *DIR settings, like LIBDIR=/lib,
MANDIR=/man, etc.  Just adding the PREFIX wouldn't solve
these differences between / and /usr/local anyway.


Cheers,
-- 
Ruslan Ermilov		Oracle Developer/DBA,
ru@sunbay.com		Sunbay Software AG,
ru@FreeBSD.org		FreeBSD committer,
+380.652.512.251	Simferopol, Ukraine

http://www.FreeBSD.org	The Power To Serve
http://www.oracle.com	Enabling The Information Age

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20011221093030.D39918>