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==--