christos
627745abcd
remove <sys/cdefs.h> for portability reasons
2015-06-21 20:26:02 +00:00
christos
0002ddbc7d
make needshell customizable, so that xinstall can use it.
2015-06-19 14:32:04 +00:00
christos
3f6f33cbde
create needshell so we don't scan the string multiple times.
2015-06-19 14:25:34 +00:00
christos
fc12b1912c
use isspace()
2015-06-19 14:25:16 +00:00
mlelstv
75fd2a8412
Adjust metachar handling to previous behaviour:
...
- space and tab are no shell metachars, remove them from generic
metachar function
- add space and tab as to-be-quoted characters for :Q modifier
- add = and : as characters that require command handling by the shell
2015-06-19 08:03:35 +00:00
christos
12ca937409
grr too many different compilation options.
2015-06-18 19:49:08 +00:00
christos
e02fe630ea
this is not buf.c
2015-06-18 15:51:57 +00:00
justin
a9e309ea46
Fix non native build on metachar.c
2015-06-18 15:34:44 +00:00
christos
9beb5dadf3
Centralize the "is a meta char" test, instead of using two different arrays.
2015-06-17 17:43:23 +00:00
christos
b1e483495a
centralize shell metachar handling.
2015-06-17 15:34:55 +00:00
wiz
b96dc7bfa6
Drop trailing whitespace.
2015-06-05 07:33:40 +00:00
sjg
fab1dc5098
Document .OBJDIR target.
2015-06-05 05:37:42 +00:00
manu
41797faa82
Fix warning about uninitialized variable
...
This warning gets fatal when including make(1) as a crunchgen(1) binary.
2015-05-25 09:01:06 +00:00
sjg
ca0319bf7c
When evaluating condtionals from .if we want to require
...
that the lhs is a variable reference, a number or a quoted string.
This helps avoid subtle bugs caused by typos.
When conditionals are being evaluated during variable expansion
we cannot be as strict becuase lhs will already have been expanded.
We therefor pass a boolean to Cond_EvalExpression to tell it how
lhs should be treated.
Add unit-tests/cond2.mk to test the above
Reviewed by: christos, joerg
2015-05-05 21:51:09 +00:00
joerg
0057d0442d
Explain what max is and handle i reaching it again.
2015-04-16 13:31:03 +00:00
joerg
e2d874fb89
Don't use memcpy for overlapping ranges. Simplify, memmove is good
...
enough to skip empty ranges.
2015-04-16 11:39:23 +00:00
sjg
545bddb17b
Use separate vars to track cwd and last dir a process read.
2015-04-11 05:24:30 +00:00
sjg
c6534f45d3
export-all.mk should be including export.mk
...
sadly some shells do not grok named signals.
2015-04-10 20:41:59 +00:00
wiz
2690505034
It's 2015.
2015-04-10 08:43:32 +00:00
wiz
302cc6cfe4
Remove trailing whitespace.
2015-04-10 08:43:16 +00:00
sjg
baa0bd3c22
Forgot to tweak date
2015-04-09 18:22:08 +00:00
sjg
065f2cad03
jobs mode handles '-' very differently to compat mode, but this is not
...
reflected in make.1
Also fix handling to match the behavior described in the comment
of JobPrintCommand (only matters if shell sets hasErrCtl).
A better long term solution is needed since the current behavior
is sub-optimal wrt '-' and different from all other makes.
Reviewed by: christos
2015-04-09 18:21:01 +00:00
sjg
73c21af432
Close child's reference to meta file.
2015-04-01 01:03:55 +00:00
sjg
f15792411b
Move initialization of savederr to the block where it is used
...
to avoid spurious warning from gcc 5
2015-03-26 22:20:42 +00:00
sjg
a75f41b571
Ensure -- filemon is at start of line
2014-11-06 01:36:57 +00:00
sjg
0b32bec31a
Use read and fwrite rather than fgets and printf when reading filemon data.
2014-10-20 23:22:57 +00:00
sjg
18f74f9db1
Extract broken tests
2014-10-20 23:21:11 +00:00
snj
f0a7346d21
src is too big these days to tolerate superfluous apostrophes. It's
...
"its", people!
2014-10-18 08:33:23 +00:00
christos
d2ae978666
Define some of the missing macros. The only error now is:
...
213: warning: can't find font `C'
Because the CW macro wants to use a constant width font is "ascii" mode,
and this does not exist with -Tascii. I don't think this should be fixed
here...
2014-09-30 21:33:14 +00:00
dholland
9e4a361214
Comments, and one very minor tidyup.
2014-09-18 08:06:13 +00:00
apb
19f37cd621
Small markup fixes:
...
* Use \e instead of \\ to represent a backslash;
* Dont' start a line with .SUFFIXES.
2014-09-14 08:47:19 +00:00
dholland
985229f07f
bump date; I think I'm done for tonight
2014-09-14 04:32:42 +00:00
dholland
cf64c76e74
Add some notes on compatibility with other make dialects.
...
I was originally intending to preserve some of Jarmo Jaakkola's notes
on POSIX make from the PR 49085 changes... but really there's no point
wandering into details about $? and such when the big picture is
"almost everything in this manual works only in BSD make".
Maybe the exact details can be stuffed into a chapter of the mythical
make reference manual if that ever gets (re)written.
2014-09-14 04:32:07 +00:00
dholland
d8e17b53b4
Improve the documentation of rule-local variables. Cherry-picked from
...
the PR 49085 changes, with some adjustments by me.
2014-09-14 03:50:28 +00:00
dholland
7837a7ce15
Improvements pertaining to shell commands and chdir. Some of this
...
appeared in the PR 49085 changes, even though it's not actually
relevant there except tangentially. However, I've reworked most of
that for clarity and added some more.
2014-09-14 03:13:49 +00:00
dholland
d2a37b0d8b
Fix handling of the silly $(@D) $(@F) etc. vars so modifiers on them
...
work. This is issue #1 in PR 49085 from Jarmo Jaakkola, but I've used
a different and cleaner patch this time.
2014-09-14 02:32:51 +00:00
dholland
58de96de3f
Recognize the crazy POSIXisms $(?D) and $(?F); issue 2 in PR 49085
...
from Jarmo Jaakkola.
2014-09-13 23:21:01 +00:00
dholland
d32cd0af74
typo in comment, from the first reverted patch
2014-09-13 23:10:28 +00:00
apb
73b33010e7
Add a test for backslash-newline at the very end of a command script.
2014-09-09 10:22:27 +00:00
apb
14a634bc53
Change @echo to echo in several places in escape.mk,
...
to make it easier to spot changes in what make sends to the shell.
Adjust escape.out to match.
2014-09-09 10:11:20 +00:00
dholland
012b391598
Restore -r1.234 of make.1, which was an unrelated fix from sjg pertaining
...
to the docs for the -w option.
2014-09-09 06:41:56 +00:00
dholland
718f11413b
Revert the man page as well. (hi joerg)
...
Revert it to 20140823 (-r1.230), before the controversial commits,
which changed it a good deal.
2014-09-09 06:39:59 +00:00
dholland
3728c0fad2
Restore apb's 20140820 commit (-r1.228 of main.c):
...
It should not be an error to have VAR != command that prints no output
Joerg reverted a bit too enthusiastically.
2014-09-09 06:18:17 +00:00
joerg
d92bea4fa3
Revert all make changes except the unit tests to the state of three
...
weeks ago. Individual changes can be reapplied after review.
2014-09-07 20:55:34 +00:00
wiz
875700f431
Reduce pirate slang.
2014-09-05 06:57:20 +00:00
christos
1639e1cf8d
document commented out .INVISIBLE and .JOIN.
2014-09-04 19:07:47 +00:00
sjg
82b1920e05
Replace use of $() with ${}
...
$() means something special to the shell, so ${} reduces confusion
and is used almost exclusively in the rest of the makefiles.
Discussed with: christos
2014-08-30 22:21:07 +00:00
sjg
294be283d0
*.rawout are out-of-date if ${TEST_MAKE} is newer.
2014-08-29 20:03:27 +00:00
sjg
75abee676e
posix1.mk and suffixes.mk need to cleanup in order to achieve
...
repeatable results.
posix1.mk's lib.a target still looks dubious.
2014-08-29 15:55:44 +00:00
christos
aeacc22675
undo eating the trailing backslash now that the shell has been fixed.
2014-08-29 09:27:43 +00:00