Age | Commit message (Collapse) | Author | Files | Lines |
|
Rename existing ChangeLog files so they won't be distributed.
Add targets to maintMakefile to generate ChangeLog from the Git
repository. This will require a version of gnulib be available.
Because ChangeLog is auto-generated, we have to switch our
automake mode to "foreign" or it will complain and fail.
|
|
|
|
w32/compat/posixfcn.c (tmpfile): Move declaration of h before
the first executable statement. Reported by Gisle Vanem <gvanem@yahoo.no>.
|
|
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.
|
|
HAVE_DOS_PATHS is defined. Suggested by Christopher Faylor.
|
|
w32/compat/posixfcn.c (tmpfile): New function, a replacement for
the Windows libc version.
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
w32/compat/posixfcn.c: Fix the forgotten OUTPUT_SYNC conditional.
job.h: Ditto, but in a comment.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
output.c [WINDOWS32]: Include windows.h and sub_proc.h, to avoid
compiler warnings for CLOSE_ON_EXEC.
|
|
|
|
|
|
|
|
|
|
We are restarting with the original command line flags, so if we set
MAKEFLAGS as well that will cause double flags.
|
|
|
|
|
|
|
|
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.
|
|
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.
|
|
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.
|
|
|
|
|
|
Makes the code a little clearer/cleaner, and solves a problem on systems
where a char is unsigned by default.
|
|
This global variable could be modified during recursion so keep our
own local copy to compare against.
|
|
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.
|
|
build_w32.bat (LinkGCC): Prevent a comment from being displayed
at build time.
|
|
job.c (construct_command_argv_internal) [WINDOWS32]: Use
case-insensitive comparison with internal commands of non-Unix
shells.
|
|
main.c (find_and_set_default_shell): Don't use file_exists_p or
dir_file_exists_p, as those call readdir, which can fail if PATH
includes directories with non-ASCII characters, and that would
cause Make to fail at startup with confusing diagnostics. See
https://sourceforge.net/mailarchive/message.php?msg_id=30846737
for the details.
|
|
In various places we were passing flags and characters to compare, then
using complex conditionals to see where to stop in string searches.
Performance numbers reveal that we were spending as much as 23% of our
processing time in these functions, most of it in the comparison lines.
Instead create a character map and use a single bitwise comparison to
determine if this is any one of the stop characters.
|
|
The database verification can take a long time. Only enable it if debug mode
is enabled. If MAKE_MAINTAINER_MODE is set, it's also enabled by default.
|
|
|