summaryrefslogtreecommitdiff
path: root/usr.bin/make
AgeCommit message (Collapse)Author
2016-01-04Use err(3) instead of various handrolled combinations of perror(3) andtb
fprintf(stderr, ...) with strerror(3) and exit(3). Make sure the exit status is 2 if an error occurred. Prompted by gsoares@'s and jsg@'s audit of exit statuses after failure of pledge(2). ok gsoares@
2015-12-29fix exit status on pledge(2) failure.Gleydson Soares
OK tb@ jsg@
2015-12-22in case we have a parse error, dispell the target list early to avoidMarc Espie
various problems. Problem noticed by jsg@, deeper patch than he suggested okay jsg@ and tb@.
2015-12-11Use %zu to print size_t's rather than casting to u_long.mmcc
ok espie@
2015-12-05yet another feof check, just to be sure.Marc Espie
2015-11-29fix duplicate targets in target list for good: split previous groupling fixMarc Espie
in two. Catch 22: we have to dedup targets very early so that commands get attached correctly, but we can't figure out the grouplings heuristics until we have all commands... ok millert@
2015-11-15unifdef MAKE_BOOTSTRAP now that Makefile.boot is gone.Daniel Dickman
ok espie@
2015-11-15exit needs stdlib, switch to "return 0" to fix.Daniel Dickman
ok espie
2015-11-06I was very optimistic in groupling creation. Turns out lists of targetsMarc Espie
can have duplicates, or overlap, or even be empty thanks to fnmatch. So use the big guns to build the circular list correctly, namely actual lists of targets that are made together will be registered in a hash first, then we recreate the full list from there. (merging lists is not an issue, since groupling links are only used to temporarily lock targets in parallel mode). Issue noticed by guenther@, okay guenther@
2015-10-14gc lst_ForEachNodeWhile, which isn't actually in use anywhereMarc Espie
2015-10-14make sure we use stdbool.hMarc Espie
Mostly diff by Daniel Dickman, who told me to commit in his stead, as he's tied up at work.
2015-10-09Change all tame callers to namechange to pledge(2).Theo de Raadt
2015-10-08tame "stdio rpath wpath cpath proc exec". make is a shell, and appearsTheo de Raadt
to only need these operations. Take note that "exec" is a 2-day old tame request, so do get a new kernel before you update or risk getting trapped.
2015-10-07Oops, not quite ready for tame() here. People need time to updateTheo de Raadt
their kernels, before it starts using the new "exec" primitive. HINT: everyone, update your kernels, tame is coming to make really soon.
2015-10-07*** empty log message ***Theo de Raadt
2015-09-27Mark all the error printing functions as printf-like; fix two formatPhilip Guenther
mismatches this revealed ok espie@
2015-08-21correctly indent a line to make the intent clearJonathan Gray
ok espie@
2015-08-20Do not cast result of malloc/calloc/realloc* if stdlib.h is in scopeTheo de Raadt
ok krw millert
2015-07-28let the hack that lets make kill jobs after sudo also work with doas.Marc Espie
okay tedu@, millert@, tweaks by millert@
2015-04-29Add missing #include <stdint.h> for SIZE_MAXTodd C. Miller
2015-04-25add check for overflow while doubling (very unlikely in practice, but stillMarc Espie
better style code). Problem noticed by deraadt@ in m4. okay doug@ deraadt@
2015-04-18Convert many atoi() calls to strtonum(), adding range checks and failureTheo de Raadt
handling along the way. Reviews by Brendan MacDonell, Jeremy Devenport, florian, doug, millert
2015-03-13remove the first comma from constructs like ", and," and ", or,": you can useJason McIntyre
"and" and "or" to join sentence clauses, and you can use commas, but both hinders reading;
2015-02-28Reduce usage of predefined strings in manpages.Anthony J. Bentley
Predefined strings are not very portable across troff implementations, and they make the source much harder to read. Usually the intended character can be written directly. No output changes, except for two instances where the incorrect escape was used in the first place. tweaks + ok schwarze@
2015-02-07sync usage(); ok espieJason McIntyre
2015-02-07document -CMarc Espie
2015-02-07add support for the popular -C option, in the least intrusive way possible:Marc Espie
parse thru parameters for -C upfront, and then we can setup CURDIR/OBJDIR so as not to disturb anything else. okay millert@, "makes sense" guenther@
2015-01-23a wee little bit more cleanup (more const and remove noise from CDIAGFLAGS...Marc Espie
-pedantic kind of requires -std=c99 here to avoid LL warnings) okay miod@, millert@
2015-01-23typoMarc Espie
2015-01-23remove a bunch of dangerous casts (useless casts from void * to somethingMarc Espie
else, in some cases by adding extra temporary variables. IMO, it's much better practice to do void *a; int *p = a; *p = 42; rather than void *a; *(int *)a = 42; okay miod@... to be revisited for some possible const additions later.
2015-01-16switch to <limits.h>; ok millertTheo de Raadt
2015-01-16The make code has "bootstrap", to allow it to be brought up on otherTheo de Raadt
systems. Rarely used & tested -- perhaps once a decade. Perhaps not even once this decade? Anyways, #define PATH_MAX (MAXPATHLEN+1) is quite wrong. Delete the chunk, assuming any system this is ported to has PATH_MAX.
2015-01-15If some mythical system lacks PATH_MAX, do not set it to MAXPATHLEN+1Theo de Raadt
ok millert
2015-01-13zap really odd code that's not actually in-use.Marc Espie
okay millert@
2014-12-07make sure we always nul-terminateMarc Espie
problem spotted by jsg@ reorg so that the nul termination is obvious.
2014-11-03introspection feature: ${MAKEFILE_LIST} contains the list of makefilesMarc Espie
parsed. name stolen from gmake, from a suggestion from guenther@, to avoid gratuitous confusin. okay guenther@, millert@
2014-10-31redirect error output to stderr instead of stdoutGleydson Soares
stderr is always unbuffered by default, so zap fflush(3) its no longer makes any sense here reminded by espie@ OK espie@
2014-10-20document sinclude/-includeMarc Espie
2014-10-18enable the sinclude/-include feature support I wrote long ago.Marc Espie
Other systems now have it, xenocara is using it. talked over with kettenis@ who checked release still works. I did a full bulk build with this and did not notice any issue.
2014-09-21plug a small memory leak, fairly infrequent.Marc Espie
2014-07-16tweak previous;Jason McIntyre
2014-07-15remove support for the non-standard BSDmakefile, which make tries toTheo de Raadt
open first. a handful of strange ports will cope soon. ok espie
2014-05-30modern bourne shells handle ~. Unlikely in makefiles, but still, betterMarc Espie
fork a shell then (as seen in a commit message in netbsd's make, apparently taken from debian. didn't look at the actual code, but it was a "duh" moment) okay millert@
2014-05-18a bit more reallocarray (and kill ecalloc, which isn't used)Marc Espie
okay chl@
2014-05-15remove unused variableCharles Longeau
ok espie@
2014-05-12adjust to ohash being in libutil now, and to the interface changes.Marc Espie
fix potential integer overflows in memory allocation (mostly for pedagogical purposes, these are unlikely to overflow in practice) move the rest of lst.lib stuff into its own directory.
2014-04-22pure reindentMarc Espie
2014-04-22effectively use emult_realloc, okay guenther@Marc Espie
2014-04-14STANDARDS: note that make is optionalJason McIntyre
ok schwarze sobrado
2014-03-22don't use >$@ directlyMarc Espie