On 25/7/2013 4:33 μμ, Tijl Coosemans wrote:
On Thu, 25 Jul 2013 00:58:12 +0300 Panagiotis Christias wrote:
in my servers I add all global and per port build options in the
/etc/make.conf file, like this:
# Global options
WITHOUT_NLS=yes
[etc..]
# Per port options
.if $(.CURDIR:M*/mail/mailman)
mailman_SET+=MTA SENDMAIL NLS
.endif
.if $(.CURDIR:M*/sysutils/coreutils)
coreutils_SET+=NLS
.endif
[etc..]
In the above example, I was under the impression that
"mailman_SET+=NLS" or "coreutils_SET+=NLS" options would override
the global WITHOUT_NLS=yes definition but according to "make
showconfig" I was wrong.
Is this the correct behavior? To me at least it doesn't seem right.
To make things even more weird the following configuration works as
expected:
# Global options
WITHOUT_NLS=yes
# Per port options
.if $(.CURDIR:M*/mail/mailman)
mailman_SET+=MTA SENDMAIL
OPTIONS_FILE_SET+=NLS
.endif
.if $(.CURDIR:M*/sysutils/coreutils)
OPTIONS_FILE_SET+=NLS
.endif
That is, OPTIONS_FILE_SET+=NLS takes precedence over WITHOUT_NLS=yes
but {UNIQUENAME}_SET+=NLS doesn't.
WITH_* and WITHOUT_* style variables are still supported for backward
compatibility but they are deprecated. There's some documentation in
Mk/bsd.options.mk on how to set options in make.conf and in what order
all option lists are processed. In your case you can do something like
this:
# Global options
OPTIONS_UNSET=NLS
# Per port options
mail_mailman_SET=MTA SENDMAIL NLS
sysutils_coreutils_SET=NLS
Great info! Everything looks clearer now.
Thank you,
Panagiotis
--
Panagiotis J. Christias Network Management Center
p.christ...@noc.ntua.gr National Technical Univ. of Athens, GREECE
_______________________________________________
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"