Age | Commit message (Collapse) | Author |
|
ok tb@
|
|
set_times() has one caller: Job_Touch(). set_times() is a thin
utimes(2) wrapper. Using utimes(2) to reset a file's atime/mtime
to the current time is not cumbersome.
So, remove set_times() and just call utimes(2) directly.
Thread: https://marc.info/?l=openbsd-tech&m=171262211713835&w=2
ok kn@
|
|
so don't bother compiling them.
|
|
inline is part of gnu89 and c99
ok kn@ espie@
|
|
other BSDs, which never happened, so make things simpler for further
development.
Ditches config.h entirely since it gets reduced to 2 defines.
okay tb@
|
|
okay tb@
|
|
the st_*time and (obsolete) st_*timensec members separately.
ok millert@
|
|
|
|
This is an extension but also exists in gnu-make.
okay millert@, kn@, thfr@
(I've added an XXX comment on top of the patch you've seen,
no actual further code change)
|
|
|
|
|
|
about the recursive non exploding kitten recursive behavior outside of
BUGS.
okay naddy@, jca@
|
|
is basically silent.
Record errors due to missing permissions and other oddities, and display them
when we error out due to lack of targets, as a quality-of-life diagnostic.
Based on a remark from sthen@, with some feedback and tweaks from op@
okay op@, kn@
|
|
ok miod@ millert@
|
|
|
|
`make FOO=1 BAR=2 ...' works as expected and lots of things wouldn't work
if make only accepted a single assignment, as currently documented.
Fix SYNOPSIS and usage to match reality and POSIX spec (thanks jmc).
OK jmc
|
|
|
|
amendments to his diff are noted on tech
|
|
getopt(3) returns '?' when it encounters a flag not present in the in
the optstring or if a flag is missing its option argument. We can
handle this case with the "default" failure case with no loss of
legibility. Hence, remove all the redundant "case '?':" lines.
Prompted by dlg@. With help from dlg@ and millert@.
Link: https://marc.info/?l=openbsd-tech&m=167011979726449&w=2
ok naddy@ millert@ dlg@
|
|
Feedback OK op
|
|
it did not start in the PWB group
"PWB did not create make; Stu Feldman did it in research." Doug McIlroy
https://minnie.tuhs.org/pipermail/tuhs/2015-November/007572.html
with and ok schwarze@
|
|
defined (nice gotcha when you come back to the code after a few months).
|
|
jmc@ dislikes a comma before "then" in a conditional, so leave those
untouched.
ok jmc@
|
|
from raf czlonka
|
|
ok gnezdo@
|
|
|
|
OK deraadt
|
|
|
|
and installing USD/SMM/PSD docs.
jmc@ agrees with the direction, ok millert@ on an earlier diff
|
|
noticed by jsg@
|
|
as noticed by jsg@
|
|
|
|
No actual code change (checked with cmp)
|
|
gnezdo noticed that :S/old_string/new_string/ variable modifiers such
as :S/^sth/&/ and :S/sth$/&/ with an anchor in the old_string and an &
in the new_string don't work as documented (and expected) since they
replace & with old_string including the anchors.
This is because get_spatternarg() deals with skipping the anchors in
pattern->lhs only after having replaced any '&' in the buffer that will
eventually become new_string with pattern->lhs. Fix this by moving the
logic of skipping the anchors from get_spatternarg() into
common_get_patternarg() so it is done before & is handled.
ok millert
|
|
no reason for those types to have different return types, all compilers
are slightly unhappy with incompatible function pointers
(again, obvious commit, no difference in generated code)
|
|
obvious warning fix
|
|
okay millert@
|
|
thing is tricky
okay millert@
|
|
standard one (:) to the very BSD specific (!) so that standard Makefiles
keep working in the presence of ! in filenames.
This doesn't supersede the usual heuristics of choosing the operator
followed by space if several are present.
okay millert@
|
|
(hi mpi@) we may wish to ignore WIFSTOPPED so that other bugs elsewhere
may get found.
Also give more information in "can't happen" case to speed up figuring
problems out.
okay millert@, mpi@
|
|
OP_INVISIBLE)
okay millert@
|
|
|
|
okay on principle from millert@/schwarze@
The rationale is that those aren't even documented (apart from .MADE) and
the corresponding code has never been maintained (just untouched when
changing other things, so it probably doesn't work right if it ever did)
This went through a full release/bulk to make sure nobody was using that stuff.
okay millert@
|
|
waiting for the father to do so.
okay millert@
|
|
reaper. Specifically, the sigprocmask/wait/sigsuspend dance is correct for
the main process, BUT you have to remember to reset the signal mask to
something sane for the child (this was a duh! moment, that bug is very
stupid)
Finally, bluhm@ saw the actual issue. Kudoes to him.
The change to "unify" sequential and parallel make made the bug reproducible
under some circumstances
(because in the parallel make case, many things may happen in different
successions, so you don't get the wrong signal mask that often, but the
sequential case is reproducible, and using the "streamlined" reaper meant the
fork would occur WITHIN the signal loop instead of OUTSIDE)
So:
- discover signal state early on through Sigset_init;
- introduce reset_signal_mask to get back to the initial state;
- call reset_signal_mask systematically after fork
This organisation thanks to cmd_exec. SOME cmd_exec happens before Job_Init
happens, some afterwards (variables are still lazy and both !!= and :sh will
occur AFTER parsing), so both fork() need to be protected.
okay bluhm@
thx to sthen@ and naddy@ and mpi@ for helping out.
|
|
|
|
|
|
|
|
|
|
simplify the running of .BEGIN/.END so that they pass through the engine
first (so they can now have dependencies). Error out properly if .BEGIN/.END
fails.
|