sjg
367aa166aa
Fix description of 'silent' in .MAKE.MODE
...
Also document 'env' in that context.
2012-02-03 21:39:25 +00:00
sjg
25e3dfbf18
Mention limits of :P
2011-12-23 05:01:59 +00:00
sjg
3a4494dc38
The :@ example gives the impression that we encourage the ODE
...
convention of naming loop variables like .LINK., when in fact
single char variables are far more common in NetBSD.
2011-12-17 04:43:45 +00:00
dholland
9851fd89b4
Fix xref to the PSD; PR 45568 from Petri Laakso.
2011-11-13 18:18:35 +00:00
christos
e8514ab687
explain how to use .PARSEDIR and .PARSEFILE
2011-11-06 19:50:46 +00:00
christos
f0528cf595
add debugging for parsedir and parsefile
2011-11-06 19:46:56 +00:00
sjg
123e6558cd
Make sure .PHONY targets get .TARGET set.
...
This wasn't happening when a dependency of .END.
Set .PREFIX too and add a unit-test.
PR: 43534
2011-09-29 23:38:04 +00:00
christos
6f2c981e29
PR/45383: Henning Petersen: Swapped lseek args
2011-09-21 14:30:47 +00:00
joerg
84700a0331
Use __dead consistently. If it doesn't exist, define it away.
2011-09-16 15:38:03 +00:00
sjg
b79c6e0ff9
meta_oodate should ignore makeDependfile
2011-09-02 16:26:21 +00:00
plunky
9f61b80465
NULL does not need a cast
2011-08-31 16:24:54 +00:00
sjg
09fee58e88
In meta mode, we create .meta files for most targets.
...
These capture all the interesting data - useful for debugging.
In such cases there is no need to replicate commands in the build log.
Rather than run the entire build .SILENT, allow meta mode to set that flag
per target iff a .meta file is created.
Normal behavior is retained for targets where no .meta file is created,
ensuring that no build data is lost.
2011-08-28 03:54:07 +00:00
sjg
daf6508d3f
Make some dashes em-dashes (based on patch from Andrew O. Shadoura).
...
Note behavior of .META flag wrt out-of-date.
2011-08-18 15:36:51 +00:00
sjg
4f95291ad9
Fix formatting of Notes to work with groff.
...
Patch from Andrew O. Shadoura.
2011-08-18 15:19:30 +00:00
sjg
bbf6dc9998
If a target is explicitly flagged .META,
...
a missing .meta file means it is out-of-date.
2011-08-18 00:00:21 +00:00
christos
ccb821a2ac
- remove gcc-4.5 warnings
...
- simplify job printing code
- document non-literal format strings
2011-08-14 13:06:09 +00:00
christos
3edabd2e8e
Don't attempt to touch special targets; make -t would create .END in every
...
directory.
2011-08-01 02:13:21 +00:00
wiz
4cbd24b23f
dependant -> dependent
2011-06-30 20:09:15 +00:00
sjg
ebe0193f6c
After each strsep(&p) check that p is valid.
...
If not the .meta file is corrupted (build interrupted?)
issue a warning and declare target oodate.
2011-06-22 21:13:12 +00:00
mrg
c111245a78
apply some -Wno-error and/or -fno-strict-aliasing.
...
all of this should be looked at closer, but some of them are not
very trivial.
2011-06-22 02:49:41 +00:00
sjg
0277db2f8c
Use %zu rather than cast
2011-06-11 02:10:48 +00:00
sjg
af8b888000
size_t on amd64 doesn't like %u, use a cast.
2011-06-10 23:57:39 +00:00
sjg
873dae776d
Some systems (eg. MirBSD) use a ksh, with an echo which cannot
...
be used for things containing \x: etc.
Check for print or printf as builtin and use if available.
Note that a builtin will fail, if make decides a shell is not needed.
2011-06-07 00:10:20 +00:00
sjg
43c87c739c
ApplyModifiers: if we parse a variable in the modifier list,
...
do not consider it a nested modifier set, unless it is followed by
endc, a ':' or end of string.
2011-06-03 21:10:42 +00:00
cheusov
a541b13903
fix bug in section .ORDER of make.1
2011-05-28 21:53:54 +00:00
tsutsui
56683e6b6e
Explicitly #include <time.h> for time(3) and strftime(3).
...
Fixes warnings on some non NetBSD hosts.
2011-05-21 07:30:42 +00:00
dsl
cf5ef24619
Back out a local change
2011-05-18 06:36:48 +00:00
dsl
c5191c6734
If a makefile if a multiple of the page size and doesn't end with a
...
newline, then it all goes horribly wrong when make tries to terminate
the last input line.
This was all ok before the mmap changes (rev 1.169) because the last
32 bytes of the input buffer were never read into.
The non-mmap case has a similar problem.
Bug found because my .depend files don't have a newline at the end of
the .OPTIO|NAL line (don't know if that is a local change).
2011-05-17 21:56:51 +00:00
wiz
9e66d3e091
Remove trailing whitespace.
2011-05-04 21:24:59 +00:00
christos
fc29dd21ad
Document what I wrote for PR/40115
2011-05-04 21:14:56 +00:00
sjg
48587910e0
Add .MAKE.META.BAILIWICK - to identify the scope of make's control.
...
meta_oodate: if a file that was written or linked within our bailiwick,
but outside of .OBJDIR is missing, add it to missingFiles.
If we get to the end of the .meta file without seeing it [re]moved,
then consider the target out-of-date.
2011-05-04 20:38:31 +00:00
sjg
2ac5d52245
Add a test case for sysV modifier subst
2011-04-11 15:10:15 +00:00
sjg
521f3749c8
If a "long" modifier name does not match, goto default case
...
so SysV modifier can be tried.
2011-04-11 14:49:09 +00:00
wiz
2974cb7ffe
Remove trailing whitespace.
2011-04-11 06:56:50 +00:00
sjg
b446ef338f
Add :localtime and :gmtime which use value as format string for strftime.
2011-04-11 01:44:15 +00:00
joerg
53d81ae021
Add the :hash modifier to compute a 32bit hash of an variable.
...
This uses MurmurHash3 to get a reasonable collission-free hash with
small code. The result is endian neutral.
2011-04-07 01:40:01 +00:00
mbalmer
18e7170716
Declare variable only once. Fixes PR 44795.
2011-04-02 07:58:30 +00:00
sjg
c76b9c11ac
Call meta_job_finish() from meta_job_error(), so that if
...
the .ERROR target copies the .meta file, it has been completed.
meta_job_finish() is safe to call again.
2011-03-31 06:50:43 +00:00
sjg
64809b8858
We must now call meta_job_finish() after meta_job_error()
...
so that .ERROR_META_FILE is captured.
2011-03-31 06:28:42 +00:00
sjg
ff54381362
Add NetBSD tags
2011-03-30 22:03:49 +00:00
sjg
be03bd0379
Check for extra commands as soon as we reach CWD,
...
so we return faster (if oodate) and give a more accurate debug message.
2011-03-29 17:29:20 +00:00
sjg
ede3eaf4a5
CondDoExists: Avoid use after free()
2011-03-29 17:19:22 +00:00
sjg
1e444cd2f2
Use curdirOk as the token
2011-03-27 19:47:46 +00:00
sjg
dd0a10eeff
When .MAKE.MODE inlcudes 'meta'; 'curdir=true' enables creating .meta
...
files in .CURDIR - such as when running make in .OBJDIR with a generated
makefile.
2011-03-27 19:39:21 +00:00
dholland
b82f0f1987
Catch up to Makefile rev 1.40 (from 2006): add lstPrev.o. Closes PR 43466.
2011-03-26 21:42:12 +00:00
sjg
c37859c219
Only need to getcwd() once
2011-03-06 17:41:11 +00:00
sjg
b9fa549592
CWD should be compared against cwd
2011-03-06 04:34:25 +00:00
sjg
8892f885fd
Add unit tests to check that exists(some/dir/) works
...
Also fix handling of sysV substitutions when lhs and variable are empty.
Also that modifiers do not cause errors during conditional tests
when undefined variables should otherwise be ok.
Ie. .if defined(nosuch) && ${nosuch:Mx} != ""
2011-03-06 00:02:14 +00:00
sjg
be4a1e2c49
Treat some/dir/ the same as some/dir/.
2011-03-05 23:57:05 +00:00
sjg
47311dc80a
main.c now exports curdir[] so we can use it.
2011-03-04 04:55:51 +00:00