PREFIX problems...

Sam Lawrance lawrance at freebsd.org
Fri Feb 10 06:20:11 PST 2006


On 11/02/2006, at 12:53 AM, Anders Troback wrote:

> On Sat, 11 Feb 2006 00:16:15 +1100
> Sam Lawrance <lawrance at freebsd.org> wrote:
>
>>
>> On 11/02/2006, at 12:09 AM, Anders Troback wrote:
>>
>>> On Fri, 10 Feb 2006 14:26:01 +0200
>>> Vasil Dimov <vd at FreeBSD.org> wrote:
>>>
>>>> -----BEGIN PGP SIGNED MESSAGE-----
>>>> Hash: SHA1
>>>>
>>>> On Fri, Feb 10, 2006 at 12:45:09PM +0100, Anders Troback wrote:
>>>> ...
>>>>> The former maintainer did some things that portlint don't like,
>>>>> the last line are not .include <bsd.port.mk> and when I move down
>>>>> the line the PREFIX are ignored!
>>>>>
>>>>> make install should put all files in $PREFIX/bigsister but when I
>>>>> put .include <bsd.port.mk> to the bottom of Makefile make install
>>>>> puts the files in /usr/local.
>>>> ...
>>>>
>>>> Have you tried
>>>>
>>>> PREFIX?=	${LOCALBASE}/bigsister
>>>> CONFIGURE_TARGET=	--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
>>>> CONFIGURE_ARGS=	--with-cgi=${BS_CGI_PATH} \
>>>> 		--with-perlext=${BS_PERL_EXT} \
>>>> 		--with-url=${BS_URL} \
>>>> 		--with-user=${BS_USER}
>>>>
>>>> - --
>>>> Vasil Dimov
>>>> -----BEGIN PGP SIGNATURE-----
>>>>
>>>> iD8DBQFD7IZZFw6SP/bBpCARAs8VAJoDk2EOFsP5Qe6RG0wQxbwdutEp4wCggo58
>>>> F2lN3SZ1Rr6c+bRTSPYsIAw=
>>>> =q+IX
>>>> -----END PGP SIGNATURE-----
>>>
>>> I have now:-)
>>>
>>> That fixed it!
>>>
>>> Is this a "legal" way to go?
>>
>> No, it's best that you don't set PREFIX (especially like that - what
>> happens if someone comes along and does "make install PREFIX=/usr/
>> opt"?).
>>
>> Just passing PREFIX in CONFIGURE_ARGS may not be enough.  You should
>> probably also do:
>>
>> MAKE_ENV+=	PREFIX=${PREFIX}/${PORTNAME}
>>
>> Otherwise, the submake will get PREFIX=${PREFIX} (which is why your
>> port installed into /usr/local).
>>
>
> That don't work(?), can you please have a look on my Makefile
> (attached)?!
>
> So far only the $LOCALBASE variant that Vasil Dimov suggested are
> working!

You didn't include the whole port, but I don't see a problem.
BTW, you should use USE_RC_SUBR instead of doing your own  
substitutions and installation of rc scripts.

gis2# make configure
...
===>  Configuring for bigsister-1.02
configure: WARNING: you should use --build, --host, --target
checking which Big Sister version we take care of... 1.02 (build 4)
checking the system type we are running on... freebsd
checking whether gmake sets $(MAKE)... yes
...
checking where to store doc files... /usr/local/bigsister/doc
checking where to store uxmon files... /usr/local/bigsister/uxmon
checking where to store executable files... /usr/local/bigsister/bin
...
etc etc

gis2# make do-install
************************************
*                                  *
* BUILD with:                      *
*
* DEST=/usr/local/bigsister
* EXEC=/usr/local/bigsister
* INCLUDE=/usr/local/bigsister
* CGIPATH=/cgi-bin
* USER=bs
* WEBROOT=/bs
* PERL=/usr/bin/perl
* PERLEXT=pl
*
*                                  *
************************************
...
./install.sh wheel bs 755 -d /usr/local/bigsister/var
./install.sh wheel bs 755 -d /usr/local/bigsister/etc
./install.sh wheel bs 755 -d /usr/local/bigsister/cgi
./install.sh wheel bs 755 -d /usr/local/bigsister/doc
etc etc



More information about the freebsd-ports mailing list