make/tests/scripts/variables
Paul Smith 9ae02b7916 [SV 45728] Detect changes in .VARIABLES more accurately.
For performance, we only recompute .VARIABLES when (a) it's expanded
and (b) when its value will change from a previous expansion.  To
determine (b) we were checking the number of entries in the hash
table which used to work until we started undefining entries: now if
you undefine and redefine the same number of entries in between
expanding .VARIABLES, it doesn't detect any change.  Instead, keep
an increasing change number.
* variables.c: Add variable_changenum.
(define_variable_in_set, merge_variable_sets): Increment
variable_changenum if adding a new variable to the global set.
(undefine_variable_in_set): Increment variable_changenum if
undefining a variable from the global set.
(lookup_special_var): Test variable_changenum not the hash table.
* tests/scripts/variables/special: Test undefining variables.
2016-03-13 18:23:20 -04:00
..
automatic - Add a new test suite for LIBPATTERNS 2009-06-07 17:40:06 +00:00
CURDIR * Fix PR/1394. 1999-10-15 07:00:58 +00:00
DEFAULT_GOAL Convert all "`'" quotes to "''" per new GNU Coding Standard guidelines. 2012-03-04 00:24:20 +00:00
define Convert all "`'" quotes to "''" per new GNU Coding Standard guidelines. 2012-03-04 00:24:20 +00:00
flavors Add support for "::=" simple assignment operator. 2012-01-30 00:21:57 +00:00
GNUMAKEFLAGS * GNUMAKEFLAGS: Remove -O so it passes in NO_OUTPUT_SYNC mode. 2013-10-19 12:05:58 -04:00
INCLUDE_DIRS Implemented the .INCLUDE_DIRS special variable. It expands to a list 2005-11-14 15:31:13 +00:00
LIBPATTERNS Convert all "`'" quotes to "''" per new GNU Coding Standard guidelines. 2012-03-04 00:24:20 +00:00
MAKE Convert all "`'" quotes to "''" per new GNU Coding Standard guidelines. 2012-03-04 00:24:20 +00:00
MAKE_RESTARTS Enhance the output sync mode. 2013-09-12 04:07:52 -04:00
MAKECMDGOALS * A few script fixes and updates for 3.78. 1999-09-17 03:15:37 +00:00
MAKEFILES - Fix Savannah bug #13401 2009-06-13 23:10:52 +00:00
MAKEFLAGS Enhance the output sync mode. 2013-09-12 04:07:52 -04:00
MAKELEVEL Fix for bug #1276: Handle SHELL according to POSIX requirements. 2004-11-28 23:11:23 +00:00
MFILE_LIST * New feature: -L option 2005-02-28 07:48:22 +00:00
negative Fix Savannah bug #106: keep separate track of which variable we are 2006-02-15 23:54:42 +00:00
private cosmetics: fix few innocuous typos 2013-05-05 20:50:37 -04:00
SHELL Solaris /bin/sh can't handle multiple options ("-e -c"). 2013-09-30 00:12:18 -04:00
special [SV 45728] Detect changes in .VARIABLES more accurately. 2016-03-13 18:23:20 -04:00
undefine Implement the new undefine directive. 2009-10-06 06:56:57 +00:00