gnumake: 4.3 -> 4.4

Notable changes (have a chance to break some projects):

    * WARNING: Backward-incompatibility!
      Previously each target in a explicit grouped target rule was considered
      individually: if the targets needed by the build were not out of date the
      recipe was not run even if other targets in the group were out of date.  Now
      if any of the grouped targets are needed by the build, then if any of the
      grouped targets are out of date the recipe is run and all targets in the
      group are considered updated.

    * WARNING: Backward-incompatibility!
      Previously only simple (one-letter) options were added to the MAKEFLAGS
      variable that was visible while parsing makefiles.  Now, all options are
      available in MAKEFLAGS.  If you want to check MAKEFLAGS for a one-letter
      option, expanding "$(firstword -$(MAKEFLAGS))" is a reliable way to return
      the set of one-letter options which can be examined via findstring, etc.

    * WARNING: Backward-incompatibility!
      Previously makefile variables marked as export were not exported to commands
      started by the $(shell ...) function.  Now, all exported variables are
      exported to $(shell ...).  If this leads to recursion during expansion, then
      for backward-compatibility the value from the original environment is used.
      To detect this change search for 'shell-export' in the .FEATURES variable.

Notable features:

    * New feature: The --shuffle command line option
      This option reorders goals and prerequisites to simulate non-determinism
      that may be seen using parallel build.  Shuffle mode allows a form of "fuzz
      testing" of parallel builds to verify that all prerequisites are correctly
      described in the makefile.

Changes: https://lists.gnu.org/archive/html/bug-make/2022-10/msg00247.html
This commit is contained in:
Sergei Trofimovich 2022-10-31 07:54:25 +00:00
parent 4a9f9e03fc
commit df7b6e6acc

View file

@ -14,11 +14,11 @@ in
stdenv.mkDerivation rec {
pname = "gnumake";
version = "4.3";
version = "4.4";
src = fetchurl {
url = "mirror://gnu/make/make-${version}.tar.gz";
sha256 = "06cfqzpqsvdnsxbysl5p2fgdgxgl9y4p7scpnrfa8z2zgkjdspz0";
sha256 = "sha256-WB9NToctp0s5Qch0IViYp9NYAvA3Mr3M7h1KeXkQXRg=";
};
# to update apply these patches with `git am *.patch` to https://git.savannah.gnu.org/git/make.git