[Buildroot] Make 3.82 does behave differently than make 3.81 for sure, but ...
James J. Dines
jdines at jdines.net
Tue Aug 31 12:38:11 UTC 2010
-----BEGIN PGP SIGNED MESSAGE-----
On 08/30/2010 06:15 PM, Malte Starostik wrote:
> Am Montag, 30. August 2010, 23:10:00 schrieb James J. Dines:
>>From make 3.82's NEWS file:
> * WARNING: Backward-incompatibility!
> As a result of parser enhancements, three backward-compatibility issues
> exist: first, a prerequisite containing an "=" cannot be escaped with a
> backslash any longer. [...]. Second, variable names can no
> longer contain whitespace, unless you put the whitespace in a variable and
> use the variable. Third, in previous versions of make it was sometimes
> not flagged as an error for explicit and pattern targets to appear in the
> same rule. Now this is always reported as an error.
> What you're referring to re the kernel Makefile is the third mentioned issue.
> What happens with atk.mk is the second one instead:
> The incorrent Makefile snippet:
> ATK_CONF_OPT = --enable-shared \
> --disable-glibtest --enable-explicit-deps=no \
> assigns the vaue "--enable-shared --enable-static" to a variable named
> "ATK_CONF_OPT" and the value "no --disable-debug" to a variable named "--
> disable-glibtest --enable-explicit-deps".
> I didn't know variable names with spaces (and even leading hyphens) were
> allowed prior to 3.82, but that made make not barf on the above while of
> course depriving $(ATK_CONF_OPT) of some of the options.
> buildroot mailing list
> buildroot at busybox.net
In truth I would have NEVER looked in the NEWS file, as this seems like
it belongs in a file called IMPORTANT or something similar.
Now that I have this info I am armed to really take a look at what is
different about the build now that these errors will be properly caught.
I have begun doing so and will report back on (some of?) my findings
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
-----END PGP SIGNATURE-----
More information about the buildroot