GNU make 4.2.92 release candidate available
Paul Smith <[email protected]> Tue, 08 Oct 2019 08:48:17 -0400
| Newsgroups | gmane.comp.gnu.make.windows |
|---|---|
| Organization | GNU's Not UNIX! |
| Message-ID | <ae0f9c50f7e1588dfec28a261ee32fb24458b03f.camel__12160.2271030255$1570538924$gmane$org@gnu.org> |
--===============8025539551001311620==
Content-Type: multipart/signed; micalg="pgp-sha512";
protocol="application/pgp-signature"; boundary="=-iPuy0OdJlOPV3UW9r1mO"
--=-iPuy0OdJlOPV3UW9r1mO
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
--------------------------------------------------------------------
GNU make is a tool which controls the generation of executables and
other non-source files of a program from the program's source files.
You can learn more at: https://www.gnu.org/software/make/
--------------------------------------------------------------------
A new release candidate for GNU make 4.3 is available now for download:
075899c074bab8dac6944a17c8ef25fe make-4.2.92.tar.bz2
fd6a03ba0b1c2bfabb6d2cc90c8b9102 make-4.2.92.tar.gz
You can obtain a copy from: https://alpha.gnu.org/gnu/make/
- NEWS ----------------------------------------------------------------
Version 4.2.92 (08 Oct 2019)
A complete list of bugs fixed in this version is available here:
http://sv.gnu.org/bugs/index.php?group=3Dmake&report_id=3D111&fix_release_i=
d=3D108&set=3Dcustom
* WARNING: Backward-incompatibility!
Number signs (#) appearing inside a macro reference or function invocatio=
n
no longer introduce comments and should not be escaped with backslashes:
thus a call such as:
foo :=3D $(shell echo '#')
is legal. Previously the number sign needed to be escaped, for example:
foo :=3D $(shell echo '\#')
Now this latter will resolve to "\#". If you want to write makefiles
portable to both versions, assign the number sign to a variable:
H :=3D \#
foo :=3D $(shell echo '$H')
This was claimed to be fixed in 3.81, but wasn't, for some reason.
To detect this change search for 'nocomment' in the .FEATURES variable.
* WARNING: Backward-incompatibility!
Previously appending using '+=3D' to an empty variable would result in a =
value
starting with a space. Now the initial space is only added if the variab=
le
already contains some value. Similarly, appending an empty string does n=
ot
add a trailing space.
* WARNING: Backward-incompatibility!
On Linux, and any other systems that provide a /proc/loadavg with similar
syntax, the -l/--load-average option will consult that file to determine =
how
many CPUs are busy at that moment and compare that value to the load valu=
e
requested. This allows usage such as "-j -lN" for N-processor systems
without fear of overload during initial startup.
Patch provided by Sven C. Dack <[email protected]>
* WARNING: Backward-incompatibility!
Contrary to the documentation, suffix rules with prerequisites were being
treated BOTH as simple targets AND as pattern rules. Behavior now matche=
s
the documentation, and pattern rules are no longer created in this case.
* New feature: Grouped explicit targets
Pattern rules have always had the ability to generate multiple targets wi=
th
a single invocation of the recipe. It's now possible to declare that an
explicit rule generates multiple targets with a single invocation. To us=
e
this, replace the ":" token with "&:" in the rule. To detect this featur=
e
search for 'grouped-target' in the .FEATURES special variable.
Implementation contributed by Kaz Kylheku <[email protected]>
* Makefiles can now specify the '-j' option in their MAKEFLAGS variable and
this will cause make to enable that parallelism mode.
* GNU make will now use posix_spawn() on systems where it is available.
If you prefer to use fork/exec even on systems where posix_spawn() is
present, you can use the --disable-posix-spawn option to configure. Aron
Barath <[email protected]> provided the basic implementation.
* Error messages printed when invoking non-existent commands have been clea=
ned
up and made consistent.
* The previous limit of 63 jobs under -jN on MS-Windows is now
increased to 4095. That limit includes the subprocess started by
the $(shell) function.
* A new option --no-silent has been added, that cancels the effect of the
-s/--silent/--quiet flag.
* A new option -E has been added as a short alias for --eval.
* All wildcard expansion within GNU make, including $(wildcard ...), will s=
ort
the results. See https://savannah.gnu.org/bugs/index.php?52076
* Interoperate with newer GNU libc and musl C runtime libraries.
* Performance improvements provided by Paolo Bonzini <[email protected]>
GNU make Developer News
* Import the GNU standard bootstrap script to replace the hand-rolled
"make update" method for building code from a GNU make Git repository.
* Rework the source distribution to move source files into the src/*
subdirectory. This aligns with modern best practices in GNU.
* Replace local portability code with Gnulib content. Unfortunately due to=
a
problem with Gnulib support for getloadavg, this forces a requirement on
Automake 1.16 or above in order to build from Git. See README.git.
--=-iPuy0OdJlOPV3UW9r1mO
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEslCKkBAviuOxKgCQ3qzKrtt4E3oFAl2chZIACgkQ3qzKrtt4
E3qM0Q/7B/s+jURp7mg9eovjT90k5fuA3A0PYihFny7bhVThtGri/xQ/7JXUry1+
WLBO5OIaEqyNZXya4V6leaMyPV3+lggQTN+fuNkCJyyoGCE+CI2gWEyOMpzgE/6L
FIajb5VEHEowF4YNAjzz/RUA8lbzRQ2NIygfnQBCHwymReWOJIzGZ0k3yspQ09qv
tVjOrldN3n1wpZoAB4Yn6PY5JH8k+xMhHQO75Ib2NSFg2NWtj4cDGfeMTcUnuIHa
iK8aMZiN2OKC9z3qV0tRkUsl1cV2Wx9hDPvcQBaEcsrFL6ODoVxRAzrDbPPuUK5P
cbVKPizXgreMLvI78ydX8prBJApy6PgZ5RC273xuDeHBd6OHiYojrMcCSL9sLNss
6xHVpChI5bC2lSaqatsbRJStckigLr/oGsg1FIb2E2qEH1mmTFWtDg38Nchyxb69
3qT+BgaeocKTYMyvl9veSyrIhW3BOV4X3yrqJ5PNUq+INGJHndWN+IILYIIxSCA1
I/F6u9Yk7Glr8ezQGFNR7HArjQz42fER9p0r9N1CcJxhCGj+vqKfBTpLR867lxCS
UaOffPHcW2BPpCZSFd8wj1nfn0DRQHBeDRJcRQF+hLXN09MbethD3AqO35NQfogL
Bq3dmBohPSc/6yJGXNmC9jEip4yd+/B3Xg4FUx+SJoX49Ge1NrE=
=jOJ+
-----END PGP SIGNATURE-----
--=-iPuy0OdJlOPV3UW9r1mO--
--===============8025539551001311620==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWFrZS13MzIg
bWFpbGluZyBsaXN0Ck1ha2UtdzMyQGdudS5vcmcKaHR0cHM6Ly9saXN0cy5nbnUub3JnL21haWxt
YW4vbGlzdGluZm8vbWFrZS13MzIK
--===============8025539551001311620==--