summaryrefslogtreecommitdiffstats
path: root/usr.bin/make
Commit message (Collapse)AuthorAgeFilesLines
* Bootstrapping aid from pre-kqueue(2) systems, e.g. 4.0-RELEASE.ru2002-12-011-0/+2
| | | | | Submitted by: jmallett Approved by: re (bmah)
* Finish the fix in revision 1.39 -- make(1)'s behavior is nowru2002-11-281-12/+9
| | | | | | "greedy" with respect to finding the dependency operators. Approved by: re
* Convert some broken cases where Error is called, but we try to continue,jmallett2002-11-081-17/+5
| | | | | | | | | | | | to Fatal errors, because the logic that we use to try to continue is far too broken, and makes things look and act weird, because we end up pointing past the end of a buffer boundry into freed memory in the caller, as we don't come close to setting the lengthPtr to a sane value. Reviewed by: make@ (This only changes failure cases which would have died horrid deaths to explicit clean death failure cases.)
* Document the confusing behavior that the .if conditional defaultsru2002-11-011-0/+1
| | | | | to defined(), e.g., ``.if 1'' is equivalent to ``.if defined(1)'', which is only true when the ${1} variable is defined.
* bsd.doc.mk changes:ru2002-10-291-1/+0
| | | | | | | | | | | | | | | Don't gratuitously pipe thru a cat(1) if NODOCCOMPRESS. Only create _stamp.extra when necessary. Get rid of SOELIMPP and OBJS. Use Groff version of soelim(1); we need its -I option for the following to work. Don't needlessly chdir to SRCDIR. Only a few documents need CD_HACK, and those that need it either use refer(1) or .PSPIC macro which internally uses the .psbb call.
* In VarHead(), look into the correct (modified) string.jmallett2002-10-291-1/+1
|
* Mention that the left-hand side of the comparisonru2002-10-291-3/+2
| | | | | | | | conditional must always be a variable expansion. Obtained from: PMake Do not lie that debugging .for loops is a no-op.
* Split var.c into var.c and var_modify.c and move all the modification funcsjmallett2002-10-287-669/+731
| | | | | | | | to var_modify.c, for readability. constify some low hanging fruit (string manipulation functions) and the upper layers appropriately. No longer use the private strstr(3) implementation, while changing string code. Tested by: lots of successful make buildworld.
* Fix problem with my ability to tell the difference between 'r' and 'l'... Wejmallett2002-10-241-1/+1
| | | | | | | | want to check var[1], not val[1]. Submitted by: Mark Valentine <mark@thuvia.demon.co.uk> Pointed out by: sam Pointy hat to: jmallett
* When expanding a specific [1-char] variable, only expand said specificjmallett2002-10-241-1/+1
| | | | | | | [1-char] variable. Don't just automatically expand something which starts with that character. Obtained from: OpenBSD [3 years ago!]
* Duplicate the variable name in the v->name field, as otherwise it points tojmallett2002-10-241-1/+3
| | | | | | | | data that will be modified. And do the appropriate thing now and free the v->name buffer along with other relinquished memory. XXX There is duplication here of destroying a Var, which is probably bogus, and probably missed in a few places.
* Remove efree(), it isn't used consistently enough to even pretend that itjmallett2002-10-2310-27/+24
| | | | | | might help on the systems it could possibly be used as a bandaid for. In fact, the only thing it's useful for is instrumenting free(3) calls, and in that capacity, it's better served as a local patch, than a public wrapper.
* De-obfuscate and correct the include path handling for SysV style includes.jmallett2002-10-231-35/+4
| | | | | | | PR: 32759 Submitted by: Mark Valentine Reviewed by: Matthew Emmerton" <matt@gsicomp.on.ca> MFC after: 15 days
* Move utilitarian routines to util.c, which isn't the same as the oldjmallett2002-10-104-234/+288
| | | | | | compatability-geared util.c. These are things like message printers and the PrintAddr function for traversing lists. Other general-purpose utilities inside make(1) can go here, in time.
* Convert make(1) to use ANSI style function declarations. Variablejmallett2002-10-0915-771/+340
| | | | | | | | | | | documentation already adequatedly existed in the description in most cases. Where it did not, it was added. If no documentation existed beforehand, then none was added. Some unused dummies for use in the traversal functions were marked as __unused during the conversion. Occasionally, local style fixes were applied to lines already being modified or influenced. Now make(1) should always build with WARNS=3.
* Use __FBSDID in the lst.lib files, to match to main make(1) files. It isjmallett2002-10-0926-26/+26
| | | | | defined to __RCSID when bootstrapping, by the Makefile, but this change is for consistency
* Remove extern declarations from functions and source files where they wouldjmallett2002-10-094-3/+4
| | | | happily fit into headers.
* Remove unused local-locals, where upper-level locals may safely be used.jmallett2002-10-091-8/+8
|
* Reference the correct local variable in all parts of a for loop, so wejmallett2002-10-081-1/+1
| | | | | | operate on the correct data (properly). Tracked down by: Dan Nelson
* Give make(1) the ability to use KQUEUE to wait for worker processesphk2002-10-043-1/+57
| | | | | | | | | instead of polling for them. Unfortunately we cannot enable it yet because it panics the kernel somewhere in kqueue. Submitted by: Stefan Farfeleder <e0026813@stud3.tuwien.ac.at>
* In lieu of a good way to prevent every possible looping in make(1), stopjmallett2002-10-031-0/+21
| | | | | | | | | there from being more than 500 processes forked by make(1), to prevent a forkbomb from happening, in a dumb and mechanical way. PR: alane Submitted by: bin/42772 MFC after: 2 weeks
* Code that has been #if0'd with the comment "WHY" since revision 1.1 canjmallett2002-10-021-8/+1
| | | | disappear.
* Remove 6-years-stale #if0, the behaviour isn't ever going to be limited tojmallett2002-10-021-5/+1
| | | | compatible mode, as far as I know, since we use it...
* Fix spurious three-space indentation in a four-space indentation file.jmallett2002-09-291-2/+2
|
* Fix ability to use csh(1) as the make(1) shell.jmallett2002-09-291-1/+3
| | | | Sponsored by: Bright Path Solutions
* Make make(1) WARNS=6 clean except for const issues. This mostly involvesjmallett2002-09-287-69/+69
| | | | | | | | | | | renaming variables to not shadow libc functions or greater scope locals. Kinda makes one wonder if the extern ones weren't meant in some of these places :) The only thing I'd still like to do WRT this is possibly combine rstat and status in compat.c -- that should be fine, as I do not think the codepaths will want both around at once. Sponsored by: Bright Path Solutions
* Fix merge error in previous commit.jmallett2002-09-281-1/+1
| | | | Sponsored by: Bright Path Solutions
* Add empty default cases where they should be, remove non-local execution stuffjmallett2002-09-289-14/+36
| | | | | | | | | | in compat.c which doesn't even have preprocessor-conditional-hidden support code, and add a debugging statement where we might end up with a nil list somehow, but where I doubt it. First confirmed userland kill for Flexelint. Sponsored by: Bright Path Solutions
* Document the parsing bug.ru2002-09-271-1/+13
|
* Remove a semicolon that appears to be a lie.jmallett2002-09-261-1/+1
| | | | | Spotted by: SPARC64 make WARNS=3 Sponsored by: Rachel Hestilow <rachel@jerkcity.com>
* When formatting the time for a target, use %H instead of %k, which is mostlyjmallett2002-09-261-1/+1
| | | | | | the same, but uses a non-extension option. Sponsored by: Rachel Hestilow <rachel@jerkcity.com>
* Don't declare things as extern when they will be static.jmallett2002-09-261-1/+6
| | | | Sponsored by: Rachel Hestilow <rachel@jerkcity.com>
* Make the DEBUGF() macro portable by (ugh) adding a Debug() function, whichjmallett2002-09-1814-141/+163
| | | | | is merely printf() but to stderr. This takes care of the caveat which lead to the use of a vararg macro -- getting everything to stderr.
* Move common use of if (DEBUG(FOO)) printf... to DEBUGF(FOO, ...), usingjmallett2002-09-1713-431/+172
| | | | | | | | | variable length arguments to a macro. Bump version as this makes DEBUG statements *always* go to stderr rather than sometimes stdout. There are a few stragglers, which I will take care of as soon as I can. Mostly these relate to the need-for-death-of some of the remote job code. Nearby stylistic nits and XXX added/fixed where appropriate.
* #define<space> -> #define<tab>jmallett2002-09-1719-155/+155
|
* Print debugging from DEBUG(VAR) level to stderr. About to macroise this.jmallett2002-09-171-6/+6
| | | | | | (Read: More commits to come). MFC in: 4 days.
* Make it clear that the ":C" variable modifier expects an extendedarchie2002-09-061-2/+2
| | | | | | | regular expression instead of an obsolete regular expression. Also, cross-reference re_format(7) instead of regex(3). MFC after: 3 days
* Deal with bootstrapping from an old -current (almost exactly a year old)peter2002-08-311-0/+3
| | | | | | | which fails the make tests (doesn't understand ${notdef:U}) and therefore fails on __FBSDID in usr.bin/make/*. -DBOOTSTRAPPING is no help here since this is before we are using the new share/mk/* files, and it would conflict with the builtin -DBOOTSTRAPPING support later.. so use a different flag.
* Add a -C ala GNU make(1) for Makefiles which are too lazy to use $(MAKE) andjmallett2002-08-253-3/+11
| | | | | | | | this particular GNU flag. It changes into the given directory for the operation in question. This just goes into said directory at the time of parsing the argument for getopt(3). Submitted by: Rachel Hestilow <rachel@jerkcity.com>
* Allow embedded `:' and `!' in target names.ru2002-08-201-2/+31
| | | | | | PR: bin/6612 Obtained from: OpenBSD MFC after: 1 week
* Remove local prototypes for main().jmallett2002-08-191-1/+0
|
* main.c:450: warning: `targs' might be used uninitialized in this functionru2002-08-111-1/+1
| | | | | | Spotted by: patrick@godloveya.com, naddy, -Wuninitialized This segfaulted alpha and sparc64; i386 had this magically zeroed.
* Pacify ``make -f /dev/null -V FOO''.ru2002-08-071-34/+32
|
* Print a warning when we are given two scripts for one target. This is neitherjmallett2002-07-281-0/+4
| | | | | | | as wide-reaching nor intensive as NetBSD's similar, but the warning uses the same text. Inspired by: NetBSD
* Back out jmallett's realpath changes. They break a set of makefiles thatimp2002-07-261-0/+28
| | | | | | | | | we use in sublte ways with relative paths. Until they can be resolved, back out these changes and put a big comment about why using realpath is busted. Approved by: jmallett MFC After: 100 millifortnights
* Bit-width fields should be of type 'int'.jmallett2002-07-151-1/+1
|
* Use %zu to print size_t.jmallett2002-07-151-2/+2
|
* Fix a bug fixed by NetBSD in revision 1.42 of parse.c by christos which causedjmallett2002-06-201-0/+8
| | | | | | | an example Makefile I was showing someone just last night to report a variable as being recursive. Obtained from: NetBSD
* More unsigned char casts to isupper(3).jmallett2002-06-201-2/+2
| | | | Obtained from: NetBSD
* Provide a heuristic for RCS conflicts.jmallett2002-06-201-2/+9
| | | | Obtained from: NetBSD
OpenPOWER on IntegriCloud