summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-10-05Clean up some tests for use on Windows.Paul Smith4-110/+121
2013-10-05Sanitize the registered function interface.Paul Smith11-49/+143
Expand the characters which are legal in a function name, and check the name for validity. Create a type for the function pointer. Convert the last argument from a boolean to flags, to allow for expansion.
2013-10-03 function.c (abspath): Reset root_len to one for Cygwin only whenEli Zaretskii2-1/+6
HAVE_DOS_PATHS is defined. Suggested by Christopher Faylor.
2013-10-02Fix tmpfile on MS-Windows.Eli Zaretskii2-0/+103
w32/compat/posixfcn.c (tmpfile): New function, a replacement for the Windows libc version.
2013-10-02Fix $abspath on Cygwin when HAVE_DOS_PATHS is in effect.Eli Zaretskii2-4/+21
function.c (IS_ABSOLUTE) [__CYGWIN__]: Special definition for Cygwin. (abspath) [__CYGWIN__]: Reset root_len to 1 if the absolute file name has the Posix /foo/bar form. [HAVE_DOS_PATHS]: Use root_len instead of hard-coded 2.
2013-10-01Release GNU Make version 3.99.93.3.99.93Paul Smith3-3/+8
2013-09-30Fix portability issues for Guile 1.8.Paul Smith4-7/+14
2013-09-30Final fixes for obscure output-sync errors.Paul Smith4-62/+72
2013-09-30Fixes for building with MSVC.Paul Smith4-6/+21
2013-09-30Solaris /bin/sh can't handle multiple options ("-e -c").Paul Smith3-3/+21
2013-09-29Fix build failures on EMX for output-sync support.Paul Smith5-12/+17
2013-09-29Portability for Guile 1.8. Force UTF-8 encoding.Paul Smith4-32/+27
2013-09-29Reset GNUMAKEFLAGS after parsing.Paul Smith6-8/+52
If we don't do this we'll continually add flags on recursion. This is mainly for users to set in their environment before invoking make.
2013-09-23Rename dash-w to print-directory.Paul Smith2-0/+6
Avoid conflicts with dash-W on case-insensitive filesystems.
2013-09-23Fix broken w32 build due to OUTPUT_SYNC -> NO_OUTPUT_SYNC inversion.Eli Zaretskii3-3/+9
w32/compat/posixfcn.c: Fix the forgotten OUTPUT_SYNC conditional. job.h: Ditto, but in a comment.
2013-09-23Release GNU Make version 3.99.92.3.99.92Paul Smith3-25/+28
2013-09-22[SV 31155] Parse order-only tokens in second expansion results.Paul Smith4-11/+48
2013-09-22Use explicit cast between void* and pointer-to-function.Paul Smith3-4/+9
2013-09-22Allow loaded objects to opt out of the "auto-rebuild" feature.Paul Smith3-5/+20
2013-09-22Defer Guile initialization until the first $(guile...) call.Paul Smith2-3/+15
2013-09-22Regression test portability to Solaris.Paul Smith7-14/+59
2013-09-22Add VMS port updates from Hartmut Becker.Paul Smith17-151/+71
2013-09-22Portability enhancements for Mac OSX.Paul Smith4-26/+41
Don't dup stdout into stderr in the test suite. Don't rely on $port_type eq "UNIX" to mean case-preserving. Check against the real output of ar when creating archives.
2013-09-21Create a target that tests alternative configurations.Paul Smith7-48/+114
2013-09-21Remove obsolete tests.Paul Smith1-52/+0
2013-09-21Invert the #define for output-sync: turn it off with NO_OUTPUT_SYNCPaul Smith12-33/+53
2013-09-21Ensure that output generated while reading makefiles is synced.Paul Smith5-2/+122
2013-09-21Ensure that stderr from shell functions in recipes is synced.Paul Smith7-71/+133
2013-09-21Don't write "Entering" every time we re-exec for remake makefiles.Paul Smith6-10/+65
2013-09-18[SV 40043] Set the current directory before printing errors.Paul Smith2-5/+10
2013-09-16Fix a typo in a comment.Eli Zaretskii1-1/+1
2013-09-16Avoid compiler warnings in output.c on MS-Windows.Eli Zaretskii2-0/+10
output.c [WINDOWS32]: Include windows.h and sub_proc.h, to avoid compiler warnings for CLOSE_ON_EXEC.
2013-09-16Release GNU Make version 3.99.91.3.99.91Paul Smith3-3/+8
2013-09-16Small cleanup defining MAKEFLAGS.Paul Smith1-25/+11
2013-09-15[SV 31326] Enhance the info on static pattern errors.Paul Smith2-6/+13
2013-09-15[SV 27374] Fatal immediately on unrecoverable fopen() errors.Paul Smith6-28/+73
2013-09-15[SV 39934] Verify jobserver FDs before something else uses them.Paul Smith4-89/+124
2013-09-15[SV 39203] Don't set MAKEFLAGS when restarting.Paul Smith4-12/+29
We are restarting with the original command line flags, so if we set MAKEFLAGS as well that will cause double flags.
2013-09-14[SV 35248] Add --debug "n" flag to turn off current debug options.Paul Smith6-6/+30
2013-09-14[SV 33134] Don't try to close stdout when it's already closed.Paul Smith5-55/+64
2013-09-14[SV 39851] Reinstate stack size limit for processes spawned via $(shell)Petr Machata2-1/+13
2013-09-14Support the -Orecurse option properly.Paul Smith11-591/+594
In this mode we still collect all the output from a given target and dump it at once. However we don't treat recursive lines any differently from non-recursive lines. Also we don't print enter/leave messages after every dump. However we do ensure that we always print them once to stdout, so the parent make will collect it properly.
2013-09-12Enhance the output sync mode.Paul Smith27-689/+893
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-07-22[Bug #39310] Parse simple pattern prereqs for globbing.Paul Smith10-19/+78
We tried to get some efficiency by avoiding a parse_file_seq() for simple pattern prerequisites, but this also means no wildcard expansion was happening, so add it back. Add regression tests for wildcards in target and prerequisite lists.
2013-07-21[Bug #39158] Source cleanups suggested by cppcheck utility.Paul Smith12-79/+81
2013-07-21Safety cleanups: ensure OUTFD is -1 when closed.Paul Smith2-6/+15
2013-07-14Notify the compiler that exec_command() won't return.Paul Smith1-2/+2
2013-07-14Modify the update_status field in struct file to be an enum.Paul Smith9-102/+121
Makes the code a little clearer/cleaner, and solves a problem on systems where a char is unsigned by default.
2013-07-09Keep a local count of the max dependency list size.Paul Smith4-6/+41
This global variable could be modified during recursion so keep our own local copy to compare against.
2013-06-28Set O_APPEND mode for stdout/stderr and output-sync temporary files.Paul Smith4-1/+35
POSIX does not guarantee that writes will be atomic if a file is opened for normal (non-append) output. That means if multiple processes are writing to the same file, output could be lost. I can't think of a real use-case where we would NOT want append for stdout/stderr, so force it if we can.