523 Commits

Author SHA1 Message Date
harti
cde8b61542 Constify an argument to a function.
Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-02-03 11:51:25 +00:00
harti
0bc036b793 Get rid of a number of unneccessary memory allocations.
Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-02-03 11:36:19 +00:00
harti
3b3f6b62d1 Make enomem static - it's referenced only in util.c.
Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-02-02 11:25:05 +00:00
harti
f41efac821 Remove a couple of unused buffer functions.
Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-02-02 11:21:26 +00:00
harti
e55f5e8b6f Convert several typedefs from beeing pointers to structs to be the structs
itself. This will ease constification (think of what 'const Ptr foo'
means if Ptr is a pointer to a struct).

Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-02-02 07:36:18 +00:00
harti
69532337be Move all the remaining list functions into one C-file and remove
double documentation comments. Remove the 3rd clause (from 4) of the
BSD license because these files have only the UCB copyright.

Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-02-01 15:28:41 +00:00
harti
9c48e16769 Remove debugging stuff that crept in in the previous commit. 2005-02-01 11:39:45 +00:00
harti
b24cc98851 Clean up include files and file including. Split nonints.h into pieces
that get included just where they are needed. All headers include the
headers that they need to compile (just with an empty .c file). Sort
includes alphabetically where apropriate and fix some duplicate commenting
for struct Job, struct GNode and struct Shell by removing one version and
inlining the comments into the structure declaration (the comments have been
somewhat outdated).

This patch does not contain functional changes (checked with md5).

Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-02-01 10:50:37 +00:00
harti
17159f0f8b Fix quoting of the MAKEFLAGS environment variable by only quoting spaces
and tabs. This is still not correct for command line variable values
ending in a backslash because this would require a larger effort.
Document this limitation in the BUGS section of the man page. The
quoting is mostly compatible with that of gmake and smake.

Tested by:	Max Okumoto and Joerg Sonnenberger from DragonFly BSD
Reviewed by:	ru (man page, partly)
2005-01-26 18:19:39 +00:00
ru
7f3c7f0d46 Sort sections. 2005-01-18 13:43:56 +00:00
ru
169f1013f0 Scheduled mdoc(7) sweep. 2005-01-11 10:32:52 +00:00
ru
c1a820195c NOSHARED -> NO_SHARED 2004-12-21 09:59:45 +00:00
harti
835198efc5 Fix compilation for the USE_KQUEUE case.
Submitted by:	Emil Mikulic <emikulic@dmr.ath.cx>
2004-12-20 10:21:27 +00:00
harti
1c86b95b10 maxJobs is declared extern in job.h so it cannot be static in job.c.
PR:		bin/75210
Submitted by:	Andreas Jochens; Robert Millan <rmh@debian.org>
2004-12-20 10:14:05 +00:00
harti
ebeffbcdeb Remove all the cleanup functions. There is no reason to free memory
just before exiting (especially given the number of memory leaks) -
it just costs time.
2004-12-17 13:20:19 +00:00
ru
de05db1167 Fix a long-standing bug when make(1) is passed the -V and
-f options in MAKEFLAGS environment variable, and some of
these options are also specified on the command line.

Thanks to:	marcel
Reviewed by:	harti
2004-12-16 19:46:50 +00:00
harti
ce24622080 Instead of dynamically allocating list heads allocated them statically
now that their size is only two pointers. This eliminates a lot of calls
to Lst_Init and from there to malloc together with many calls to
Lst_Destroy (in places where the list is obviously empty). This also
reduces the chance to leave a list uninitilized so we can remove more
NULL pointer checks and probably eliminates a couple of memory leaks.
2004-12-16 16:14:16 +00:00
harti
d78a3892e0 Remove a list that was just used to free all variables just before exiting. 2004-12-10 11:58:34 +00:00
harti
e276a7356e Remove a list that used to hold all the GNodes just to be able
to free them just before exiting.
2004-12-10 10:32:10 +00:00
harti
db4fd70037 Remove a useless list where just all command lines are stuffed onto, never
used and just freed at the end. The idea might have been to be able
to free all the strings, but what's the point to free just before exiting?
2004-12-10 10:13:40 +00:00
harti
972d6db1ca Nobody actually checked the return codes from Lst_Append and Lst_Insert
so don't return anything.
2004-12-09 15:31:32 +00:00
harti
ba2adca5db If a path element directory was never opened it is not on the list of
open directories so there is no need to remove it from there. This fixes
a core dump introduced by removing the run-time check from Lst_Remove.
2004-12-09 10:00:55 +00:00
harti
071557e301 Now that circular lists are gone remove stuff for them. Simplify
somewhat so that we can remove a local variable.
2004-12-08 17:48:15 +00:00
harti
7bfaeaf061 No caller checks the return code from Lst_Remove, so don't return one.
Simplify the algorithm now that circular lists are gone.
2004-12-08 17:43:43 +00:00
harti
d9ec783dcb Don't check the return code from Lst_Remove. There is no way
that the list's first element is not on the list.
2004-12-08 16:50:14 +00:00
harti
bcfafac95e Remove return value from Lst_Concat. None of the callers ever checked
it. Remove stuff that was needed for circular lists.
2004-12-08 16:47:19 +00:00
harti
debc547816 Don't free the second list in Lst_Concat for LST_CONCLINK; free it
in the caller instead.
2004-12-08 16:28:53 +00:00
harti
bcb1f1f6f5 Get rid of the sequential access feature of the lists. This was used
only in a couple of places and all of them except for one were easily
converted to use Lst_First/Lst_Succ. The one place is compatibility
mode in job.c where the it was used to advance to the next command on
each invocation of JobStart. For this case add a pointer to the node to
hold the currently executed command.
2004-12-08 16:22:01 +00:00
harti
4dcbfdf876 Constify the arguments to the list compare function. This temporarily
requires to make a copy of the filename in ReadMakefile and to duplicate
two small functions in suff.c. This hopefully will go away when everything
is constified.

