summaryrefslogtreecommitdiff
path: root/doc/make.texi
AgeCommit message (Collapse)AuthorFilesLines
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 Smith1-4/+4
* 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 Smith1-64/+43
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-11Update copyright and license notices on all files.Paul Smith1-4/+5
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...
2005-04-08Fix some Savannah bugs.Paul Smith1-10/+44
Updates to docs (still need more work here) and NEWS file. New language.
2005-03-04- Missing docs for $|Paul Smith1-5/+14
- Update NEWS and AUTHORS files. - Fix support request #103195. - Apply patch #3679 - Fix handling of sys_siglist in autoconf/etc.
2005-02-28* New feature: -L optionPaul Smith1-0/+17
* New function: $(info ...) * Disallow $(eval ...) to create prereq relationships inside command scripts (caused core dumps) * Try to allow more tests to succeed in Windows/DOS by sanitizing CRLF and \ * Various bug fixes and code cleanups (see the ChangeLog entry)
2005-02-16Add a patch from Paul Eggert that's been lying around in my directory forPaul Smith1-2/+4
a long time, disabling stack size limits where possible. Update version to beta2.
2004-12-06Handle build.sh in a better way (recommendation from the automake mailingPaul Smith1-2/+0
list).
2004-11-30Implemented `realpath' and `abspath' built-in functions.Boris Kolpackov1-0/+32
2004-11-28Fix for bug #1276: Handle SHELL according to POSIX requirements.Paul Smith1-19/+37
POSIX requires that the value of SHELL in the makefile NOT be exported to sub-commands. Instead, the value in the environment when make was invoked should be passed to the environment of sub-commands. Note that make still uses SHELL to _run_ sub-commands; it just doesn't change the value of the SHELL variable in the environment of sub-commands. As an extension to POSIX, if the makefile explicitly exports SHELL then GNU make _will_ use it in the environment of sub-commands.
2004-10-21New $(lastword ) built-in function: implementation, documentation and tests.Boris Kolpackov1-19/+43
2004-05-16Various enhancementsPaul Smith1-8/+18
- OS/2 Patches - OpenVMS updates - Sanitize the handling of -include/sinclude with and without -k - Fix the setting of $< for order-only rules.
2004-02-23Numerous fixes: patches for OS/2; core for -f ''; makefile updates.Paul Smith1-12/+10
2004-01-08Enhancements to the documentation (fixes bugs #1772 and 4898).Paul Smith1-10/+25
Add "!" to the list of shell escape characters: POSIX sh allows it to be used to negate the return value of the command.
2003-11-03Added MINGW32 changes.Paul Smith1-16/+16
This commits a number of changes from Earnie Boyd that allows GNU make to build for MINGW32 systems. Only missing from this commit are the changes to configure.in etc.; I'm waiting for Earnie to sign papers for those new files. Also not here is any README.mingw32 etc. which would explain how to use this port.