FreeBSD 9: make: Error expanding embedded variable

Christian Weisgerber naddy at
Sat Sep 19 22:30:09 UTC 2015

The po/ file shipped with gettext 0.19 triggers a bug
in the old make(1) on FreeBSD 9 that causes this cryptic error:

Error expanding embedded variable.

A minimal Makefile to reproduce the problem is this:

BAR = $(FOO$(BAZ))
all: $(BAR)

The bug no longer exists in bmake.

If you google for the error message, you'll find the advice "use
gmake", which is not particularly appropriate in this case, since
po/ is portable and does not use any gmake features.

The po/ that ships with gettext is copied into a
zillion projects.  I ran into the problem when pkg-fallout sent me
a report about my recent archivers/gcpio update.  I expect the
problem to spread, as projects start using newer versions of this

Here's the fix I used:

--- po/	2015-09-12 10:51:46 UTC
+++ po/
@@ -80,6 +80,7 @@ CATALOGS = @CATALOGS@
 POFILESDEPS_ = $(srcdir)/$(DOMAIN).pot
 DISTFILESDEPS_ = update-po
Christian "naddy" Weisgerber                          naddy at

More information about the freebsd-ports mailing list