GNU make 4.2.90 release candidate available
Paul Smith <[email protected]> Mon, 26 Aug 2019 09:00:13 -0400
| Newsgroups | gmane.comp.gnu.make.windows,gmane.comp.gnu.make.bugs |
|---|---|
| Organization | GNU's Not UNIX! |
| Message-ID | <[email protected]> |
--===============8530952136780134255==
Content-Type: multipart/signed; micalg="pgp-sha512";
protocol="application/pgp-signature"; boundary="=-YIqCWWbAHG48VlZluhiu"
--=-YIqCWWbAHG48VlZluhiu
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:
36083ab822b50a9ecbf5467cdadff55c make-4.2.90.tar.bz2
e2c9abdeaf3725f8654a5e9d7a121fa9 make-4.2.90.tar.gz
You can obtain a copy from: https://alpha.gnu.org/gnu/make/
- NEWS ----------------------------------------------------------------
Version 4.2.90 (26 Aug 2019)
A complete list of bugs fixed in this version is available here:
https://sv.gnu.org/bugs/index.php?group=3Dmake&report_id=3D111&fix_release_=
id=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 use the contents of that file t=
o
determine how many jobs are running at any given instant, and compare tha=
t
value to the load value requested. This allows usage such as "-j -lN" fo=
r
N-processor systems without fear of overload.
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 pthread_spawn() on systems where it is available.
It will select POSIX_SPAWN_USEVFORK where that is available. If you pref=
er
to use fork/exec even on systems where pthread_spawn() is present, you ca=
n
use the --disable-pthread-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.
--=-YIqCWWbAHG48VlZluhiu
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEslCKkBAviuOxKgCQ3qzKrtt4E3oFAl1j190ACgkQ3qzKrtt4
E3oSaA/+M7m3loPeNz3D3KteLwBqWdwc2qCvhDLtO8qmwgvTAvkdThfkAfoTzLvI
OeZYRh/k4asJwpbTRIUmrX3txnRenbd7ot6aF5YqXP4MlwQKPFQ5q8LbHIqA9UQo
A06bmVQjAe6y5msEyKLzlolyomecxz1+tZZGXQq5l8E834oKbODQ+S+AGreyMVAc
63XS8mPtilS71DWrqc2DWowAHSqHfxQefN2KHZ8kijBWQyThe8K9ToxSxRfKYNpe
yNsmiiz3OwEeZi2S9IvtbEvGSCcanIR/ZoUx0PCJbQ1o9tzFuFDZbPp+BvADp9br
ESw4HIJk/wwUN3XOrQfETN/4Q5OyvsAkP3Dxba13f2nDbKDa3YIiwVne+k0Qo8Th
NoAKdTUBw4W0OlGOhUjE9bzOy5Hk0bokCr4feECqMg8D8pesyHG5MugOZUU+goWg
Bo+ubQIfXElDASEjMp/cHNSATuOYld6z2BhCk6hWAgO86LTCJR0YREcD4Svd65+C
+1DZ+Zacv3HKDrmb+Ug0NeWt7+A5FnI5XyPBtZkwq5qAWkjuNaIX+ScbfPwrniGV
QAgWPkmQ6sCYfaupsGwPZuMdZgRfSOII2+mh/wXZ0cH83LQeWb9PI9ntb9PlQUoW
ycaURPtsTwSfw5QItFayf1LOpgLa5cgeJfWH5ghuKAy9LrMzKwY=
=ED7Q
-----END PGP SIGNATURE-----
--=-YIqCWWbAHG48VlZluhiu--
--===============8530952136780134255==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWFrZS13MzIg
bWFpbGluZyBsaXN0Ck1ha2UtdzMyQGdudS5vcmcKaHR0cHM6Ly9saXN0cy5nbnUub3JnL21haWxt
YW4vbGlzdGluZm8vbWFrZS13MzIK
--===============8530952136780134255==--