[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

GNU Make 4.2 released!

From: Paul Smith
Subject: GNU Make 4.2 released!
Date: Sun, 22 May 2016 09:58:52 -0400

Hash: SHA1

    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:

The next stable release of GNU make, 4.2, is available now for download:

    85ad14d08766201ffe71efa866f4fb91  make-release/make-4.2.tar.bz2
    1141ca815c806a5bfedbbaa1551410f3  make-release/make-4.2.tar.gz

You can obtain a copy from: 
You can choose a nearby mirror:
A list of mirror sites is available:

- - NEWS ----------------------------------------------------------------

A complete list of bugs fixed in this version is available here:

* New variable: $(.SHELLSTATUS) is set to the exit status of the last != or
  $(shell ...) function invoked in this instance of make.  This will be "0" if
  successful or not "0" if not successful.  The variable value is unset if no
  != or $(shell ...) function has been invoked.

* The $(file ...) function can now read from a file with $(file <FILE).
  The function is expanded to the contents of the file.  The contents are
  expanded verbatim except that the final newline, if any, is stripped.

* The makefile line numbers shown by GNU make now point directly to the
  specific line in the recipe where the failure or warning occurred.
  Sample changes suggested by Brian Vandenberg <address@hidden>

* The interface to GNU make's "jobserver" is stable as documented in the
  manual, for tools which may want to access it.

  WARNING: Backward-incompatibility! The internal-only command line option
  --jobserver-fds has been renamed for publishing, to --jobserver-auth.

* The amount of parallelism can be determined by querying MAKEFLAGS, even when
  the job server is enabled (previously MAKEFLAGS would always contain only
  "-j", with no number, when job server was enabled).

* VMS-specific changes:

  * Perl test harness now works.

  * Full support for converting Unix exit status codes to VMS exit status
    codes.  BACKWARD INCOMPATIBILITY Notice: On a child failure the VMS exit
    code is now the encoded Unix exit status that Make usually generates, not
    the VMS exit status of the child.

- - Log -----------------------------------------------------------------

Benedikt Morbach (1):
      * tests/scripts/features/archives: [SV 43405] override AR variable.

Christian Boos (1):
      Fix $(shell) on hosts with 64-bit pid_t.

Duncan Moore (1):
      * job.c [RISCOS]: Remove logic that is no longer required.

Eli Zaretskii (7):
      [SV 44348] Fix handling of shell widlcards on MS-Windows.
      [SV 45515] Ignore Windows-specific build artifacts
      [SV 45838] When invoking w32 programs, don't use free'd memory.
      [SV 46304] Don't invoke C++ compiler on C sources on MS-Windows
      Update README.W32.template
      Fix the MS-Windows MinGW build
      [SV 47942] Avoid random crashes in subordinate programs on MS-Windows

Gisle Vanem (1):
      Fix diagnostics on MS-Windows when environment is too large

James Johnston (1):
      [SVN 45515] Check exit status of sub-make in subproc.bat

Joe Crayne (1):
      [SV 44742] Fix double-colon rules plus parallel builds.

John Malmberg (6):
      Set up for running tests on VMS.
      [SV 42447]: VMS simulate exporting symbols
      [SV 41758]: Fix archive support for VMS.
      Update README.VMS and move news to the NEWS file
      Fix VMS implicit rules and UNIX paths.
      Fix bs-nl handling, exit and Environment for VMS.

Paul Eggert (1):
      Fixes for enhanced GCC warnings.

Paul Smith (55):
      *, NEWS, README.git: Set up for the next release.
      * main.c (main): [SV 43434] Handle NULL returns from ttyname().
      * remake.c (update_file): [SV 44742] Keep double-colon rule status.
      * strcache.c: [SV 45275] Handle very long strings.
      * read.c (unescape_char): [SV 45050] Handle final backslashes.
      [SV 45049] Check for '$' being the last character in a string.
      * job.c: [SV 43936] Check sigaction for error return.
      * tests/scripts/misc/fopen-fail: [SV 42390] Increase test timeout.
      [SV 28092] Preserve the exit status of the $(shell...) function.
      * implicit.c (pattern_search): [SV 43677] Mark files secondary.
      * doc/make.texi: [SV 35455] Add more uses for Empty Recipes.
      * doc/make.texi: [SV 47163] Fix typo in 'ifdef' documentation.
      Update Copyright statements for the new year.
      * tests/scripts/features/archives: Handle deterministic archives.
      * main.c (define_makeflags): Add parens to avoid GCC warning.
      [SV 47151] Exit with 1 when checking recursive make -q
      * strcache.c (add_string): [SV 47071] Handle huge initial string.
      * strcache.c (add_hugestring): [SV 46832] Support huge strings.
      [SV 46261] Add more EINTRLOOP wrappers.
      Extract jobserver implementation into OS-specific files.
      Clean up some compiler warnings.
      [SV 46261] Use pselect() for jobserver where supported.
      * job.c (exec_command): [SV 47365] Show error on exec failure.
      [SV 44555] Use vfork() instead of fork() where available.
      [SV 46581] Pre-define .LOADED to avoid warnings.
      * main.c(main): Disable output sync without parallel builds.
      [SV 45728] Detect changes in .VARIABLES more accurately.
      * variable.c: Align type of variable_changenum.
      * job.c (child_error): Combine file info with error message.
      * doc/make.texi (Setting Variables): Fix typo (add comma).
      * function.c (func_file): Support reading from files.
      [SV 46995] Strip leading/trailing space from variable names
      * variable.c: Clean up some memory leaks.
      * tests/ Preserve $make_command
      Change --jobserver-fds to more generic --jobserver-auth.
      * docs/make.texi: [SV 47392] Add "Integrating make" chapter.
      * make.texi: Confirm that CURDIR contains an absolute path.
      *, w32/ Fix *os.c for Windows builds.
      * main.c (main): Restrict disabling debugging for MAKEFILES.
      * job.c (child_execute_job): Fix $(shell...) under NO_OUTPUT_SYNC.
      * maintMakefile: Fix logging of check-alt-config target.
      * tests/ Add file/lineno info to .run file.
      Preserve the real value of -jN in MAKEFLAGS using jobserver.
      * job.c (child_error): Add filename length to output length.
      [SV 102] Don't show unnecessary include file errors.
      * maintMakefile: Add a rule for storing preprocessor output.
      [SV 46433] Show recipe line offsets in line number messages.
      * dep.h, makeint.h (show_goal_error): Move to makeint.h.
      * NEWS: Update for pre-release
      * tests/scripts/features/output-sync: increase test timeout.
      Allow compiling with an ISO C 1989/1990 compiler.
      Fix compile issues with Windows and VMS.
      Separate the GNU make load ABI from internal types.
      * read.c (eval): [SV 47960] Skip record waiting files when ignoring.
      GNU Make release 4.2.
Version: GnuPG v1


reply via email to

[Prev in Thread] Current Thread [Next in Thread]