summaryrefslogtreecommitdiff
path: root/doc
AgeCommit message (Collapse)AuthorFilesLines
2012-01-16Update copyright notices.Paul Smith2-2/+2
2012-01-15Add GNU Guile as an optional embedded scripting language for make.Paul Smith1-117/+339
On configure-enabled systems, configure will detect Guile installed (using pkg-config, which is how GNU Guile is distributed) and enable it if so. On all non-configure-enabled systems, currently, the default is for Guile support to be disabled.
2011-09-12Ensure variables defined in $(call ...) have global scopePaul Smith1-1/+3
Add a note about using #!/usr/bin/make -f to the manual. Clean up the w32 subdirectory in the dist tarball.
2011-05-02Updated documentation to fix Savannah bugs #32058 and #31582Paul Smith1-7/+18
2011-04-18Add new feature: != shell assignment for portability with BSD make.Paul Smith1-3/+47
Feature submitted by David Wheeler.
2011-02-21* Fixups to the make man pagePaul Smith1-11/+13
* Minor syntax cleanups in the manual * In non-maintainer mode set NDEBUG to disable assert() * Performance improvements in strcache: Build Info 1000 2000 4000 3.82 -g 2.61s 8.85s 33.52s 3.82 -O2 1.90s 7.62s 27.82s New -g (with asserts) 1.03s 2.31s 5.79s New -O2 (no asserts) 0.65s 1.50s 3.52s
2010-11-30Check if the target-specific variable is the same as the globalPaul Smith1-5/+5
variable, and if so don't try to update it. Savannah bug #31743.
2010-11-06Improve backslash/newline handling to adhere to POSIX requirements.Paul Smith1-10/+13
2010-08-29Bump the version to 3.82.90.Paul Smith1-14/+33
Fix some doc bugs. Implement the --trace flag. Show filename/linenumber on error.
2010-07-19- Many fixup patches from Savannah.Paul Smith1-45/+158
- Fix the test suite on Solaris (from Boris) - Update the manual for .ONESHELL
2010-07-13Update copyrights for 2010.Paul Smith1-2/+2
2010-07-06- Enhance .POSIX to set -e when invoking shells, as demanded by aPaul Smith1-1/+21
backward-incompatible change in the 2008 POSIX specification. - Add the .SHELLFLAGS variable so people can choose their own shell flags. - Add tests for this. - Add documentation for this.
2009-11-12Implement linker-compatible library search.Boris Kolpackov1-7/+4
2009-10-25New command line option: --eval=STRING will cause STRING to bePaul Smith1-0/+9
evaluated as a makefile statement before the first makefile is read.
2009-10-06Implement the new undefine directive.Boris Kolpackov1-2/+43
2009-09-28- Update manual description for pattern rule search algorithmPaul Smith1-30/+53
- Add new "-all" flag to the test suite to run tests that don't pass yet - Add some non-passing tests - Fix from Andreas Buening for OS/2.
2009-09-28Implement the shortest stem first search order for pattern-specific ↵Boris Kolpackov1-11/+48
variables and pattern rules.
2009-09-12- Fix Savannah bug #21824: don't loop through NULL cmds pointerPaul Smith1-5/+10
- Fix Savannah bugs #24509, 18963: doc enhancements
2009-08-02- Fix Savannah bug #27093Paul Smith1-8/+8
- Fix Savannah bug #27143 - Fix Savannah bug #23960 - Fix Savannah bug #27148
2009-08-01Changes from Ralf Wildenhues.Paul Smith1-0/+5
2009-06-13- Fix Savannah bug #13401Paul Smith1-5/+6
2009-06-04- Modify access of config and gnulib Savannah modules to use GITPaul Smith1-95/+133
- Fix Savannah bug #24655. - Fix Savannah bug #24588. - Fix Savannah bug #24277. - Fix Savannah bug #25697. - Fix Savannah bug #25694. - Fix Savannah bug #25460. - Fix Savannah bug #26207. - Fix Savannah bug #25712. - Fix Savannah bug #26593. - Fix various doc issues.
2009-05-26Add 'private' variable modifier, feature submitted by Ramon Garcia.Paul Smith1-24/+43
Rework the parser for variables to allow multiple modifiers and also allow for variables and targets with modifier names, like "export" and "private".
2009-05-24We had the incorrect ISBN in the manual; not sure what happened herePaul Smith1-2/+2
but the FSF confirmed that we had the wrong one.
2008-05-18Manual typo.Paul Smith1-1/+1
New translation.
2007-11-04New special variable: .RECIPEPREFIXPaul Smith1-922/+937
Allows the user to reset the prefix character for introducing recipe lines from the default (tab) to any other single character, and back again. Also, reworked the manual to consistently use the word "recipe" to describe the set of commands we use to update a target, instead of the various phrases used in the past: "commands", "command lines", "command scripts", etc.
2007-08-15Incorporate Icarus Sparry's fix for 3330 and 15919, and test cases.Paul Smith1-2/+3
One of our translations disappeared from the translations site so remove it. The fdl.texi file was changed to not contain any @node entries, so add some around it in make.texi.
2007-07-04* Update to GPLv3Paul Smith2-12/+13
* Update copyright to 2007 * Fix download URL for translation files (thanks to Thiemo Seufer)
2007-06-19Fix a core dump when reading_file is 0 (20033).Paul Smith1-1/+1
Fix some manual typos (20018).
2007-05-11Fix some documentation gitches.Paul Smith1-35/+27
Fix an uninitialized variable. Add builtin rules for Objective C. Add a new debug line that shows where the commands that are about to be run were defined.
2006-10-01Fixed a number of documentation bugs, plus some build/install issues:Paul Smith1-23/+61
16304, 16468, 16577, 17701, 17880, 16051, 16652, 16698 Plus some from the mailing list. Imported a patch from Eli to allow Cygwin builds to support DOS-style pathnames.
2006-04-01Release GNU make 3.81.Paul Smith2-65/+45
Update NEWS docs. Enhance the manual to use automake version.texi, and use the canonical FSF copyright features and statement. Some $(realpath ...) tests won't work on Windows; leave them out The jobserver filedescriptor test might fail if some FDs are reserved, so for now comment out that check.
2006-02-14Some memory leak cleanups (found with valgrind).Paul Smith1-18/+23
2006-02-11Last of the copyright updates.Paul Smith1-2/+2
2006-02-11Update copyright and license notices on all files.Paul Smith2-4/+20
Added new file strcache.c to various non-UNIX makefiles and build scripts.
2006-02-10- New code capability: a read-only string cache. Start of solution forPaul Smith1-39/+68
Savannah bug #15182, but not much uses it yet. Coming shortly. - Added short-circuiting $(and ..) and $(or ...) functions.
2006-02-06Fix Savannah bugs # 15341, 15534, and 15533.Paul Smith1-158/+320
Rewrite large chunks of the "Commands" section of the manual to better describe then backslash-newline handling, the SHELL variable, etc.
2006-02-01Various updates, mainly to the Windows port, from Eli Zaretskii andPaul Smith1-9/+9
Markus Maurhart.
2006-01-04Various changes getting ready for the release of 3.81.Paul Smith1-72/+124
- Updates to make.texi and make.1 and other documentation - Some VMS patches - Fix minor bugs reported on the mailing list and from Debian.
2005-11-17Implemented the flavor function which returns the flavor ofBoris Kolpackov1-2/+52
a variable ('simple', 'recursive', or 'undefined').
2005-11-14Implemented the .INCLUDE_DIRS special variable. It expands to a listBoris Kolpackov1-0/+5
of directories that make searches for included makefiles.
2005-10-24Make second expansion optional (partial implementation).Paul Smith1-16/+46
I decided this feature was too impacting to make the permanent default behavior. This set of changes makes the default behavior of make the old behavior (no second expansion). If you want second expansion, you must define the .SECONDEXPANSION: special target before the first target that needs it. This set of changes ONLY fixes explicit and static pattern rules to work like this. Implicit rules still have second expansion enabled all the time: I'll work on that next. Note that there is still a backward-incompatibility: now to get the old SysV behavior using $$@ etc. in the prerequisites list you need to set .SECONDEXPANSION: as well.
2005-08-08- Fixed a bug reported by Michael Matz regarding handling of parallelPaul Smith1-1/+1
jobs after a failed job. - Enhancements to WINDOWS32 code from Eli Zaretskii. - Add Microsoft Project files from J. Grant.
2005-06-27Fix strerror() handling for systems which set ANSI_STRING.Paul Smith1-1/+6
Don't print errors if "include" is specified with no arguments. New test suite for the $(shell ...) function.
2005-06-26Fix Savannah bug # 1332: handle backslash-newline pairs in command scriptsPaul Smith1-8/+50
according to POSIX rules.
2005-06-25Add a new variable: MAKE_RESTARTS, to count how many times make has re-exec'd.Paul Smith1-2/+14
When rebuilding makefiles, unset -B if MAKE_RESTARTS is >0.
2005-06-12Fix Savannah bug # 1328: if stdout is redirected to a full filesystem, wePaul Smith1-1/+1
check for this and exit with an error. The closeout.c version from gnulib pulls in too much other stuff, and gnulib requires an ANSI C 89 compliant compiler, while GNU make (so far) still wants to work on K&R.
2005-05-13Implement new "if... else if... endif" semantics.Paul Smith1-5/+21
2005-05-08Document the secondary expansion method. Also, some other documentationPaul Smith1-58/+239
cleanups. If we find a make error (invalid makefile syntax or something like that) write back any tokens we have before we exit. If we have waiting jobs (using -j + -l) set an alarm before we sleep on the read() system call, so we can wake up to check the load and start waiting jobs, if there are long-running jobs we would otherwise be waiting for. Suggested by Grant Taylor.
2005-05-03Fix problems with losing tokens in the jobserver, reported by GrantPaul Smith1-6/+61
Taylor. There are two forms of this: first, it was possible to lose tokens when using -j and -l at the same time, because waiting jobs were not checked when determining whether any jobs were outstanding. Second, if you had an exported recursive variable that contained a $(shell ...) function there is a possibility to lose tokens, since a token was taken but the child list was not updated until after the shell function was complete. To resolve this I introduced a new variable that counted the number of tokens we have obtained, rather than checking whether there were any children on the list. I also added some sanity checks to make sure we weren't writing back too many or not enough tokens. And, the master make will drain the token pipe before exiting and compare the count of tokens at the end to what was written there at the beginning. Also: * Ensure a bug in the environment (missing "=") doesn't cause make to core. * Rename the .DEFAULT_TARGET variable to .DEFAULT_GOAL, to match the terminology in the documentation and other variables like MAKECMDGOALS. * Add documentation of the .DEFAULT_GOAL special variable. Still need to document the secondary expansion stuff...