diff options
-rw-r--r-- | AUTHORS | 11 | ||||
-rw-r--r-- | ChangeLog | 18 | ||||
-rw-r--r-- | NEWS | 18 | ||||
-rw-r--r-- | commands.c | 5 | ||||
-rw-r--r-- | configure.in | 10 | ||||
-rw-r--r-- | doc/make.texi | 19 | ||||
-rw-r--r-- | function.c | 4 | ||||
-rw-r--r-- | signame.c | 6 | ||||
-rw-r--r-- | tests/ChangeLog | 4 |
9 files changed, 75 insertions, 20 deletions
@@ -6,6 +6,8 @@ GNU make development up to version 3.75 by: Development starting with GNU make 3.76 by: Paul D. Smith <psmith@gnu.org> + Additional development starting with GNU make 3.81 by: + Boris Kolpackov <boris@kolpackov.net> GNU Make User's Manual @@ -23,6 +25,7 @@ GNU make porting efforts: Port to VMS by: Klaus Kaempf <kkaempf@progis.de> + Hartmut Becker <Hartmut.Becker@hp.com> Archive support/Bug fixes by: John W. Eaton <jwe@bevo.che.wisc.edu> Martin Zinser <zinser@decus.decus.de> @@ -30,11 +33,13 @@ GNU make porting efforts: Port to Amiga by: Aaron Digulla <digulla@fh-konstanz.de> - - Port to MS-DOS (DJGPP) and MS-Windows 95/NT by: + Port to MS-DOS (DJGPP), OS/2, and MS-Windows (native/MinGW) by: DJ Delorie <dj@delorie.com> Rob Tulloh <rob_tulloh@tivoli.com> Eli Zaretskii <eliz@is.elta.co.il> + Jonathan Grant <jg@jguk.org> + Andreas Beuning <andreas.buening@nexgo.de> + Earnie Boyd <earnie@uses.sf.net> ----------------------------------- Other contributors: @@ -47,7 +52,9 @@ Other contributors: Jim Kelton <jim_kelton@tivoli.com> David Lubbren <uhay@rz.uni-karlsruhe.de> Tim Magill <tim.magill@telops.gte.com> + Markus Mauhart <qwe123@chello.at> Greg McGary <greg@mcgary.org> + Thomas Riedl <thomas.riedl@siemens.com> Han-Wen Nienhuys <hanwen@cs.uu.nl> Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> Carl Staelin (Princeton University) @@ -1,4 +1,9 @@ -Thu Mar 3 18:28:15 2005 Boris Kolpackov <boris@kolpackov.net> +2005-03-04 Paul D. Smith <psmith@gnu.org> + + * AUTHORS: Update. + * doc/make.texi (Automatic Variables): Document $|. + +2005-03-03 Boris Kolpackov <boris@kolpackov.net> * read.c (record_files): Instead of substituting % with actual stem value in dependency list replace it with $*. @@ -11,7 +16,16 @@ Thu Mar 3 18:28:15 2005 Boris Kolpackov <boris@kolpackov.net> in dependency list replace it with $*. This fixes stem triple expansion bug. -Tue Mar 1 10:12:20 2005 Boris Kolpackov <boris@kolpackov.net> +2005-03-01 Paul D. Smith <psmith@gnu.org> + + * commands.c (fatal_error_signal) [WINDOWS32]: Don't call kill() + on Windows, as it takes a handle not a pid. Just exit. + Fix from patch #3679, provided by Alessandro Vesely. + + * configure.in: Update check for sys_siglist[] from autoconf manual. + * signame.c (strsignal): Update to use the new autoconf macro. + +2005-03-01 Boris Kolpackov <boris@kolpackov.net> * read.c (record_files): Add a check for the list of prerequisites of a static pattern rule being empty. Fixes Savannah bug #12180. @@ -1,6 +1,6 @@ GNU make NEWS -*-indented-text-*- History of user-visible changes. - 16 February 2005 + 3 March 2005 Copyright (C) 2002,2003,2004,2005 Free Software Foundation, Inc. See the end for copying conditions. @@ -10,12 +10,24 @@ manual, which is contained in this distribution as the file doc/make.texi. See the README file and the GNU make manual for instructions for reporting bugs. -Version 3.81beta2 +Version 3.81beta3 * GNU make is ported to OS/2. * GNU make is ported to MinGW. +* WARNING: Backward-incompatibility! + GNU make now implements a generic "second expansion" feature on the + prerequisites of both explicit and implicit (pattern) targets. After + the rule has been parsed, the prerequisites are expanded a second + time, this time with all the automatic variables in scope. This means + that in addition to using standard SysV $$@ in prerequisites lists, + you can also use complex functions such as $$(patsubst f%r,b%o,$$@) etc. + This behavior applies to implicit rules, as well, where the second + expansion occurs after the rule is matched. + However, this means that you need to double-quote any "$" in your + filenames; instead of "foo: boo$$bar" you must write "foo: foo$$$$bar" + * New command-line option: -L (--check-symlink-times). On systems that support symbolic links, if this option is given then GNU make will use the most recent modification time of any symbolic links that are @@ -41,6 +53,8 @@ Version 3.81beta2 - .DEFAULT_TARGET: Contains the name of the default target make will use if no targets are provided on the command line. It can be set to change the default target. + - New automatic variable: $| (added in 3.80, actually): contains all + the order-only prerequisites defined for the target. * New functions available in this release: - $(lastword ...) returns the last word in the list. This gives @@ -481,10 +481,15 @@ fatal_error_signal (int sig) exit (EXIT_FAILURE); #endif +#ifdef WINDOWS32 + /* Cannot call W32_kill with a pid (it needs a handle) */ + exit (EXIT_FAILURE); +#else /* Signal the same code; this time it will really be fatal. The signal will be unblocked when we return and arrive then to kill us. */ if (kill (getpid (), sig) < 0) pfatal_with_name ("kill"); +#endif /* not WINDOWS32 */ #endif /* not Amiga */ #endif /* not __MSDOS__ */ } diff --git a/configure.in b/configure.in index 4bd77ef..4d09f85 100644 --- a/configure.in +++ b/configure.in @@ -1,6 +1,6 @@ # Process this file with autoconf to produce a configure script. -AC_INIT([GNU make],[3.81rc1],[bug-make@gnu.org]) +AC_INIT([GNU make],[3.81beta3],[bug-make@gnu.org]) AC_PREREQ(2.59) AC_REVISION([[$Id$]]) @@ -167,7 +167,13 @@ if test "$ac_cv_header_nlist_h" = yes; then fi fi -AC_CHECK_DECLS([sys_siglist]) +AC_CHECK_DECLS([sys_siglist],,, +[#include <signal.h> +/* NetBSD declares sys_siglist in unistd.h. */ +#if HAVE_UNISTD_H +# include <unistd.h> +#endif +]) # Check out the wait reality. diff --git a/doc/make.texi b/doc/make.texi index c6f4c1a..0ecd35a 100644 --- a/doc/make.texi +++ b/doc/make.texi @@ -5942,10 +5942,11 @@ returns @samp{bar}. @cindex selecting word lists Returns the list of words in @var{text} starting with word @var{s} and ending with word @var{e} (inclusive). The legitimate values of @var{s} -and @var{e} start from 1. If @var{s} is bigger than the number of words -in @var{text}, the value is empty. If @var{e} is bigger than the number -of words in @var{text}, words up to the end of @var{text} are returned. -If @var{s} is greater than @var{e}, nothing is returned. For example, +start from 1; @var{e} may start from 0. If @var{s} is bigger than the +number of words in @var{text}, the value is empty. If @var{e} is +bigger than the number of words in @var{text}, words up to the end of +@var{text} are returned. If @var{s} is greater than @var{e}, nothing +is returned. For example, @example $(wordlist 2, 3, foo bar baz) @@ -8496,7 +8497,9 @@ prerequisites which are archive members, only the member named is used (@pxref{Archives}). A target has only one prerequisite on each other file it depends on, no matter how many times each file is listed as a prerequisite. So if you list a prerequisite more than once for a target, -the value of @code{$^} contains just one copy of the name. +the value of @code{$^} contains just one copy of the name. This list +does @strong{not} contain any of the order-only prerequisites; for those +see the @samp{$|} variable, below. @cindex prerequisites, list of all @cindex list of all prerequisites @@ -8508,6 +8511,12 @@ duplicated in the order they were listed in the makefile. This is primarily useful for use in linking commands where it is meaningful to repeat library file names in a particular order. +@vindex $| +@vindex | @r{(automatic variable)} +@item $| +The names of all the order-only prerequisites, with spaces between +them. + @vindex $* @vindex * @r{(automatic variable)} @item $* @@ -772,8 +772,8 @@ func_wordlist (char *o, char **argv, const char *funcname UNUSED) start = atoi (argv[0]); if (start < 1) - fatal (reading_file, "invalid first argument to `wordlist' function: '%d'", - message, start); + fatal (reading_file, + "invalid first argument to `wordlist' function: `%d'", start); count = atoi (argv[1]) - start + 1; @@ -27,7 +27,7 @@ Boston, MA 02111-1307, USA. */ Otherwise create our own. */ -#if !defined(SYS_SIGLIST_DECLARED) +#if !defined(HAVE_DECL_SYS_SIGLIST) /* Some systems do not define NSIG in <signal.h>. */ #ifndef NSIG @@ -226,7 +226,7 @@ signame_init (void) return 1; } -#endif /* SYS_SIGLIST_DECLARED */ +#endif /* HAVE_DECL_SYS_SIGLIST */ char * @@ -234,7 +234,7 @@ strsignal (int signal) { static char buf[] = "Signal 12345678901234567890"; -#if !defined(SYS_SIGLIST_DECLARED) +#if !defined(HAVE_DECL_SYS_SIGLIST) static char sig_initted = 0; if (!sig_initted) diff --git a/tests/ChangeLog b/tests/ChangeLog index a371f89..cffcb2d 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,4 +1,4 @@ -Thu Mar 3 18:34:06 2005 Boris Kolpackov <boris@kolpackov.net> +2005-03-03 Boris Kolpackov <boris@kolpackov.net> * scripts/features/se_implicit: Add a test for stem termination bug. Add a test for stem triple-expansion bug. @@ -10,7 +10,7 @@ Thu Mar 3 18:34:06 2005 Boris Kolpackov <boris@kolpackov.net> new way empty prerequisite list is handled. -Tue Mar 1 10:15:25 2005 Boris Kolpackov <boris@kolpackov.net> +2005-03-01 Boris Kolpackov <boris@kolpackov.net> * scripts/features/statipattrules: Add a test for Savannah bug #12180. |