[Mailman-Users] mailman install problems (syntax error at line1: `; ' unexpected)

Stephen J. Turnbull stephen at xemacs.org
Sat Aug 7 06:38:09 CEST 2010


Mark Sapiro writes:
 > CJ Keist wrote:

 > >I simply commented out the for p loop:
 > >
 > >         #for p in $(PACKAGES); \

 > That is a perfectly acceptable workaround, but the question is why
 > doesn't your make properly handle
 > 
 >    for p in   ; do ... ; done

Because make doesn't (shouldn't) do anything with commands except
substitute make variables, then pass them to the shell.  Bourne shells
require the tokens following "in" to constitute a list.  The idiom for
an empty list is the empty string.

One way to handle this in GNU Make is

ifeq($(PACKAGES),)
PACKAGES = ""
endif

(Untested, IIRC -- the point is that make doesn't care about the
quotation marks at all, so it passes the literal string '""' to the
shell as the value of the make variable PACKAGES.)


More information about the Mailman-Users mailing list