On 27/08/2013 13:04, Koslov Sergey wrote:
> Hello
> 
> I've noticed that many ports are using ${.CURDIR}/../../some/port
> construction in their Makefiles.
> 
> But if you copy on of these ports elsewhere it won't work as expected
> because of the relative path.
> Shouldn't they use ${PORTSDIR}/some/port instead?

The use of relative paths is taken straight from The Porter's Handbook.  eg.

http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/makefile-masterdir.html

So it's officially correct to do that.

While there is no direct proscription against saying
${PORTSDIR}/some/port in that circumstance that I can see in the
documentation, relative paths are generally only used in slave ports for
the ${MASTERDIR} setting or more generally for including other
Makefiles; whereas absolute paths are used for all sorts of FOO_DEPENDS
variables.  A quick (and by no means  definitive) grepping of the ports
tree I just did hasn't shown up any counter examples.

If you intend to copy a slave port to some other location in your
filesystem and have it refer to the original master port within the
default ports tree, then you're assumed to be capable of editing the
Makefile to resolve any such changes.

        Cheers,

        Matthew

-- 
Dr Matthew J Seaman MA, D.Phil.
PGP: http://www.infracaninophile.co.uk/pgpkey


Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to