Submitted by:	Max Okumoto <okumoto@ucsd.edu> (partly)
2004-12-08 12:59:27 +00:00
harti
22a68a12ee Constify some calls of Buf_AddBytes.
Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2004-12-08 08:18:13 +00:00
harti
bde7bbf9ad Consify the arguments to str_concat. Remove the STR_DOFREE flag for that
purpose and explicitely free the input string in the one place that was
calling str_concat with that flag.

Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2004-12-08 08:11:59 +00:00
harti
23620cc24f Typedefs of pointers to structs are evil. Make Lst and LstNode typedef of
the structs itself not of pointers to them. This will simplify constification.

Checked by: diff on the object files
2004-12-07 13:49:13 +00:00
harti
9639eb3806 Constification of arguments passed to functions; no change on the
resulting executable.

Checked by:	diff on original and new objects

Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2004-12-07 12:23:45 +00:00
harti
e65ea2146d Make needs no circular lists so remove them from the list code. 2004-12-07 10:14:16 +00:00
harti
885c50507d Some constification which doesn't require code rewrites. 2004-12-06 15:20:12 +00:00
harti
f237a4f68d Style: fix indentation. 2004-12-06 11:30:36 +00:00
harti
f55a4ad1b5 Remove an unused macro. 2004-12-06 08:57:41 +00:00
harti
6fb43802bf Constify arguments to Hash_FindEntry and Hash_CreateEntry. 2004-12-06 08:56:30 +00:00
harti
cf54e99966 Remove extra empty lines. 2004-12-06 08:52:02 +00:00
harti
c06cfd7434 Style: fix indentation, prototypes for functions even in comment. 2004-12-06 08:51:34 +00:00
harti
f92a5a2616 Remove an extra space.
Submitted by:	ru
2004-12-03 13:03:16 +00:00
harti
b01c2c6a27 Fix breakage introduced on 64-bit platforms with my last commit. Need
to change to size_t in a couple of other places too.
2004-12-03 12:55:57 +00:00
harti
8edfb13f77 Plug a memory leak. 2004-12-03 12:07:03 +00:00
harti
2156fca38e Put macro arguments in paranthesis.
Submitted by:	johan
2004-12-03 12:02:14 +00:00
harti
41fdfcd45f Make sizes to be of type size_t and correct function arguments that
should be Byte (as the numerous casts to Byte in the function calls show).
2004-12-03 11:59:30 +00:00
harti
51241dfea9 Style: fix indentation, protect macro with do { } while (0).
Checked with: diff on object file.
2004-12-03 08:43:07 +00:00
harti
0ce0c908ff Describe the .SHELL target.
Reviewed by:	ru
2004-12-03 08:03:11 +00:00
harti
8345f29bee Change the algorithm that matches the builtin shells from the name keyword
of the .SHELL target. Formerly it used to select the shell with the
longest common trailing substring, so that bash would select sh, but pocsh
would select csh. Now an exact match is required so that specifying bash
without also giving a path and the other keywords will give an error.

PR:
Submitted by:
Reviewed by:	ru
Approved by:
Obtained from:
MFC after:
2004-12-03 08:02:52 +00:00
harti
72af789644 Remove a double test for the same ptr != NULL and use the official
macro for this; reorder an if.
2004-12-01 17:44:04 +00:00
harti
cf2c3cae34 Style: remove a lot of unnecessary casts, add some and spell the null
pointer constant as NULL.

Checked by: diff -r on the object files before and after
2004-12-01 10:29:20 +00:00