GNU Make 4.0 has been released and is available now for download:
Or one of the mirrors listed in http://www.gnu.org/order/ftp.html
Get redirected to a nearby mirror at http://ftpmirror.gnu.org/make/
The make utility automatically determines which pieces of a
large program need to be recompiled, and issues commands to
More information about make at: http://www.gnu.org/software/make/
Bug reports/announcements at: https://savannah.gnu.org/projects/make/
Some new features available in this release of GNU Make:
* New feature: GNU Guile integration
This version of GNU make can be compiled with GNU Guile integration.
GNU Guile serves as an embedded extension language for make.
See the "Guile Function" section in the GNU Make manual for details.
Currently GNU Guile 1.8 and 2.0+ are supported.
* New command line option: --output-sync (-O) enables grouping of output by
target or by recursive make. This is useful during parallel builds to avoid
mixing output from different jobs together giving hard-to-understand
* New command line option: --trace enables tracing of targets. When enabled
the recipe to be invoked is printed even if it would otherwise be suppressed
by .SILENT or a "@" prefix character. Also before each recipe is run the
makefile name and linenumber where it was defined are shown as well as the
prerequisites that caused the target to be considered out of date.
* New command line option argument: --debug now accepts a "n" (none) flag
which disables all debugging settings that are currently enabled.
* New feature: The "job server" capability is now supported on Windows.
Implementation contributed by Troy Runkel <[hidden email]>
* New feature: The .ONESHELL capability is now supported on Windows. Support
added by Eli Zaretskii <[hidden email]>.
* New feature: "!=" shell assignment operator as an alternative to the
$(shell ...) function. Implemented for compatibility with BSD makefiles.
Note there are subtle differences between "!=" and $(shell ...). See the
description in the GNU make manual.
Variables ending in "!" previously defined as "variable!= value" will now be
interpreted as shell assignment. Change your assignment to add whitespace
between the "!" and "=": "variable! = value"
* New feature: "::=" simple assignment operator as defined by POSIX in 2012.
This operator has identical functionality to ":=" in GNU make, but will be
portable to any implementation of make conforming to a sufficiently new
version of POSIX (see http://austingroupbugs.net/view.php?id=330). It is
not necessary to define the .POSIX target to access this operator.
* New function: $(file ...) writes to a file.
* Setting the -r and -R options in MAKEFLAGS inside a makefile now works as
expected, removing all built-in rules and variables, respectively.
Plus other enhancements, and over 80 bugs fixed since the last release.
Make-w32 mailing list
signature.asc (205 bytes) Download Attachment
|Free forum by Nabble||Edit this page|