summaryrefslogtreecommitdiff
path: root/tests/scripts/variables
AgeCommit message (Collapse)AuthorFilesLines
2013-09-12Enhance the output sync mode.Paul Smith3-4/+8
Create a new file, output.c, and collect functions that generate output there. We introduce a new global context specifying where output should go (to stdout or to a sync file), and the lowest level output generator chooses where to write output based on that context. This allows us to set the context globally, and all operations that write output (including functions like $(info ...) etc.) will use it. Removed the "--trace=dir" capability. It was too confusing. If you have directory tracking enabled then output sync will print the enter/leave message for each synchronized block. If you don't want that, disable directory tracking.
2013-05-22Fix regression tests after MAKEFLAGS enhancements.Paul Smith2-7/+7
2013-05-13Add a new variable: GNUMAKEFLAGSPaul Smith1-0/+24
This allows you to write portable makefiles that set GNU make-specific command line options in the environment or makefile: add them to GNUMAKEFLAGS instead of MAKEFLAGS and they will be seen by GNU make but ignored by other implementations of make.
2013-05-13Use level o_env_override for MAKEFLAGS so it's reset even with -e.Paul Smith1-14/+10
Fixes Savannah bug #2216.
2013-05-05cosmetics: fix few innocuous typosStefano Lattarini1-1/+1
Most of these were found using Lucas De Marchi's 'codespell' tool. * ChangeLog: Fix minor typos. * ChangeLog.2: Likewise. * README.Amiga: Likewise. * TODO.private: Likewise. * function.c: Likewise. * glob/glob.h: Likewise. * job.c: Likewise. * main.c: Likewise. * readme.vms: Likewise. * remake.c: Likewise. * tests/ChangeLog: Likewise. * tests/NEWS: Likewise. * tests/README: Likewise. * tests/scripts/variables/private: Likewise. * vmsdir.h: Likewise. * signame.c: Likewise. While at it, improve line wrapping in the touched comment. Copyright-paperwork-exempt: yes Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
2012-03-04Ensure appending private variables in pattern-specific target variables.Paul Smith1-0/+32
Fixes Savannah bug #35468.
2012-03-04Convert all "`'" quotes to "''" per new GNU Coding Standard guidelines.Paul Smith6-10/+10
Fixes Savannah bug #34530.
2012-03-03Ensure that .ONESHELL works with .SHELLFLAGS options containing whitespace.Paul Smith1-0/+8
See Savannah bug #35397.
2012-01-30Add support for "::=" simple assignment operator.Paul Smith2-1/+69
The next POSIX standard will define "::=" to have the same behavior as GNU make's ":=", so add support for this new operator.
2011-05-07Ensure private variables are not used when appending target-specificPaul Smith1-0/+12
variables. Fixes Savannah bug #32872.
2010-11-06Improve backslash/newline handling to adhere to POSIX requirements.Paul Smith1-1/+1
2010-08-29Bump the version to 3.82.90.Paul Smith1-1/+2
Fix some doc bugs. Implement the --trace flag. Show filename/linenumber on error.
2010-07-28Release GNU make 3.823.82Paul Smith1-10/+12
- Update tests for Solaris bizarre-ness - Update files for release
2010-07-19- Many fixup patches from Savannah.Paul Smith1-6/+17
- Fix the test suite on Solaris (from Boris) - Update the manual for .ONESHELL
2010-07-06- Enhance .POSIX to set -e when invoking shells, as demanded by aPaul Smith1-0/+14
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-10-06Implement the new undefine directive.Boris Kolpackov1-0/+73
2009-10-03- Include <alloca.h> even on non-__GNUC__ systems.Paul Smith2-28/+60
- Add some tests for unresolved bugs.
2009-06-13- Fix Savannah bug #13401Paul Smith1-0/+19
2009-06-07- Add a new test suite for LIBPATTERNSPaul Smith2-0/+50
- Fix Savannah bug #21198 - Fix Savannah bug #21823 - Fix Savannah bug #22010
2009-06-06- Work around a bug in glibc glob(3), by avoiding GLOB_NOCHECK.Paul Smith1-3/+6
- Fix issue in very parallel builds found building glibc.
2009-06-05- Add forgotten variable/define test suitePaul Smith2-1/+235
- Skip initial whitespace including formfeeds, vertical tab, etc. - Add tests for that - Fix the variable/SHELL test; it was wrong!
2009-06-04- Modify access of config and gnulib Savannah modules to use GITPaul Smith2-158/+60
- 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-0/+78
Rework the parser for variables to allow multiple modifiers and also allow for variables and targets with modifier names, like "export" and "private".
2007-11-04New special variable: .RECIPEPREFIXPaul Smith1-0/+63
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.
2006-10-01Fixed a number of documentation bugs, plus some build/install issues:Paul Smith1-11/+10
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-03-10Numerous updates to tests for issues found on Cygwin and Windows.Paul Smith1-8/+11
Revert a fix for $? including non-existent files as it shows a bug in the Linux kernel build. Give them a release to fix this. Add some changes from Eli Z. for Windows changes.
2006-02-15Fix Savannah bug #106: keep separate track of which variable we arePaul Smith1-0/+46
expanding, and use that info when generating error messages instead of the file info, where appropriate.
2006-01-04Various changes getting ready for the release of 3.81.Paul Smith1-5/+16
- 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-14Implemented the .INCLUDE_DIRS special variable. It expands to a listBoris Kolpackov1-0/+46
of directories that make searches for included makefiles.
2005-10-24Make second expansion optional (partial implementation).Paul Smith1-3/+4
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-25If we're on a DOS/W32/OS2 system and we're not using a unixy shell, don'tPaul Smith1-10/+10
follow POSIX backslash/newline conventions. Use a different method for testing the SHELL variable, which hopefully will work better on non-UNIX systems.
2005-07-12Various minor updates and code cleanups.Paul Smith1-3/+10
2005-07-04Various fixes and updates from testers of the beta3 release (mostly WindowsPaul Smith1-1/+1
and OS/2 changes).
2005-06-25Add a new variable: MAKE_RESTARTS, to count how many times make has re-exec'd.Paul Smith1-0/+62
When rebuilding makefiles, unset -B if MAKE_RESTARTS is >0.
2005-05-03Fix problems with losing tokens in the jobserver, reported by GrantPaul Smith1-12/+12
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-03-15Fixed Savannah bug #12320.Boris Kolpackov1-0/+15
2005-03-09Fixed Savannah bug #12266.Boris Kolpackov1-1/+20
2005-02-28* New feature: -L optionPaul Smith2-1/+3
* 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-27Implementation of the .DEFAULT_TARGET special variable.Boris Kolpackov1-0/+59
2005-02-27Implementation of the second expansion in explicitBoris Kolpackov1-2/+2
rules, static pattern rules and implicit rules.
2004-11-29Fix bug #10252: Remove any trailing slashes from -C arguments (WINDOWS32).Paul Smith1-0/+25
Add a regression test for "@" before a define/enddef vs. one inside.
2004-11-28Fix for bug #1276: Handle SHELL according to POSIX requirements.Paul Smith2-2/+50
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-09-21Add some more unit tests for variable flavors.Paul Smith1-0/+73
Allow run_make_tests() to be invoked with an undef makefile string, in which case it re-uses the previous string.
2004-05-16Various enhancementsPaul Smith1-18/+4
- OS/2 Patches - OpenVMS updates - Sanitize the handling of -include/sinclude with and without -k - Fix the setting of $< for order-only rules.
2004-03-22Numerous updates and bug fixes.Paul Smith1-1/+1
A number of W32 cleanups from J.Grant. A number of OS/2 cleanups from Andreas Buening. Various random bug fixes.
2002-10-05Fix core dump on malformed variable line (Debian bug #81656)Paul Smith1-0/+6
Allow SysV-style variable references to use {} in addition to (). Add variable.h to the POTFILES.in since it has a translatable string.
2002-09-10A few test bug fixes:Paul Smith1-0/+2
* Never use "touch" in make rules; it breaks on most sub-second supporting systems. Use echo "" > $@ instead. * Forgot to close test makefiles before using them! All the above worked fine on Linux but failed miserably on Solaris.
2002-08-08Incorporate some VMS fixes.Paul Smith1-0/+68
Add -B option docs. Add .VARIABLES variable. Add a few new tests. Add a new translation: Swedish
2002-07-10Implement SysV-style $$@ support. I looked at E.Parmelan's patch butPaul Smith1-3/+26
decided to implement this a different way, and didn't use it.
2002-07-09Documentation and tests for order-only prerequisites.Paul Smith1-0/+50
Add a new test suite for automatic variables.