"poudriere distclean" complains about /etc/make.conf

Victor Sudakov vas at mpeks.tomsk.su
Thu Feb 19 03:14:53 UTC 2015


Mathieu Arnold wrote:
> +--On 18 f??vrier 2015 22:37:39 +0600 Victor Sudakov <vas at mpeks.tomsk.su>
> wrote:
> | Mathieu Arnold wrote:
> |> | 
> |> | I have the following construct in /etc/make.conf but not in
> |> | /usr/local/etc/poudriere.d/make.conf:
> |> | 
> |> | .if ${.CURDIR:M*/mail/spamassassin} && ${HOST} == "relay.sibptus.ru"
> |> | EXTRA_PATCHES+=/root/patches/Mail-SpamAssassin-3.3.1.sa-cgp.diff:-p1
> |> | .endif
> |> | 
> |> | When I run "poudriere distclean", it complains about this construct: 
> |> | 
> |> | WARNING (mail/spamassassin): "/etc/make.conf", line 15:
> |> | Malformed conditional (${.CURDIR:M*/mail/spamassassin} && ${HOST} ==
> |> | "relay.sibptus.ru") WARNING (mail/spamassassin):
> |> | "/usr/share/mk/sys.mk", line 340: if-less endif WARNING
> |> | (mail/spamassassin): make: fatal errors encountered -- cannot continue
> |> | 
> |> | I have two questions.
> |> | 
> |> | 1. Why does it complain? The conditional seems legit.
> |> 
> |> It seems like it is, but it is not, it should be:
> |> 
> |> .if !empty(.CURDIR:M*/mail/spamassassin) && ${HOST} == "relay.sibptus.ru"
> |> EXTRA_PATCHES+=/root/patches/Mail-SpamAssassin-3.3.1.sa-cgp.diff:-p1
> |> .endif
> |> 
> |> or
> |> 
> |> .if ${.CURDIR:M*/mail/spamassassin} != "" && ${HOST} ==
> |> "relay.sibptus.ru"
> | 
> | Sorry, Mathieu, your advice does not help:
> | 
> | [root at svn ~] poudriere distclean -y
> | [00:00:00] ====>> Gathering all expected distfiles for ports tree
> | 'default' WARNING (mail/spamassassin): "/etc/make.conf", line 15:
> | Malformed conditional (${.CURDIR:M*/mail/spamassassin} != "" && ${HOST}
> | == "relay.sibptus.ru")  WARNING (mail/spamassassin):
> | "/usr/share/mk/sys.mk", line 340: if-less endif  WARNING
> | (mail/spamassassin): make: fatal errors encountered -- cannot continue 
> 
> Ah, yes, HOST is not defined, it's why it fails, you need to add:
> 
> HOST?=

Mathieu, what makes you think that HOST is not defined? It's defined
in the environment and should be available to make:

[sudakov at relay ~] make -V HOST
relay.sibptus.ru
[sudakov at relay ~]

> 
> before that line, because you can't compare an undefined variable with
> anything.

-- 
Victor Sudakov,  VAS4-RIPE, VAS47-RIPN
sip:sudakov at sibptus.tomsk.ru


More information about the freebsd-pkg mailing list