diff options
author | Paul Smith <psmith@gnu.org> | 1999-04-02 06:19:33 +0000 |
---|---|---|
committer | Paul Smith <psmith@gnu.org> | 1999-04-02 06:19:33 +0000 |
commit | 3d1cdf4106fb107757898c92e55e928d35c02af9 (patch) | |
tree | e6057e0287cb55abee0ad257f69ea16bc2a992c2 | |
parent | 7052a5715236b84ebe0b3011c4de75ce19c4ab5d (diff) | |
download | gunmake-3d1cdf4106fb107757898c92e55e928d35c02af9.tar.gz |
* Fix possible memory stomp.
* A few admin file cleanups.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | NEWS | 7 | ||||
-rw-r--r-- | README.template | 25 | ||||
-rw-r--r-- | job.c | 5 |
4 files changed, 37 insertions, 6 deletions
@@ -1,3 +1,9 @@ +1999-04-01 Paul D. Smith <psmith@gnu.org> + + * job.c (construct_command_argv_internal): Use bcopy() to copy + overlapping strings, rather than strcpy(). ISO C says the latter + is undefined. Found this in a bug report from 1996! Ouch! + 1999-03-31 Paul D. Smith <psmith@gnu.org> * read.c (readline): Ignore carriage returns at the end of the @@ -19,11 +19,10 @@ Version 3.78 proceeds normally. * Make defines a new variable, .LIBPATTERNS. This variable controls how - the link library dependency expansion (dependencies like ``-lfoo'') is - performed. + library dependency expansion (dependencies like ``-lfoo'') is performed. -* Make allows CRLF sequences as well as traditional LF, in makefiles for - UNIX. +* Make allows CRLF sequences as well as traditional LF, for + compatibility with makefiles created on other operating systems. Version 3.77 diff --git a/README.template b/README.template index e011f99..c9a199d 100644 --- a/README.template +++ b/README.template @@ -3,17 +3,40 @@ All bugs reported for previous releases have been fixed. Some bugs surely remain. For general building and installation instructions, see the file INSTALL. + If you need to build GNU Make and have no other `make' program to use, you can use the shell script `build.sh' instead. To do this, first run `configure' as described in INSTALL. Then, instead of typing `make' to build the program, type `sh build.sh'. This should compile the program in the current directory. Then you will have a Make program that you can -use for `make install', or whatever else. +use for `./make install', or whatever else. Some systems' Make programs are broken and cannot process the Makefile for GNU Make. If you get errors from your system's Make when building GNU Make, try using `build.sh' instead. +GNU make is fully documented in the GNU Make manual, which is contained +in this distribution as the file make.texinfo. You can also find +on-line and preformatted (PostScript and DVI) versions at the FSF's web +site. There is information there about ordering hardcopy documentation. + + http://www.gnu.org/ + http://www.gnu.org/doc/doc.html + http://www.gnu.org/manual/manual.html + +Please send GNU make bug reports to bug-make@gnu.org. Please see the +section of the manual entitles `Problems and Bugs' for information on +submitting bug reports. + +If you need help using GNU make, try these forums: + + help-make@gnu.org + help-utils@gnu.org + news:gnu.utils.help + news:gnu.utils.bug + +Also: + - See README.customs for details on integrating GNU make with the Customs distributed build environment from the Pmake distribution. @@ -2014,7 +2014,10 @@ construct_command_argv_internal (line, restp, shell, ifs, batch_filename_ptr) since it was most likely used to line up the continued line with the previous one. */ if (*p == '\t') - strcpy (p, p + 1); + /* Note these overlap and strcpy() is undefined for + overlapping objects in ANSI C. The strlen() _IS_ right, + since we need to copy the nul byte too. */ + bcopy (p + 1, p, strlen(p)); if (instring) goto string_char; |