259065 |
07-Dec-2013 |
gjb |
- Copy stable/10 (r259064) to releng/10.0 as part of the 10.0-RELEASE cycle. - Update __FreeBSD_version [1] - Set branch name to -RC1
[1] 10.0-CURRENT __FreeBSD_version value ended at '55', so start releng/10.0 at '100' so the branch is started with a value ending in zero.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
256281 |
10-Oct-2013 |
gjb |
Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation
|
252679 |
04-Jul-2013 |
kevlo |
Remove unnecessary cast to pid_t.
|
250719 |
16-May-2013 |
sjg |
Reverse the sense of the test wrt bmake, and guard against MK_BMAKE not being defined.
|
250699 |
16-May-2013 |
sjg |
Build bmake by default. If someone explicitly builds usr.bin/make while MK_BMAKE==yes, install it as 'fmake'.
Reviewed by: brooks
|
243831 |
03-Dec-2012 |
jkim |
Remove fictitious support for 80386-class CPUs from bsd.cpu.mk and make(1). It was removed from head more than 8 years ago (see r137784 and r137785).
Reviewed by: imp, delphij, dim
|
241280 |
06-Oct-2012 |
avg |
make: report :M or :N pattern in debug mode
MFC after: 12 days
|
239071 |
05-Aug-2012 |
dim |
In usr.bin/make/var.c, function ParseModifier(), initialize the 'error' variable to NULL, to avoid using it uninitialized in certain cases.
This fixes the following clang 3.2 warning:
usr.bin/make/var.c:1770:10: error: variable 'error' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] if (vp->execute) { ^~~~~~~~~~~ usr.bin/make/var.c:1777:10: note: uninitialized use occurs here if (error) ^~~~~ usr.bin/make/var.c:1770:6: note: remove the 'if' if its condition is always true if (vp->execute) { ^~~~~~~~~~~~~~~~~ usr.bin/make/var.c:1768:23: note: initialize the variable 'error' to silence this warning const char *error; ^ = NULL
MFC after: 1 week
|
237282 |
20-Jun-2012 |
obrien |
Correct typo in version.
|
236365 |
31-May-2012 |
obrien |
Update date for r236338 & r236346.
|
236346 |
31-May-2012 |
obrien |
Add "-V '${VAR}'" variable expansion from Portable Berkeley Make.
Submitted by: Simon Gerraty <sjg@juniper.net>
|
236338 |
30-May-2012 |
obrien |
Deprecate the FreeBSD make's ":U" (to-upper case) and ":L" (to-lower case) modifiers for ":tu" and ":tl" from OSF's ODE, which made its way into NetBSD's make, which is the source for the Portable Berkeley Make.
Submitted by: Simon Gerraty <sjg@juniper.net>
|
235400 |
13-May-2012 |
joel |
Minor mdoc nits.
|
235152 |
09-May-2012 |
imp |
Make is part of the bootstrap path, so we need to guard against this not being defined. Otherwise we don't make a new make when the old make is incompatible.
|
234782 |
29-Apr-2012 |
kib |
Add src.conf option WITH_SHARED_TOOLCHAIN to enable building the toolchain binaries as dynamically linked. Option is disabled by default.
Reviewed by: ru (previous version) MFC after: 2 weeks
|
231544 |
12-Feb-2012 |
fjoe |
Include target names in diagnostic output.
Submitted by: Garrett Cooper
|
230392 |
20-Jan-2012 |
rmh |
Map foreign architecture names to FreeBSD naming convention.
Approved by: kib (mentor)
|
228992 |
30-Dec-2011 |
uqs |
Spelling fixes for usr.bin/
|
228525 |
15-Dec-2011 |
fjoe |
Revert r228521: sometimes job output is lost (see tools/regression/usr.bin/make/execution/joberr test).
openpty(fd + 0, fd + 1,...) version does not have this problem but it sometimes enters an infinite sleep in "ttywait" state in tty_drain() when make(1) closes slave pty.
|
228521 |
15-Dec-2011 |
fjoe |
job make: if stdout is a tty create a pty when running a command.
|
228157 |
30-Nov-2011 |
fjoe |
- Fix segmentation fault when running "+command" when run with -jX -n due to Compat_RunCommand() being called with `cmd' that is not on the node->commands list - Make ellipsis ("..." command) handling consistent: check for "..." command in job make after variables expansion to match compat make behavior - Fix empty command handling (after variables expansion and @+- modifiers are processed): now empty commands are ignored in compat make and are not printed in job make case - Bump MAKE_VERSION to 5-2011-11-30-0
|
227172 |
06-Nov-2011 |
ed |
Add missing static keywords to make(1)
|
227121 |
05-Nov-2011 |
jilles |
make(1): obj dirs are physical paths so write `pwd -P` rather than `pwd`.
Regular pwd may return a pathname containing symlinks, but make does not use such pathnames.
|
218909 |
21-Feb-2011 |
brucec |
Fix typos - remove duplicate "the".
PR: bin/154928 Submitted by: Eitan Adler <lists at eitanadler.com> MFC after: 3 days
|
216178 |
04-Dec-2010 |
uqs |
Move most of the remaining USD/PSD/SMM papers into share/doc
|
213494 |
06-Oct-2010 |
imp |
Remove hack needed by 6.x machines and older machines to run newer makes on FreeBSD/pc98. The need for this hack has passed. If you are one of the rare people that may need this, then you should setenv MACHINE=pc98 as a workaround.
|
213493 |
06-Oct-2010 |
imp |
Use more portable errx instead of errc. The latter doesn't buy us anyting anyway, since the error EAGAIN's error message doesn't add anything to the error strings that are there now.
|
209951 |
12-Jul-2010 |
emaste |
Remove extraneous ;
|
207948 |
12-May-2010 |
brueffer |
- Missing full stops - Upper case the first character of an description - Section headings do not need to be quoted. From OpenBSD's make.1, revision 1.81 - Plural of suffix is suffixes. From OpenBSD's make.1, revision 1.61 - s/seperating/separating/
PR: 135165 Submitted by: Alan R. S. Bueno <alan.bsd@gmail.com> MFC after: 1 week
|
206241 |
06-Apr-2010 |
imp |
Remove yet another vestage of alpha support.
|
203098 |
27-Jan-2010 |
ru |
Eliminated nits from last commit.
OK'ed by: rodrigc
|
203055 |
27-Jan-2010 |
rodrigc |
Partial merge of man page cleanups from NetBSD:
revision 1.91 Fri Nov 7 01:01:46 2003 UTC by lukem
Add some subsections in the VARIABLE ASSIGNMENTS section.
In the "modifier description" list, show each modifier with the leading `:'. Rationale: it's hard to search for modifiers without it, and we already do the same thing in the -options and .makecommands lists. I now find it much easier to find the description for a modifier in the man page.
Obtained from: NetBSD
|
202070 |
11-Jan-2010 |
harti |
Fix the previous commit (still not used to svn vs. cvs). Use the define from paths.h for the default temporary directory and remove and unneccessary getenv call.
|
202045 |
10-Jan-2010 |
harti |
Make make respect the TMPDIR environment variable.
PR: bin/115447 Submitted by: Eugene Grosbein
|
201526 |
04-Jan-2010 |
obrien |
Add ability to search up the directory hierarchy for the system directory. Do by specifying ".../" with '-m' or MAKESYSPATH (new) environment variable.
Reviewed by: <sjg@NetBSD.org> Obtained from: NetBSD (+ embellishment by me, sent back to NetBSD)
|
201456 |
04-Jan-2010 |
obrien |
Report lines that ought to contain a ':' operator but start with a '.' as "Unknown directive" sinze they are more likely to be .elseif (etc). (NetBSD PR 37222).
Obtained from: NetBSD
|
201455 |
04-Jan-2010 |
obrien |
Add check for subversion "original" marker.
|
201386 |
02-Jan-2010 |
ed |
Build usr.bin/ with WARNS=6 by default.
Also add some missing $FreeBSD$ to keep svn happy.
|
201225 |
29-Dec-2009 |
ed |
Add missing `void' keyword.
|
200630 |
17-Dec-2009 |
stas |
- Partially revert r200417. config.h brings several definitions, that appears to be actually used. Without config.h included cross-build of world failed (at least for ARM).
|
200417 |
11-Dec-2009 |
delphij |
Remove unnecessary includes.
Reviewed by: rodrigc
|
200120 |
05-Dec-2009 |
stefanf |
Add a missing space to the error message when execvp() failed.
|
199419 |
17-Nov-2009 |
obrien |
Catch up with r144020's /Dir_FindFile/Path_FindFile/
|
199404 |
17-Nov-2009 |
obrien |
Garbage collect some old #ifdef'ed code from 1994 that causes vi's '%' to be unable to find a match in Path_FindFile().
|
198199 |
18-Oct-2009 |
fjoe |
Reset UPTODATE gnodes after remaking makefiles when make is not going to be restarted: such nodes could be marked UPTODATE without doing rebuild due to remakingMakefiles being TRUE.
|
198197 |
18-Oct-2009 |
fjoe |
Exit with non-zero error code in case of errors when make is run with -k and not parallel (compat) make is run.
|
194797 |
23-Jun-2009 |
delphij |
Use strlcpy() instead of manually setting the last byte of the array to \0.
|
194217 |
14-Jun-2009 |
des |
Add volatile to sig_atomic_t where it was missing.
MFC after: 1 week
|
190821 |
07-Apr-2009 |
fjoe |
Avoid infinite loops when remaking makefiles not only for Makefile targets but also for targets they depend on.
|
188075 |
03-Feb-2009 |
obrien |
Partially revert r186559.
|
188001 |
02-Feb-2009 |
fjoe |
Remove duplicate OPTFLAGS definition.
|
187995 |
02-Feb-2009 |
imp |
Sort the options, per style(9).
Reviewed by: obrien@
|
187968 |
31-Jan-2009 |
imp |
David doesn't consider the prior -s behavior a bug. Back out this change.
|
187921 |
30-Jan-2009 |
imp |
Unbreak make -s. There's about a 10% performance improvement with -s in many environments. The recent --- blah --- reintroduction has killed. That output makes almost no sense when all the other output is silenced.
|
187475 |
20-Jan-2009 |
rdivacky |
Remove inlining of functions that are used mostly in different object files. This gets rid of gnu89 style inlining. Also silence gcc by assigning two variables NULL. This lets use to remove NO_WERROR.
Approved by: kib (mentor) Approved by: harti
|
187132 |
13-Jan-2009 |
obrien |
Don't enable -Q by default - I've fixed the rescue build issue.
|
186831 |
06-Jan-2009 |
obrien |
Note that r186713 also contained a change to VarAdd where we propagate the newly created 'Var' back to the caller. Also, back out an accidentally commented WIP comment.
|
186713 |
03-Jan-2009 |
obrien |
+ Add the -Q be-quiet flag for parallel jobs. - Enable -Q by default for the moment - there is something weird going on in the rescue build.
|
186559 |
29-Dec-2008 |
obrien |
1. Add the ability to tweak the token output before targets in job mode. E.g., .MAKE.JOB.PREFIX=${.newline}---[${.MAKE.PID}] would produce
---[1234] target ---
2. Added ${.newline} as a simple means of being able to include '\n' in the assignment of .MAKE.JOB.PREFIX
Obtained from: NetBSD
|
186558 |
29-Dec-2008 |
obrien |
Consistently use Var_SetGlobal().
|
186506 |
27-Dec-2008 |
trhodes |
Fix up after last commit:
Bump doc date; Kill hard sentence breaks; Fix commas by moving them off their own line.
|
186502 |
26-Dec-2008 |
luigi |
Clarify the behaviour of conditionals when dealing with comparisons. In particular, point out that string comparison can only use != and == (how weird, given that the underlying call to strcmp returns more information), that floating point values are correctly interpreted as numbers, and that the left-hand side must be a variable expansion.
MFC after: 3 weeks
|
186279 |
18-Dec-2008 |
fjoe |
Exit with error code 2 when run with -k (continue if errors) and build failed.
|
183465 |
29-Sep-2008 |
ache |
Since in some cases (when found obsolete) 'make' can be builded earlier at 'upgrade_checks' target, put arc4random_uniform() into __FreeBSD_version ifdef.
|
181397 |
07-Aug-2008 |
ache |
Use arc4random_uniform(3)
|
181021 |
30-Jul-2008 |
ed |
Add POSIX -p flag to make(1).
This article [1] describes the -p flag for make(1):
Write to standard output the complete set of macro definitions and target descriptions. The output format is unspecified.
We already support a similar flag (-d g1), but unlike -p, it still executes commands. Our implementation just turns it into -d g1, but also sets flag `printGraphOnly', which will cause make(1) to skip execution.
[1] http://www.opengroup.org/onlinepubs/009695399/utilities/make.html
Reviewed by: imp PR: standards/99960
|
180065 |
27-Jun-2008 |
obrien |
Note that the .POSIX special target disables the "Remaking Makefiles" feature.
|
177545 |
24-Mar-2008 |
ru |
Fix splitting into words of the .for expression to allow for spaces in values. Without this change, the following valid call broke due to parsing of .MAKEFLAGS in bsd.symver.mk:
cd /usr/src/lib/libc && make -n DEBUG_FLAGS="-DFOO -DBAR"
Spotted by: Igor Sysoev Submitted by: Maxim Dounin, ru MFC after: 1 week
|
177541 |
24-Mar-2008 |
ru |
Fix bugs in the previous revision.
|
177102 |
12-Mar-2008 |
obrien |
If the special target .MAKEFILEDEPS exists, then enable the "remaking makefiles" feature. Otherwise, follow traditional Pmake behavior.
|
177101 |
12-Mar-2008 |
obrien |
If the special target .MAKEFILEDEPS exists, then enable the "remaking makefiles" feature. Otherwise, follow traditional Pmake behavior. (hash table will be regenerated and committed follow this commit)
|
176842 |
05-Mar-2008 |
yar |
The non-POSIX environment variable MAKE was superseded by MAKEFLAGS ages ago, so don't mention it in comments.
Tested with: cmp(1)
|
176839 |
05-Mar-2008 |
yar |
Don't forget to set MAKEFLAGS in the childs' environment from the .MAKEFLAGS global variable even if it's empty or unset. This means setting MAKEFLAGS to just an empty string in the latter case.
If not doing so, make(1) behaved inconsistently WRT MAKEFLAGS. In particular, it would let a `-f foo' option down to sub-makes if .MAKEFLAGS was unset. E.g.,
env MAKEFLAGS="-f mymakefile" make
would pass `-f mymakefile' down to sub-makes via their environment (unless mymakefile added something to .MAKEFLAGS). But any additional options appearing would change this behaviour to not passing `-f mymakefile' to sub-makes, as in:
env MAKEFLAGS="-f mymakefile" make -D DUMMY
or
env MAKEFLAGS="-f mymakefile -D DUMMY" make
(unless mymakefile cleared .MAKEFLAGS).
Also make(1) would leave MAKEFLAGS at its initial value if the makefile set .MAKEFLAGS to an empty value. I.e., it was impossible to override MAKEFLAGS with an empty value. (Note well that makefiles are not to touch MAKEFLAGS directly, they alter .MAKEFLAGS instead. So make(1) can filter out things such as -f when copying MAKEFLAGS to .MAKEFLAGS at startup. Direct modifications to MAKEFLAGS just go nowhere.)
While the original intentions of the BSD make authors are somewhat unclear here, the bug proves that NOT passing -f options down is the settled behaviour because the opposite behaviour is totally unreliable in the presence of any other options. In addition, not passing down -f's found in the environment is consistent with doing so WRT the command line.
Update the manpage accordingly and make the whole description of MAKEFLAGS and .MAKEFLAGS more consistent as this change indeed brings more consistency into the reliable behaviour of make(1).
Submitted by: ru (main.c) Tested with: make world
|
176808 |
04-Mar-2008 |
obrien |
It seems some don't care for the anchient joke. Add WITHOUT_OLD_JOKE to your CFLAGS if you fall into this camp.
|
176807 |
04-Mar-2008 |
obrien |
No need to tell make to DTRT with "make love", just do it. Also remove the 2002/08/31 bootstrapping aid for upgrades from year old (mid-2001) systems.
|
176799 |
04-Mar-2008 |
imp |
<limits.h> is necessary for using INT_MIN, so included it here explicitly rather than relying on name space pollution to pull it in for us.
NB: The usage of INT_MIN is somewhat bogus and suspect to my eye, but this commit doesn't address that issue.
|
176793 |
04-Mar-2008 |
yar |
Move a stray paragraph on .Ev MAKEFLAGS to where it belongs.
|
176792 |
04-Mar-2008 |
yar |
Revise the description of how .Ev MAKEFILE and .Va .MAKEFILE relate. The most important point is that -f option(s) are never copied from .Ev MAKEFILE to .Va .MAKEFILE by make(1), which is consistent with handling the command line. (-f silently sit in .Ev MAKEFILE and go to make's children unless overwritten via .Va .MAKEFILE)
Bump .Dd.
|
176789 |
04-Mar-2008 |
yar |
Split descriptions of .Ev MAKEFILE and .Va .MAKEFLAGS for clarity.
|
176786 |
04-Mar-2008 |
imp |
Note 7.0 was the first version that FreeBSD/pc98 had a MACHINE of pc98 instead of i386.
|
176785 |
04-Mar-2008 |
imp |
Linux requires -D__dead2= and -D__unused= to get rid of the sys/cdef.h-isms in the make source. The variant of linux I tried it on doesn't have arc4random, so -Darc4random=random too.
|
174480 |
09-Dec-2007 |
imp |
Use a clever definition of __FBSDID to allow building on !FreeBSD systems.
|
173919 |
25-Nov-2007 |
fjoe |
Fix -jX when makefiles are remade.
|
173217 |
31-Oct-2007 |
yar |
Give more details on the following topics: o How global, command-line, and environment variables relate. o What peculiarities the -f option has WRT ${MAKEFLAGS}.
|
170179 |
01-Jun-2007 |
fjoe |
Change directory back to ${.CURDIR} when remaking Makefiles.
Pointed out by: ru
|
168893 |
20-Apr-2007 |
fjoe |
Improve logging when -dm is specified: if the node is considered out-of-date print not only "modified before source" message but also the path of youngest source.
|
168892 |
20-Apr-2007 |
fjoe |
When remaking makefiles check that mtime has actually changed.
This fixes infinite restart in the following case:
Makefile: foo
foo: bar do-something
Unlike GNU make, BSD make considers "Makefile" node as remade even if "foo" is up-to-date and was not actually rebuilt. GNU make does not consider nodes without commands as remade if child nodes were not actually rebuilt.
Most probably, more proper fix would be to bring BSD make behaviour in-line with GNU make but this would be more intrusive change.
|
168671 |
12-Apr-2007 |
ru |
In .error and .warning, prefer command-line variables to globals, as per documentation.
Nudged by: Jeremie Le Hen
|
167339 |
08-Mar-2007 |
fjoe |
Better English.
|
167330 |
08-Mar-2007 |
fjoe |
Implement "Remaking Makefiles" feature:
After reading Makefile and all the files that are included using .include or .sinclude directives (source Makefiles) make considers each source Makefile as a target and tries to rebuild it. Both explicit and implicit rules are checked and all source Makefiles are updated if necessary. If any of the source Makefiles were rebuilt, make restarts from clean state.
To prevent infinite loops the following source Makefile targets are ignored: - :: targets that have no prerequisites but have commands - ! targets - targets that have .PHONY or .EXEC attributes - targets without prerequisites and without commands
When remaking a source Makefile options -t (touch target), -q (query mode), and -n (no exec) do not take effect, unless source Makefile is specified explicitly as a target in make command line. Additionally, system makefiles and .depend are not considered as a Makefiles that can be rebuilt.
Reviewed by: harti
|
167329 |
08-Mar-2007 |
will |
Fix a bug where the standard input (fifoFd == 0) was confused with an error return from open(2), leading to an erroneous value of maxJobs and a hung make when -f is standard input and -j is used.
PR: bin/101232 Submitted by: Nate Eldredge <nge@cs.hmc.edu>
|
165668 |
31-Dec-2006 |
maxim |
o Grammar: is appears -> appears.
PR: docs/107306 Submitted by: Tomas Mozes MFC after: 1 week
|
165628 |
29-Dec-2006 |
yar |
Fix a group of typos: preceed -> precede, preceeded -> preceded, preceeding -> preceding.
Submitted by: Andre Guibert de Bruet <andy@siliconlandmark.com>
|
163171 |
09-Oct-2006 |
ru |
Don't go beyond the provided string when parsing the `\' character.
PR: bin/99985 Submitted by: Nate Eldredge MFC after: 3 days
|
162816 |
29-Sep-2006 |
ru |
Markup nit.
|
162792 |
29-Sep-2006 |
ru |
Markup fixes.
|
160574 |
22-Jul-2006 |
obrien |
Tell when a .include is processed with '-dd'.
|
160450 |
17-Jul-2006 |
obrien |
VarAdd() already does the debug printing, so Var_Set() only needs to do it in the case the var already exists.
|
160442 |
17-Jul-2006 |
obrien |
whitespace fixing
|
158452 |
11-May-2006 |
ru |
So, what's it supposed to say when you type "make love"?
|
157589 |
08-Apr-2006 |
fjoe |
Update comment about var modifiers (add 'N' and 'O' descriptions).
|
157588 |
08-Apr-2006 |
fjoe |
Add :u var modifier (remove adjacent duplicate words like uniq(1).
Reviewed by: harti Obtained from: NetBSD (mostly)
|
153115 |
05-Dec-2005 |
ru |
Prepare for MACHINE and hw.machine switching to "pc98" on FreeBSD/pc98.
Reviewed by: nyan
|
152982 |
01-Dec-2005 |
davidxu |
Quickly fix brokeness in revision 1.157, that change was free()ing stack memory which causes the program to abort, and I can no longer make buildworld.
|
152969 |
30-Nov-2005 |
fjoe |
- match_var: do not address memory at invalid address (`len' can be greater than strlen(var) + 1) - ReadMakeFile: prevent `fname' memory leak - ReadMakeFile: prevent double free (caused by double fclose) -- ParsePopInput() closes input file
Reviewed by: harti
|
151419 |
17-Oct-2005 |
ru |
Make sure that files included using ".include <foo>" are really looked for in the system make file directory or in the specified -m paths instead of always looking in the other -I and .PATH specified paths. (Commit log shamelessly stolen from NetBSD.)
Reviewed by: yar
|
151351 |
14-Oct-2005 |
yar |
Revise the manpage to a certain extent, mostly with respect to make's processing of top-level and included makefiles. Point out at make.conf(5) and __MAKE_CONF when telling about sys.mk.
Reviewed by: ru
|
151255 |
12-Oct-2005 |
yar |
__MAKE_CONF doesn't really belong here because it is a FreeBSD extension of sys.mk. A xref to make.conf(5) will be enough here.
Requested by: ru
|
151201 |
10-Oct-2005 |
yar |
Clarify the usage and effects of sys.mk, make.conf(5), and __MAKE_CONF.
MFC after: 2 weeks
|
151162 |
09-Oct-2005 |
scottl |
Make sure that the created fifo gets deleted if the top level make instance exits due to a signal.
|
150609 |
27-Sep-2005 |
ru |
Remove redundant `\&' escapes.
|
150608 |
27-Sep-2005 |
ru |
Fixup previous commit.
|
150601 |
26-Sep-2005 |
phk |
Please ship the pointy hat to its home position.
|
150598 |
26-Sep-2005 |
phk |
Update coordinates for "mph" hash generator now that it lives in ports.
|
150595 |
26-Sep-2005 |
phk |
Add a .sinclude directive which does the exact same as .include, except whine when the file cannot be found and opened.
|
149844 |
07-Sep-2005 |
harti |
Fix the type of the variable 'debug'. It is used as a bitmap, so the type should be int rather than Boolean.
PR: bin/84528 Submitted by: Max Okumoto <okumoto@ucsd.edu> MFC after: 3 weeks
|
148580 |
31-Jul-2005 |
keramida |
Fix all the spelling mistakes I could find in the man pages for words that have at least 3 characters.
MFC after: 1 week Thanks to: Music band ``Chingon'' for keeping me company while searching for these.
|
148151 |
19-Jul-2005 |
harti |
Fix the "..." special command. If this command is found all further commands for this target are appended to the .END target instead of beeing executed now. They are executed when the graph is finished. There was a bug with executing the .END target which came in when doing conversion to LST_FOREACH() which caused make to dump core.
PR: bin/83698 Submitted by: Max Okumoto <okumoto@ucsd.edu> MFC after: 3 days
|
147370 |
14-Jun-2005 |
ru |
Markup and wording fixes.
Approved by: re (blanket)
|
146625 |
25-May-2005 |
harti |
Under certain conditions the condition parser would go one past end of the string. Until now this caused no harm, because the buffer code used to tack two NULs onto buffers. With the new, soon to come, parsing code this isn't the case anymore in all cases, so fix this.
|
146608 |
25-May-2005 |
harti |
Document why there is a dependency of certain object files from the Makefile.
Requested by: ru
|
146581 |
24-May-2005 |
harti |
The caller of Var_Value() should not change the variable value. Make this clear by constifying the return value.
Obtained from: DragonFlyBSD
|
146580 |
24-May-2005 |
harti |
Get rid of the third argument to Var_Value() the pointer it pointed to has always been set to NULL for some time now.
Obtained from: DragonFlyBSD
|
146579 |
24-May-2005 |
harti |
Make shell.o dependend on the Makefile just in case someone changes the default shell in the Makefile.
|
146578 |
24-May-2005 |
harti |
Bump the warning level to 6.
|
146577 |
24-May-2005 |
harti |
Fix a 64-bit warning by casting an int64_t to intmax_t and printing it with %jd.
|
146574 |
24-May-2005 |
harti |
Factor out ProcExec() into its own file and rename it to Proc_Exec() for consistency with the rest of make.
Obtained from: DragonFlyBSD (except for the rename)
|
146572 |
24-May-2005 |
harti |
Factor out all the .SHELL parsing related stuff into its own file and rename the function to be consistent with the naming scheme in the rest of make. No functional changes.
Obtained from: DragonFlyBSD (idea and most of shell.h)
|
146571 |
24-May-2005 |
harti |
Use the name of the default shell instead of a numeric index to select the default shell.
Idea from: DragonFlyBSD
|
146570 |
24-May-2005 |
harti |
Another shell attribute 'unsetenv' that will cause to unsetenv("ENV") before executing the shell. Until now this was done when the default shell was the ksh. This failed if the default shell was sh or csh and the user switched to ksh.
|
146563 |
24-May-2005 |
harti |
Describe the meta and builtins attributes for the .SHELL special target.
|
146562 |
24-May-2005 |
harti |
Describe the -x option and the .WARN pseudo-target.
|
146560 |
24-May-2005 |
harti |
Before doing any parsing parse the builtin shell specifications and set the current shell to DEFSHELL. Put all these specifications into a list. Add user specified new shells to this list. If the user just selects one of the already know shells just pick the right one off the list. This let's one do something like:
# Full specification of the user's shell. This also selects the shell. .SHELL: name=myshell path=/somewhere/foo echo=loud ...
FOO != bar # use myshell here
.SHELL: name=sh
BAR != baz # use /bin/sh here
.SHELL: name=myshell # no need for full spec here.
# continue to use the user's special shell.
|
146557 |
24-May-2005 |
harti |
Allow the .SHELL target to specify the list of shell meta characters and the list of shell builtins. Both of these are needed for the compat mode where make directly executes commands if the command line contains neither a shell meta character nor a shell builtin. The list of builtins is not changed, but csh has '@' added as a meta-character.
Initialize the default shell by parsing a string as one would specify to the .SHELL target. So we get rid of the CShell clone of struct Shell which just contained const char * where struct Shell had char *.
Add a debugging function for dumping a parsed shell description to stdout.
|
146543 |
23-May-2005 |
harti |
Make the ArgArray_Init() function visible to the rest of make. It will soon be needed for the .SHELL parsing code.
|
146345 |
18-May-2005 |
harti |
Get rid of global variables for argument vectors produced by brk_string() introduce a struct that holds all the information about an argument vector and pass that around.
Author: Max Okumoto <okumoto@ucsd.edu> Obtained from: DragonFlyBSD
|
146338 |
18-May-2005 |
harti |
Get rid of the ReturnStatus obscuration that was anyway used only in two places. While here don't bother returning anything from Lst_Replace - nobody ever checks the return code.
Suggested by: jmallet
|
146184 |
13-May-2005 |
harti |
Use the print_flags function to print the OP_ flags of a target. Give the function one more argument to decide whether it should print the flags like a C-expression or just space-delimited.
|
146177 |
13-May-2005 |
harti |
Move the Boolean and ReturnStatus stuff from sprite.h to util.h and get rid of sprite.h.
Obtained from: DragonFlyBSD
|
146174 |
13-May-2005 |
harti |
Make Shell_Init() static - it's only used here. Make sure we don't end up with shellPath beeing non-zero, but shellName beeing zero in the error case - back out cleanly from the error. When executing a command for macro assignment in Cmd_Exec() stuff the path of the shell into argv[0], not the name. This makes no difference from the functionality point of view, but allows the regression tests to determine whether make executes the correct shell.
|
146160 |
12-May-2005 |
jmallett |
Include <err.h>. On my system CVS Make(1) has an implicit declaration of warnc(3) without it.
|
146158 |
12-May-2005 |
harti |
Still too early to bump WARNS - there are still warnings on 64bit architectures.
|
146157 |
12-May-2005 |
harti |
Make sure machine is initialize before use. Also make two pointers const to get rid of the last two const warnings.
|
146156 |
12-May-2005 |
harti |
Get rid of the warning about vfork() clobbering variables.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.246)
|
146155 |
12-May-2005 |
harti |
Do mktemp() by hand to get rid of the mktemp() warning and the possible associated security hole.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.245)
|
146154 |
12-May-2005 |
harti |
Use a variable initialized to a string instead of the string directly to get rid of a const warning.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.244)
|
146153 |
12-May-2005 |
harti |
Move code in CondToken() and get rid of a goto.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.243)
|
146152 |
12-May-2005 |
harti |
Remove a useless else and un-indent the following code.
|
146150 |
12-May-2005 |
harti |
Revert the previous accidential commit.
|
146149 |
12-May-2005 |
harti |
Cleanup SuffFindArchDeps() to get rid of two const-warnings.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.240)
|
146147 |
12-May-2005 |
harti |
The first element of the vector built by brk_string() is never used so there is no need to stuff the value of .MAKE into it, which btw isn't set for quite a while already.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.239)
|
146146 |
12-May-2005 |
harti |
Cleanup. Move initialisation of file and program global variables to top of main() and sort them. Make chdir_verify_path() static - it is used only here.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.238)
|
146145 |
12-May-2005 |
harti |
Replace a lot of Var_Set(..., VAR_GLOBAL) by Var_SetGlobal().
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.237)
|
146144 |
12-May-2005 |
harti |
Cleanup main(). Move catching SIGCHLD into job.c. Move unsetenv("ENV") into job.c. Move retrieving of environment nearer to the place where it is actually used and invert the preprocessor conditionals to use positive logic.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.236)
|
146143 |
12-May-2005 |
harti |
Reshuffle functions to get rid of prototypes.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.235)
|
146142 |
12-May-2005 |
harti |
Compat_RunCommand is used only in job.c so make it static there.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.234)
|
146141 |
12-May-2005 |
harti |
Move variable printing from main.c to var.c
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.233)
|
146140 |
12-May-2005 |
harti |
Fix the fix for bin/72510 applied in job.c:1.70. Actually there have been two maxJobs variables: one static in job.c and one global used in main.c and parse.c. Makeing one global out of these was the wrong way to fix the problem. Instead rename the global one to jobLimit and keep maxJobs static in job.c.
Suggested by: rwatson PR: bin/72510
|
146134 |
12-May-2005 |
harti |
Move some global variables to the correct files.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.232)
|
146133 |
12-May-2005 |
harti |
Untwist the convoluted if() expressions in JobFinish(). They could benefit from even more untwisting.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.23[01])
|
146132 |
12-May-2005 |
harti |
Move some comments around to where they belong and remove some unneccessary gcc magic.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.229)
|
146131 |
12-May-2005 |
harti |
Convert Compat_RunCommand() to use ProcWait(). This also gives Cmd_Exec() the potential to handle interrupts which it doesn't currently.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.228)
|
146130 |
12-May-2005 |
harti |
Make a function ProcWait() that waits for the given process.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.227)
|
146129 |
12-May-2005 |
harti |
Overhaul the fork(), exec() code. Put all the common handling that takes place in the child process in a function ProcExec(). Make sure, that the child does not call malloc() or other potential dangerous functions (there are still calls to Punt() in the error case that should go away). Allocate the argv string via malloc to overcome the non-constness bug of the execvp prototype. Change the handling of shell meta-characters and move the builtin list near the list of shell builtins. Both of these lists should actuall be configurable by the .SHELL target since they depend on the shell used.
Patch: 7.21[2-9], 7.22[0-46] Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146066 |
10-May-2005 |
harti |
Move the definitions of the OP_* constants from make.h into GNode.h where they actually belong to. Move the definitions of the strings for special macros like "$*" from make.h to parse.h - they're used only in the parser.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.211)
|
146064 |
10-May-2005 |
harti |
Path_Expand() expects its first argument to be writeable so put the default system directory into a writeable character array before passing it to Path_Expand().
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.210)
|
146062 |
10-May-2005 |
harti |
Move declarations of variables belonging to the variable module from globals.h into var.h.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (7.209)
|
146061 |
10-May-2005 |
harti |
Style: remove spaces before tabs.
Patch: 7.207 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146060 |
10-May-2005 |
harti |
Move the remaining two prototypes from nonints.h to make.h and remove nonints.h.
Patch: 7.204 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146059 |
10-May-2005 |
harti |
Make shellPath and shellName static - they're used in job.c only. Move definition of parsing error levels from make.h into parse.h.
Patches: 7.202,7.203 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146058 |
10-May-2005 |
harti |
Make the three versions of fork() more uniform.
Patch: 7.201 (idea taken, but done differently) Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146057 |
10-May-2005 |
harti |
Move the defines for TMPPAT and KQUEUE from the public job.h into job.c since they are used only there.
Patch: 7.200 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146056 |
10-May-2005 |
harti |
Merge compat.c into job.c. There is a lot in common between these files and we are going to factor this out.
Patch: 7.199 (slightly changed) Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146054 |
10-May-2005 |
harti |
Move Cmd_Exec() from main.c to job.c and fix its prototype. This results in a warning that will go away soon.
Patch: 7.198 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146048 |
10-May-2005 |
harti |
Var_SubstOnly() is only used to subsitute a variable from the global context (and only in one place to substitute the .for variable). Therefor there is no need to pass the context as a parameter.
Patch: 7.197 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146047 |
10-May-2005 |
harti |
Move the declaration of VAR_CMD and VAR_GLOBAL from globals.h to var.h
Patch: 7.196 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146046 |
10-May-2005 |
harti |
Clean up comments. No code changes.
Patch: 7.195 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146045 |
10-May-2005 |
harti |
Merge var_modify.c into var.c and move types and function declarations that are now used only in var.c from var.h to var.c
Patches: 7.193,7.194 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146039 |
10-May-2005 |
harti |
Move some debugging code from targ.c to var.c where it actually belongs.
Patch: 7.192 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146038 |
10-May-2005 |
harti |
Make make a little bit more POSIXish with regard to option parsing: take everything after -- as either a macro assignment or a target. Note that make still reorders arguments before --: anything starting with a dash is considered an option, anything which contains an equal sign is considered a macro assignment and everything else a target. This still is not POSIX with regard to the options, but it will probably not change because it has been make's behaviour for ages. Add a new function Var_Match() that correctly skips a macro call by just doing the same as Var_Subst() but without producing output. This will help making the parser more robust.
Patches: 7.190,7.191 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
146027 |
09-May-2005 |
harti |
Split Var_Subst() into two functions: Var_SubstOnly() which substitutes only one variable and Var_Subst() which substitutes all. Split out the test whether a variable should not be expanded into match_var(). Make access to the input string consistently using str[]. Remove two unused functions: Var_GetTail() and Var_GetHead().
Patches: 7.184-7.189 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
145971 |
06-May-2005 |
harti |
Introduce a new pseudo-target .EXPORTVAR which allows to put a make macro into the environment of programs executed by make. This has approximately the same function as gmake's export directive. The form of a pseudo target was deliberately choosen to minimize work for POSIX compatibility (Makefiles are not allowed to use any targets starting with a dot and consisting only of uppercase letters except those specified in the standard when they want POSIX compatible behaviour, so such a Makefile can never contain .EXPORTVAR.) Change the handling of macros coming from the environment: instead of asking the environment for each variable we could not find otherwise put all the environment variables in a special variable environment just at start up.
This has been tested on the ports cluster by kris.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
145683 |
29-Apr-2005 |
harti |
Rename the directive_hash.[ch] files to hash_tables.[ch] now that there are more than one hash table in them. There is no history to preserve here, so go without a repo-copy.
Asked for by: Max Okumoto <okumoto@ucsd.edu>
|
145679 |
29-Apr-2005 |
harti |
Implement a pseudo-target .WARN that allows toggeling the warning flags for the current make. This does not override flags specified on the command line and these settings are not passed to sub-makes.
|
145627 |
28-Apr-2005 |
harti |
Introduce a flag to enable extended warnings (-x) and make them off by default. This should fix the problem of getting lots of errors when building with an up-to-date make and old *.mk files.
|
145616 |
28-Apr-2005 |
harti |
Use a minimal perfect hash for the special sources/targets too. Add the corresponding magic to create the hash function to the Makefile.
|
145614 |
28-Apr-2005 |
harti |
Fix the $$FreeBSD$$ that should be written verbatim to directive_hash.c so that it doesn't get replaced with the Makefile's revision.
|
145612 |
28-Apr-2005 |
harti |
Move the hash function for directives into its own file and add a Makefile target to re-created this file. Note, that there is no explicite dependency to automatically re-create the file, because this is needed only when the directive table changes and it requires the (yet to come) devel/mph port.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (first version)
|
145007 |
13-Apr-2005 |
harti |
Split VarFind() into a series of functions tailored for the different sets of flags originally passed to VarFind(). This eliminates the code by removing a bunch of tests.
Patch: 7.173
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
144897 |
11-Apr-2005 |
harti |
Parse_Init() is gone so remove comments that mention it.
|
144896 |
11-Apr-2005 |
harti |
Remove an unneccesary forward declaration for MainParseArgs(). getopt() may be called several times - make sure to set optreset to reset it. Cleanup handling of non-option arguments. Remove some misleading comments.
Patch: 7.171
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
144895 |
11-Apr-2005 |
harti |
Remove the call to Parse_Init() - there is no need to initialize a static variable to NULL. Forgot this in the previous commit to parse.[ch].
|
144894 |
11-Apr-2005 |
harti |
Rework the directive parsing code. Instead of using a lot of strcmp()s on every line that starts with a dot use a minimal perfect hash function and a single strcmp() on the first word after the dot to find out whether it is really a directive call and, if yes, which one. Then directly dispatch to a handler function for that directive (or fall through to the dependency handling code). This makes the directive parse a little bit more strict about the syntax: the directive word must be followed by a character that is not alphanumerical and not an underline (making .undefFOO illegal); .endif and .else can only be followed by comments.
|
144787 |
08-Apr-2005 |
harti |
Move the code for parsing .for and .if statements to the place where the other directives are handled.
|
144745 |
07-Apr-2005 |
harti |
When Parse_Error is called after the top-level Makefile is closed we have no CURFILE anymore so we cannot print a file name or line number.
When ParseSkipLine() returns NULL (it does this when it has detected an EOF in an .if block) try to pop the input stack and process the next line
|
144742 |
07-Apr-2005 |
harti |
Handle popping of the input stack in ParseReadLine() instead of Parse_File(). Remove a comment and a piece of code comming from ancient times when the if-directive read like #if and not .if. Correctly analyze the first character of a line.
|
144741 |
07-Apr-2005 |
harti |
Mostly stylistic changes: remove the noPLen field from the Shell structure - it is just the strlen() of noPrint. Inline JobCondPassSig() in the only function JobPassSig() using it. Fix the argument types of JobPrintCommand(). Better parsing for the .SHELL target keywords.
|
144665 |
05-Apr-2005 |
harti |
There is not much sense in having an else after Punt() and _exit() which never return. Also use pid_t for variables holding PIDs.
|
144658 |
05-Apr-2005 |
harti |
Put parantheses into 'if (foo && bar & flag)'. While they are not strictly needed, they are useful for the human reader.
|
144657 |
05-Apr-2005 |
harti |
Remove lots if irritating parantheses and fix two comments.
Checked by: md5
|
144656 |
05-Apr-2005 |
harti |
Remove the definition for STATIC and just use static.
|
144655 |
05-Apr-2005 |
harti |
Remove unneccessary local prototypes.
|
144654 |
05-Apr-2005 |
harti |
The static tfile is used only in one single function so move it into that function.
|
144653 |
05-Apr-2005 |
harti |
The tfile field of struct Job isn't used anymore since revision 1.22 so remove it now.
|
144494 |
01-Apr-2005 |
harti |
Use a type-safe intrusive list to put jobs on the jobs or stoppedJobs list instead of the generic Lst.
|
144493 |
01-Apr-2005 |
harti |
Remove a forward declaration that isn't needed anymore.
|
144483 |
01-Apr-2005 |
harti |
Both struct Job and struct Shell are only used inside job.c so there is no need to have them in a header file that is included by other modules. Move them both into the c-file.
|
144482 |
01-Apr-2005 |
harti |
Style: fix indentation.
|
144479 |
01-Apr-2005 |
harti |
Style: fix indentation.
|
144478 |
01-Apr-2005 |
harti |
Style: indentation.
|
144475 |
01-Apr-2005 |
harti |
Style: Indentation.
|
144473 |
01-Apr-2005 |
harti |
Style: fix indentation.
|
144470 |
01-Apr-2005 |
harti |
Style: fix indentation.
|
144469 |
01-Apr-2005 |
harti |
Style: fix indentation.
|
144467 |
01-Apr-2005 |
harti |
Style: fix indentation.
|
144388 |
31-Mar-2005 |
harti |
Document the new -A flag for ignoring archive errors.
|
144387 |
31-Mar-2005 |
harti |
Almost complete rewrite of the archive code (except for the Makefile parsing part). Archive handling was broken at least since the move from BSD ar/ranlib to GNU binutils because of the different archive format. This rewrite fixes this by making make to carry around the defines for all formats (it supports) so it can support all of them independent of the actually used one. The supported formats are: traditional BSD (this seems to come from V7 at least, short names only and __.SYMDEF), BSD4.4 (long names with #1/ and __.SYMDEF) and SysV (extra name table and //). The only format not supported are broken traditional archives where the member names are truncated to 15 characters.
Errors in the archive are not ignored anymore, but cause make to stop with an error message. The command line option -A causes these errors to become non-fatal. This is almost compatible with previous usage except for the error message printed in any case.
Use a type-safe intrusive list for the archive cache.
Reviewed by: Max Okumoto <okumoto@ucsd.edu> (without new error handling)
|
144386 |
31-Mar-2005 |
harti |
Move the MAX macro to a util.h so it becomes usable in other modules.
Suggested by: Max Okumoto <okumoto@ucsd.edu>
|
144341 |
30-Mar-2005 |
harti |
Make the structure for handling the input stack local to the parse module. The only module accessing it (the current line number) was the condition module, so pass the current line number as a function argument. Centralize the pushing of new input sources into one function ParsePushInput() and rename the function handling the popping from ParseEOF() to ParsePopInput(). Make the entire thing a little bit clearer, by holding the current input source in the top element of the stack instead of using extra variables for this. Use a type-safe intrusive list for the input stack.
|
144340 |
30-Mar-2005 |
harti |
Fix a bug introduced in a previous commit: ParseModifier() consumes characters so it is not safe to move around code from before it to after it. This should fix problems with building the documentation.
Patch: 7.170
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
144029 |
23-Mar-2005 |
harti |
Style: de-lispify by removing extra parantheses in conditional expressions.
|
144026 |
23-Mar-2005 |
harti |
Style: make indentation 8 characters.
|
144020 |
23-Mar-2005 |
harti |
Make paths an explicite datatype instead of using the generic Lst. A Path is now a TAILQ of PathElements each of which just points to a reference counted directory. Rename all functions dealing with Paths from the Dir_ prefix to a Path_ prefix.
|
143979 |
22-Mar-2005 |
harti |
Style: <space><tab> -> <tab>
|
143978 |
22-Mar-2005 |
harti |
Rename struct Path to struct Dir and move it into the C-file. It is not used outside.
|
143977 |
22-Mar-2005 |
harti |
Remove debugging code that crept in in the last commit.
|
143976 |
22-Mar-2005 |
harti |
Remove Lst_Find() and Lst_FindFrom() now that they aren't needed anymore.
|
143975 |
22-Mar-2005 |
harti |
Remove the last two instances of Lst_Find() calls.
|
143970 |
22-Mar-2005 |
harti |
Use VarParse() inside var.c instead of Var_Parse().
Patch: 7.163
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143969 |
22-Mar-2005 |
harti |
Unify callers to Var_Parse() with regard to variable names.
Patch: 7.162
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143968 |
22-Mar-2005 |
harti |
Make some callers of VarFind using the same code structure.
Patch: 7.161
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143967 |
22-Mar-2005 |
harti |
De-lispify some if()-expressions by removing extra parantheses.
Patch: 7.160 Requested by: harti
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143966 |
22-Mar-2005 |
harti |
Return a Buf object from VarGetPattern() instead of a char * and a size_t. Store a Buf object in struct VarPattern instead of a char * and a length.
Patch: 7.158
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143965 |
22-Mar-2005 |
harti |
Use the struct VarPattern's lhs field instead of using an extra variable to store the left expression of a C modificator.
Patch: 7.157
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143964 |
22-Mar-2005 |
harti |
Merge struct VarREPattern into struct VarPattern. This will help sorting out common code.
Patch: 7.156
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143963 |
22-Mar-2005 |
harti |
Sort prototypes.
Patch: 7.155
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143962 |
22-Mar-2005 |
harti |
Fix indentation.
Patch: 7.154 (partly)
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143961 |
22-Mar-2005 |
harti |
Delete an extra empty line.
Patch: 7.153
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143960 |
22-Mar-2005 |
harti |
An automatic variable in a local scope is (conceptionally) destroyed with the closing brace so it is unwise to keep a pointer to it. Make the variable static to fix this.
Patch: 7.152
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143959 |
22-Mar-2005 |
harti |
Simplify buffer access by using Buf_Data() and Buf_Peel() where appropriate.
Patch: 7.147-7.151
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143957 |
22-Mar-2005 |
harti |
Two new functions: Buf_Data() returns a reference to the data in the buffer and Buf_AppendBuf() appends a copy of one buffer to another buffer.
Patch: 7.146,7.147
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143955 |
22-Mar-2005 |
harti |
Remove a temporary variable. Rename pattern to patt to be consistent. Remove unreachable code for VAR_NOSUBST - it was never set. Replace redundant code with calls to VarGetPattern().
Patch: 7.143-7.145
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143920 |
21-Mar-2005 |
harti |
Remove unneeded temporary variables in modifier_S() and modifier_C(). Change the parsing of the C modifier flags so that specifying both '1' and 'g' gives an error.
Patch: 7.141,7.142
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143919 |
21-Mar-2005 |
harti |
Remove comment about Var_Parse assuming that the first character is always a '$'. This is not always correct, for example for conditionals: .if defined(foobar).
Clean up some comments.
Move common code out of if-statements.
Patch: 7.140
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143918 |
21-Mar-2005 |
harti |
Split out SysV variable substitution into its own function.
Patch: 7.139
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143917 |
21-Mar-2005 |
harti |
Rename freePtr to freeResult to make it more obvious about what pointer we're talking.
Patch: 7.138
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143916 |
21-Mar-2005 |
harti |
Move some code from ParseModifier() into the calling function to simplify things. Correct a number comments.
Patch: 7.137
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143915 |
21-Mar-2005 |
harti |
Cleanup the VAR_JUNK handling.
Patch: 7.136
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143914 |
21-Mar-2005 |
harti |
Don't pass 'consumed' through all the parsing routines where it can be computed by the caller. Don't pass 'endc' - it can be computed from 'startc'. Remove unneccessary temporary variables. Remove constant if-expressions and remove code before call Fatal() - there is no point to cleanup before aborting.
Patch: 7.134,7.135
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143913 |
21-Mar-2005 |
harti |
Change one occurence of 'delim' to the correct type. Delete another occurence which actually holds always the same constant value. Shorten the name pattern to patt.
Patch: 7.133
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143911 |
21-Mar-2005 |
harti |
Replace calls to Lst_Find with either appropriate LST_FOREACH macros plus predicate inlining or a special purpose function with takes and returns the correct types.
|
143910 |
21-Mar-2005 |
harti |
Reduce number of parameters passed between the parsing routines by putting them into struct VarParser or computing them (consumed). Change the loop termination condition in VarParseLong from endc to \0.
Patch: 7.128-7.132
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143904 |
21-Mar-2005 |
harti |
Reduce the number of explicit parameters passed to VarParse() by passing them through struct VarParser.
Patch: 7.127
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143816 |
18-Mar-2005 |
harti |
Cleanup handling of colons in variable substitutions.
Patch: 7.126
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143814 |
18-Mar-2005 |
harti |
Unfold parsing of single letter modifiers from multi-letter ones.
Patch: 7.125
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143813 |
18-Mar-2005 |
harti |
Style: fix indentation and <space><tab>.
Patch: 7.124
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143812 |
18-Mar-2005 |
harti |
Split out the 'S' modifier into its own function.
Patch: 7.122,7.123
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143811 |
18-Mar-2005 |
harti |
Convert Var_Parse to a wrapper function. Reduce the number of arguments passed between these functions by creating a special-purpose struct.
Patch: 7.120,7.121
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143810 |
18-Mar-2005 |
harti |
Replace Lst_Find calls with LST_FOREACH loops. This helps in constification und simplifies the code because the one-liner predicates can be inlined into the code.
|
143808 |
18-Mar-2005 |
harti |
Replace a bogus use of Lst_Find with explicite LST_FOREACH calls and remove the unneeded second argument to ReadMakefile.
|
143807 |
18-Mar-2005 |
harti |
Fix a bug in matching suffixes. Under certain circumstances the code would access memory before the beginning of the string to match (the suffix match starts at the end of both the string and the suffix and proceedes to the begin until either the start of the suffix is hit or the character does not match). This could lead to a memcpy copying into random memory. Fix this by checking the length of the string to match too and replacing the Lst_Find calls with LST_FOREACH loops (last part by me).
Submitted by: Matt Dillon <dillon@apollo.backplane.com> (in principle)
|
143704 |
16-Mar-2005 |
harti |
Now that there are no users of Lst_ForEach and Lst_ForEachFrom are left delete these two macros and all the associated stuff.
|
143703 |
16-Mar-2005 |
harti |
Replace Lst_ForEach by LST_FOREACH.
|
143694 |
16-Mar-2005 |
harti |
Replace another bunch of Lst_ForEachs by LST_FOREACHs and simplify code.
|
143685 |
16-Mar-2005 |
harti |
Fix a comment.
|
143684 |
16-Mar-2005 |
harti |
Get rid of another bunch of Lst_ForEach in favour of LST_FOREACH and simplify code accordingly.
|
143657 |
15-Mar-2005 |
harti |
Ups. Revert the last commits. These have been committed by accident.
|
143656 |
15-Mar-2005 |
harti |
modifier_M: instead of going through the string twice to compute the size of the buffer we need, just allocate the possible maximum.
Patch: 7.117
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143653 |
15-Mar-2005 |
harti |
Style: Move a variable from a local scope up to the begin of the function. Rename result variable so common code becomes more visible. Rename freePtr to freeResult to make clear what pointer must be freed.
Patch: 7.116, 7.116a
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143650 |
15-Mar-2005 |
harti |
Get rid of a number of Lst_ForEach calls in favour of LST_FOREACH and simplify the printing functions.
|
143649 |
15-Mar-2005 |
harti |
VarParseLong: move the detection of the modifier separator ':' into the loop. Add a comment why the 'consumed' variable is updated. Rename lengthPtr to consumed.
Patch: 7.115
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143647 |
15-Mar-2005 |
harti |
Yet another version of passing the last line to ParseFinishLine(). It turns out that some ports use the obscure feature of spreading a dependency block across multiple include files. While this seems bad style, allow it for now and call said function only at end of all input to process the really last line of everything.
|
143600 |
14-Mar-2005 |
harti |
Get rid of another Lst_ForEach in favour of LST_FOREACH. Get rid of the now unused struct LstSrc and collapes two functions into one.
|
143599 |
14-Mar-2005 |
harti |
ParseModifier(): rename rw_str to value and reindent cleanup section. ParseRestModifier() and ParseRestEnd(): move advancement of ptr to remove a confusing calculation. VarParseLong(): cleanup calculation of consumed.
Patch: 7.114
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143567 |
14-Mar-2005 |
harti |
Move the creation of a Src structure into its own function.
|
143566 |
14-Mar-2005 |
harti |
Split off two function from VarParseLong to handle modifiers and the actual variable lookup. Consistently rename lengthPtr to consumed. Update a number of comments to match the code.
Patch: 7.111-113
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143556 |
14-Mar-2005 |
harti |
Convert a couple of other uses of Lst_ForEach to LST_FOREACH and simplify code.
|
143414 |
11-Mar-2005 |
harti |
Simplify the print routines by using LST_FOREACH instead of Lst_ForEach and inlining the small printing utility functions. Create a function that can be used to produce printable representations of flag words.
|
143412 |
11-Mar-2005 |
harti |
Remove leading underscores from the pathname defines. All identifiers with leading underscore followed by an uppercase letter are in the implementation namespace.
|
143411 |
11-Mar-2005 |
harti |
Remove the leading underscore from structure tags. All identifiers with a leading underscore are in the implementation namespace.
|
143407 |
11-Mar-2005 |
harti |
Style: Fix indentation.
|
143405 |
11-Mar-2005 |
harti |
Call ParseFinishLine() also for the last line in a file. This patch differs from the previous one in that it calls the function only when a real file hits EOF. The bodies of .for loops are also handled as files, but for these we don't want to end a dependency block on the 'EOF' as in:
foo: do-this .for ... do-something .endfor do-more
|
143401 |
11-Mar-2005 |
harti |
Back out the last commit. It turns out that this breaks more than it fixes. This should fix the buildworld breakage.
|
143377 |
10-Mar-2005 |
harti |
Constify Var_Dump and simplify it by inlining VarPrintVar.
|
143375 |
10-Mar-2005 |
harti |
Call ParseFinishLine() for the last line of a file too.
|
143372 |
10-Mar-2005 |
harti |
Reorganize Suff_EndTransform to be called only for nodes for which it is needed (transforms).
|
143353 |
10-Mar-2005 |
harti |
Style: fix function style before working on it (mainly intendation).
|
143328 |
09-Mar-2005 |
harti |
Implement a new macro LST_NEXT which is like Lst_Succ but doesn't check for its argument to be non-NULL.
|
143327 |
09-Mar-2005 |
harti |
Split SuffExpandChildren into three functions: one that skips variables and expands archive specifications, one that expands wild cards and a driver that loops over the children list and expands each child if necessary replacing it with it's expansions.
|
143312 |
09-Mar-2005 |
harti |
Var_Subst() cannot return NULL so there is no reason to check for it.
|
143297 |
08-Mar-2005 |
harti |
Style: fix indentation of SuffExpandChildren before working on it.
|
143292 |
08-Mar-2005 |
harti |
Use Buf_Peel to get rid of a local variable.
|
143291 |
08-Mar-2005 |
harti |
Use the Buf_Peel function to get to the string contained into a buffer without using an extra local variable.
|
143290 |
08-Mar-2005 |
harti |
Remove useless local prototypes.
|
143289 |
08-Mar-2005 |
harti |
Style: fix indentation.
|
143288 |
08-Mar-2005 |
harti |
Use the new Buf_Peel function to simplify things. Remove an unused struct definition.
|
143287 |
08-Mar-2005 |
harti |
Create a new function Buf_Peel that returns the string from inside a Buffer and frees the Buffer.
|
143278 |
08-Mar-2005 |
harti |
Add a debugging function that prints a message and appends the current strerror.
|
143277 |
08-Mar-2005 |
harti |
Mark functions that don't return as dead.
|
143276 |
08-Mar-2005 |
harti |
Finish constification of Var_Parse() and Var_Subst().
Patch: 0.18, 0.8, 7.110
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143255 |
07-Mar-2005 |
harti |
Constify the callers of brk_string in this file.
Patch: 7.108
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143254 |
07-Mar-2005 |
harti |
Style: fix indendation of VarModify().
Patch: 7.107
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143253 |
07-Mar-2005 |
harti |
Constify the input argument to brk_string.
Patch: 7.106
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143252 |
07-Mar-2005 |
harti |
Factor out the 'S' modifier into its own function. Move a variable that is now used for both the 'M'/'N' branch and the 'S' branch of the switch statement into a common scope.
Patch: 7.102-105 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143240 |
07-Mar-2005 |
harti |
Move the 'M' and 'N' modifiers into their own function.
Patch: 7.101
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143105 |
03-Mar-2005 |
harti |
Style: remove unneeded parantheses in conditionals.
|
143104 |
03-Mar-2005 |
harti |
Constify the code paths for the 'M' and 'N' modifiers.
Patch: 7.100
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143102 |
03-Mar-2005 |
harti |
Fix parsing of archives: in System V archive format the member names is terminated with a slash. Although we are not System V, ar has been configured to put that slash in. This format allows filenames with trailing spaces.
|
143101 |
03-Mar-2005 |
harti |
Fix parsing of archive specifications on the target side of dependency lines. It seems that nobody is actually is using the archive-feature of make.
|
143100 |
03-Mar-2005 |
harti |
Update the description comment of the function to reflect the previous change.
|
143097 |
03-Mar-2005 |
harti |
Transform VarParseLong() so that the lifetime and the constness of variables gets clearer. Transform if() conditions to make the flow clearer.
Patch: 7.93-99
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143040 |
02-Mar-2005 |
harti |
Move the check for the error case (variable ends without a closing paranthesis or brace) into the loop and don't leak the buffer in this case. Remove the check for Var_Parse returning NULL - it can't.
Patch: 7.92
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143037 |
02-Mar-2005 |
harti |
Fix indentation on a block of code.
Patch: 7.91
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143036 |
02-Mar-2005 |
harti |
Push the length computation down into VarParseShort(). Return always malloc()-ed strings from VarParseShort() to get rid of warnings when returning string constants from a non-const char * function.
Patch: 7.90
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
143027 |
02-Mar-2005 |
harti |
Convert a function call to Lst_ForEach with a macro call to LST_FOREACH.
|
142993 |
02-Mar-2005 |
harti |
Use the LST_FOREACH macro instead of the Lst_ForEach function. This saves function calls and reduces void casting.
|
142937 |
01-Mar-2005 |
harti |
Make sure the length variable is initialized to 0 before passing it to Var_Parse().
Patch: 7.85
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142910 |
01-Mar-2005 |
harti |
Split out ParseModifiers from VarParseLong.
Patch: 7.84 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142908 |
01-Mar-2005 |
harti |
VarParseLong: Create new else block for haveModifier. Move the call to VarExpand down into the branches of the if as well as cleanup code. Eliminate code that is now obviously dead.
Patch: 7.83
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142881 |
01-Mar-2005 |
harti |
Reverse a condition so that the else clause can be changed to a fallthrough.
Patch: 7.82
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142809 |
28-Feb-2005 |
harti |
VarParseLong: Move the initialisation of dynamic up which saves an else clause. Move the assignment to the lengthPtr down to just before the return statements.
Patch: 7.81
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142807 |
28-Feb-2005 |
harti |
Buf_GetAll wants a pointer as its second argument, not a boolean - replace FALSE by NULL.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142796 |
28-Feb-2005 |
harti |
Don't modify the input string in VarParseLong(). It is not necessary to NUL-terminated it, because we know the lengths from the pointers.
Patch: 7.80
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142557 |
26-Feb-2005 |
harti |
Major clean up and split the Var_Parse monster function into three functions: one for the single letter variables, one for the others and one that does the recursive expansion.
Patches: 7.68-7.79
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142457 |
25-Feb-2005 |
harti |
Change the return value of Var_Subst to return a Buffer instead of a char *.
Patch: 7.49
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142382 |
24-Feb-2005 |
harti |
Var_Parse: Separate different error states by introducing an else block after a return. Move assignments to {freePtr, dynamic, start} closer to the return statements to clarify which variables are actually used for communication between the losely coupled blocks of the code. Clear up an if-expression to make common structures of the conditions clearer. Use strchr instead of switch statements to check for a character beeing a member of a set.
Patches: 7-62.2, 7-62.3, 7-64, 7-65.1, 7-65.2 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142377 |
24-Feb-2005 |
harti |
Push assignments to just before the returns from the function to get it clearer what variables are actually needed.
Patches: 7.62.2, 7.62.3 Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142376 |
24-Feb-2005 |
harti |
Fix wording of a comment.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142375 |
24-Feb-2005 |
harti |
Replace the calls to Lst_ForEach with the new LST_FOREACH macro and fix the prototype for Compat_RunCommand to take the actual argument types instead of void *.
|
142299 |
23-Feb-2005 |
harti |
Use the LST_FOREACH macro instead of the Lst_ForEach function and so get rid of the ForExec helper function by inlining it into For_Run.
|
142298 |
23-Feb-2005 |
harti |
Style: fix indent, use tabs instead of space+tab for aligning things. Add a couple of comments.
|
142297 |
23-Feb-2005 |
harti |
Fix the indendation of some multi-line comments.
Noted by: Max Okumoto <okumoto@ucsd.edu>
|
142211 |
22-Feb-2005 |
harti |
Fix the prototypes by addings some constness. This should have been committed together with the commit to dir.c:1.48.
|
142209 |
22-Feb-2005 |
harti |
Use the new LST_FOREACH macro throughout the file and replace calls to Lst_ForEach and Lst_Find.
|
142208 |
22-Feb-2005 |
harti |
Invent the LST_FOREACH macro for looping through a list. In contrast to the Lst_ForEach function this macro reduces the number of function calls per invocation by N + 1 (where N is the number of list elements) and increases code locality thereby increasing readability and (maybe) performance.
|
142173 |
21-Feb-2005 |
harti |
Style: fix indendation to be 8 and use tabulators. Fix lines longer than 80 characters and slightly reorder functions to get rid of static prototypes.
|
142166 |
21-Feb-2005 |
harti |
Forgot to set *freePtr to FALSE in another place.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142165 |
21-Feb-2005 |
harti |
Fix a bug in handling archive members: when a member was not found when looking into an already hashed archive, the code tried to use the name shortened to the maximum length allowed for the archive. Unfortunately it passed a buffer of junk to the hashing routine when the name actually wasn't too long. Theoretically this could lead to a false positive.
|
142044 |
18-Feb-2005 |
harti |
Push the assignments of some variables down into the sub-blocks where it is actually needed. This makes clear in which subblocks the variables are not needed and which can easier be split out.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142038 |
18-Feb-2005 |
harti |
Push down variables into local scope in Var_Parse to make their liveness clear for splitting up this monster function.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
142014 |
17-Feb-2005 |
harti |
Whitespace cleanup: substitute mixed tabs and spaces by canonical whitespace and line up some variable definitions.
|
142013 |
17-Feb-2005 |
harti |
Move error case to begin of if-else chain. Do not needless initialize startc, but only at the place where the initialisation is needed. Remove a needless else.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (partly)
|
142008 |
17-Feb-2005 |
harti |
Fix two typos in comments.
Submitted by: ru & Max Okumoto <okumoto@ucsd.edu>
|
142007 |
17-Feb-2005 |
harti |
Sort out the error case that a single '$' was passed a little bit earlier instead of mixing its handling with other cases.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141974 |
16-Feb-2005 |
harti |
Mostly stylistic issues: move a variable into local scope, make condition positive and fix long lines.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141969 |
16-Feb-2005 |
harti |
Better version of the patch in 1.117: bring a variable into local scope to prepare for function splitting and slightly reorganise the code in anticipation of Var_Subst returning a Buffer.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (with slight changes)
|
141846 |
13-Feb-2005 |
ru |
Expand *n't contractions.
|
141799 |
13-Feb-2005 |
harti |
Back out the previous commit. There is an obvious bug in it.
Pointy hat to: harti
|
141697 |
11-Feb-2005 |
harti |
Stylistic fixes: push variable into a local context (this part is going to be split out into a function soon). Also there is no need to write back the colon that we have NUL-ed - the string is going to be freed anyway.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141686 |
11-Feb-2005 |
harti |
Convert several instances of negative logic to positive logic.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141661 |
10-Feb-2005 |
harti |
Buffers are already NUL-terminated so there is no need to explicitely add a NULL.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141659 |
10-Feb-2005 |
harti |
Mostly stylistic nits in preparation for splitting up Var_Parse: use a more consistent style with regard to *str and str[0]; simplify code by introducing a temporary variable; shift a break around and add braces where appropriate.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141654 |
10-Feb-2005 |
harti |
Let the buffer just use the default size by specifying 0 as the size instead of specifying the default size explicitely.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141653 |
10-Feb-2005 |
harti |
Mark the modification of the input string (which should really be const) with a comment.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141652 |
10-Feb-2005 |
harti |
Style nits: Move some assignments nearer to where they actually used. Convert a loop from a for() to a while() to make it clearer and add braces to the long body of it. Split assignment from variable declaration.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141650 |
10-Feb-2005 |
harti |
Describe a pre-condition of Var_Parse().
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141649 |
10-Feb-2005 |
harti |
Remove a comment that's not actual anymore.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141648 |
10-Feb-2005 |
harti |
Fix spacing by converting mixes of space and tab to tab. Also add a number of empty lines in appropriate places.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141647 |
10-Feb-2005 |
harti |
Initialise the status variable. W_SETTERMSIG uses its value.
Submitted by: stefanf
|
141645 |
10-Feb-2005 |
harti |
Lst_Append returns void, so the other case of the ? statement should also be void.
Submitted by: stefanf
|
141583 |
09-Feb-2005 |
harti |
Use defines for character constants for open and closing braces and parantheses. This helps editors to find its way through the horrible mess of Var_Parse. Rewrite a for() loop into a while() to make it clearer.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141573 |
09-Feb-2005 |
harti |
While working on constification temporarily disable -Werror. Things are too twisted.
|
141572 |
09-Feb-2005 |
harti |
Untangle VarFind and, while rewriting most of the function, fix the intendation. (A large part of the function was already at intendation 8).
|
141564 |
09-Feb-2005 |
harti |
Introduce VarCreate and VarDestroy functions and used them where appropriate.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141461 |
07-Feb-2005 |
harti |
Remove an unneeded check.
|
141460 |
07-Feb-2005 |
harti |
Introduce a typedef for variable value modifation functions and use it where appropriate.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141459 |
07-Feb-2005 |
harti |
Make the intention of a loop clearer.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141454 |
07-Feb-2005 |
harti |
Introduce Buf_StripNewLines() and use it where appropriate.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141437 |
07-Feb-2005 |
harti |
Invent a Buf_AppendRange function that appends a non-NUL-terminated string given by a pointer to the start of the string and a pointer one behind the end.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141436 |
07-Feb-2005 |
harti |
Invent a Buf_Append function to append a NUL-terminated string and use it thoughout the code.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141291 |
04-Feb-2005 |
harti |
Where the returned line length from Buf_GetAll is not used just pass a NULL to the function. Delete the now unused local variables.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141290 |
04-Feb-2005 |
harti |
Rewrite of the buf code: - convert Buf_AddByte from a macro to a function - move #define's into the header file - remove unused field in struct Buffer - remove size fields - they can be easily computed - inline Buf_OvAddByte
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141275 |
04-Feb-2005 |
harti |
None of the users of Buf_Discard used it to get rid of only a part of the buffer. So replace Buf_Discard by Buf_Clear which just gets rid of the entire contents.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141273 |
04-Feb-2005 |
harti |
Inline the ADDWORD() macro in the two places where it is used. It just obfuscates the code.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141272 |
04-Feb-2005 |
harti |
Use _exit() instead of exit() when the exec() after a vfork() fails.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141271 |
04-Feb-2005 |
harti |
Move PrintAddr() from util.c into suff.c - the only file where it is actuall used, and make it static.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141270 |
04-Feb-2005 |
harti |
General whitespace cleanup: remove mixes of tabs and spaces, remove space after function names, remove spaces on emtpy lines.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141269 |
04-Feb-2005 |
harti |
Minor cleanup: make brk_string to return argc only if the pointer to it was non-NULL. This let's us eliminated an otherwise unused variable.
shellneeded can never return -1 so there is no need to check for it and hence no need for a variable to hold the returned value.
Submitted by: Max Okumoto <okumoto@ucsd.edu> (partly)
|
141268 |
04-Feb-2005 |
harti |
Further constification. Use a temporary hack (copying the input string) until Var_Subst is fixed.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141260 |
04-Feb-2005 |
harti |
Use an extra variable to assign to instead of missusing an input parameter. This will help in constification.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141259 |
04-Feb-2005 |
harti |
Replace space, tab mixes by tabs.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141258 |
04-Feb-2005 |
harti |
Use tabs to move to the comments instead of wild mixes of tabs and spaces.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141255 |
04-Feb-2005 |
harti |
Style: line up with tabulators.
|
141254 |
04-Feb-2005 |
harti |
Use a typedef for the conditional handler function so that declaring pointers to these functions is easier.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141253 |
04-Feb-2005 |
harti |
Style: remove a space between a function name and the opening paranthesis.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141252 |
04-Feb-2005 |
harti |
Some more easy constification.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141192 |
03-Feb-2005 |
harti |
Constify an argument to a function.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141191 |
03-Feb-2005 |
harti |
Get rid of a number of unneccessary memory allocations.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141139 |
02-Feb-2005 |
harti |
Make enomem static - it's referenced only in util.c.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141138 |
02-Feb-2005 |
harti |
Remove a couple of unused buffer functions.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
141133 |
02-Feb-2005 |
harti |
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>
|
141115 |
01-Feb-2005 |
harti |
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>
|
141107 |
01-Feb-2005 |
harti |
Remove debugging stuff that crept in in the previous commit.
|
141104 |
01-Feb-2005 |
harti |
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>
|
140870 |
26-Jan-2005 |
harti |
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)
|
140420 |
18-Jan-2005 |
ru |
Sort sections.
|
140055 |
11-Jan-2005 |
ru |
Scheduled mdoc(7) sweep.
|
139112 |
21-Dec-2004 |
ru |
NOSHARED -> NO_SHARED
|
139064 |
20-Dec-2004 |
harti |
Fix compilation for the USE_KQUEUE case.
Submitted by: Emil Mikulic <emikulic@dmr.ath.cx>
|
139062 |
20-Dec-2004 |
harti |
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>
|
138972 |
17-Dec-2004 |
harti |
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.
|
138920 |
16-Dec-2004 |
ru |
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
|
138916 |
16-Dec-2004 |
harti |
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.
|
138656 |
10-Dec-2004 |
harti |
Remove a list that was just used to free all variables just before exiting.
|
138655 |
10-Dec-2004 |
harti |
Remove a list that used to hold all the GNodes just to be able to free them just before exiting.
|
138654 |
10-Dec-2004 |
harti |
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?
|
138629 |
09-Dec-2004 |
harti |
Nobody actually checked the return codes from Lst_Append and Lst_Insert so don't return anything.
|
138621 |
09-Dec-2004 |
harti |
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.
|
138581 |
08-Dec-2004 |
harti |
Now that circular lists are gone remove stuff for them. Simplify somewhat so that we can remove a local variable.
|
138577 |
08-Dec-2004 |
harti |
No caller checks the return code from Lst_Remove, so don't return one. Simplify the algorithm now that circular lists are gone.
|
138567 |
08-Dec-2004 |
harti |
Don't check the return code from Lst_Remove. There is no way that the list's first element is not on the list.
|
138566 |
08-Dec-2004 |
harti |
Remove return value from Lst_Concat. None of the callers ever checked it. Remove stuff that was needed for circular lists.
|
138565 |
08-Dec-2004 |
harti |
Don't free the second list in Lst_Concat for LST_CONCLINK; free it in the caller instead.
|
138564 |
08-Dec-2004 |
harti |
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.
|
138561 |
08-Dec-2004 |
harti |
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)
|
138548 |
08-Dec-2004 |
harti |
Constify some calls of Buf_AddBytes.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
138547 |
08-Dec-2004 |
harti |
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>
|
138512 |
07-Dec-2004 |
harti |
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
|
138511 |
07-Dec-2004 |
harti |
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>
|
138510 |
07-Dec-2004 |
harti |
Make needs no circular lists so remove them from the list code.
|
138455 |
06-Dec-2004 |
harti |
Some constification which doesn't require code rewrites.
|
138441 |
06-Dec-2004 |
harti |
Style: fix indentation.
|
138436 |
06-Dec-2004 |
harti |
Remove an unused macro.
|
138435 |
06-Dec-2004 |
harti |
Constify arguments to Hash_FindEntry and Hash_CreateEntry.
|
138434 |
06-Dec-2004 |
harti |
Remove extra empty lines.
|
138433 |
06-Dec-2004 |
harti |
Style: fix indentation, prototypes for functions even in comment.
|
138347 |
03-Dec-2004 |
harti |
Remove an extra space.
Submitted by: ru
|
138346 |
03-Dec-2004 |
harti |
Fix breakage introduced on 64-bit platforms with my last commit. Need to change to size_t in a couple of other places too.
|
138343 |
03-Dec-2004 |
harti |
Plug a memory leak.
|
138342 |
03-Dec-2004 |
harti |
Put macro arguments in paranthesis.
Submitted by: johan
|
138341 |
03-Dec-2004 |
harti |
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).
|
138337 |
03-Dec-2004 |
harti |
Style: fix indentation, protect macro with do { } while (0).
Checked with: diff on object file.
|
138335 |
03-Dec-2004 |
harti |
Describe the .SHELL target.
Reviewed by: ru
|
138334 |
03-Dec-2004 |
harti |
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:
|
138273 |
01-Dec-2004 |
harti |
Remove a double test for the same ptr != NULL and use the official macro for this; reorder an if.
|
138264 |
01-Dec-2004 |
harti |
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
|
138232 |
30-Nov-2004 |
harti |
Stylification: missing spaces, extra space after function names, casts and the sizeof operator, missing empty lines, void casts, extra empty lines.
Checked by: diff on make *.o lst.lib/*.o
Submitted by: Max Okumoto <okumoto@soe.ucsd.edu> (partly)
|
138228 |
30-Nov-2004 |
harti |
Constify the array of predefined shells. It turns out that we need two versions of the structure definition for this: one with const char pointers, because otherwise gcc won't let us initialize the fields with constant strings, and one without the const, because we need to work with the structure.
|
138222 |
30-Nov-2004 |
harti |
Change a couple of the primitve list functions to be macros. This changes the semantic of Lst_Datum which formerly returned NULL when the argument node was NULL. There was only one place in the source that relied on this so change that place.
|
138196 |
29-Nov-2004 |
harti |
Fix a bug that would truncate the full name of an archive member if the length of happens to be larger than MAXPATHLEN.
PR: bin/74368 Submitted by: Max Okumoto <okumoto@ucsd.edu> Obtained from: DragonFlyBSD
|
138192 |
29-Nov-2004 |
harti |
Use typedefs for the types of the functions that are passed as arguments to the list functions for better readability.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
|
138185 |
29-Nov-2004 |
harti |
Merge the contents of lstInt.h into the public lst.h. This let's us get rid of a lot of uneccesary casts and temporary variables that have just obfuscated the code. This also let's us implement a couple of the one- liner list functions as macros (the first one is Lst_IsEmpty) and simplify life once we start to throw consts on the code.
|
138115 |
26-Nov-2004 |
harti |
Remove unused file.
|
138111 |
26-Nov-2004 |
harti |
Style: prototypes, un-register and remove some empty lines.
|
138092 |
25-Nov-2004 |
harti |
Include sys/sysctl.h on all architectures not only i386.
|
138079 |
25-Nov-2004 |
harti |
Fix a very long-standing error in handling .SHELL targets: this target uses the brk_string function to parse the line. That function uses static storage for both the expanded string and the returned argv[] vector. The JobParseShell function simply stored away pointers into this static storage. On the next use of something like ${FOO:O} this storage would get overwritten with fatal results.
This also allows us to make the shells[] array const bringing us one step further in making make WARNS=4 ready.
|
138071 |
24-Nov-2004 |
jmallett |
Gentle code cleanup for the maximum make(1) level foo. This moves it to a function, and moves the related defines out of the middle of code body.
Submitted by: Max Okumoto less-than okumoto at ucsd dot edu greater-than
|
137991 |
22-Nov-2004 |
harti |
Get rid of the shell table sentinel. It isn't needed anymore because JobMatchShell returns NULL when no shell name matches since revision 1.51.
|
137810 |
17-Nov-2004 |
harti |
Eliminate the define for POSIX and build with Posix behaviour. Our make has been build with POSIX enabled from the first day and the ifdef'ed out code served no purpose.
|
137626 |
12-Nov-2004 |
phk |
If -B is specified to get compat mode (as opposed to just not giving a -j arg which does the same thing), remove the MAKE_JOBS_FIFO environment variable so we decouple any resulting sub-makes from the token pool.
|
137610 |
12-Nov-2004 |
ceri |
Wrap a comment properly.
|
137606 |
12-Nov-2004 |
phk |
Add code to enforce the paralleism count (-j N) for the entire tree of submakes spawned during processing.
We create a fifo and stuff one character into it for each job we are allowed to run. The name of the fifo is passed to child processes in the MAKE_JOBS_FIFO environment variable.
A make which finds this variable on startup will open the fifo and only spawn jobs when it managed to read a token from the fifo. When the job completes a token is writen back to the fifo.
Slave make processes get one token for free: the one their parent make got in order to run them. This makes the make processes themselves invisible in the process counts.
The net effect is that "make -j 12 -s buildworld" will start at most 12 jobs at the same time, instead of as previously up to 65 jobs would get started.
|
137605 |
12-Nov-2004 |
harti |
Fix a (very) long standing bug in make (this has been there probably from the beginning). Make used to handle all its interrupt-time stuff directly from the signal handler, including calls to printf, accessing global data and so on. This is of course wrong and could provoke a core dump when interrupting make. Just set a flag in the signal handler and do everything else from the main thread.
PR: bin/29103
|
137572 |
11-Nov-2004 |
phk |
Get rid of more local/remote leftovers
|
137571 |
11-Nov-2004 |
phk |
Get rid of now unused maxLocal variables.
|
137252 |
05-Nov-2004 |
harti |
Now with the remote job support removed there can be no remote jobs and no jobs that need to be remigrated. Remove the flags and the associated code.
|
137202 |
04-Nov-2004 |
harti |
Remove the remote stuff from make. This actually never worked in our make because the necessary files were not imported with the original import. If somebody really needs it, there is still the devel/pmake port.
This is just the first step and removes just everything that is ifdef'ed out. Otherwise the code is unchanged.
Checked by: md5
Approved by: no objections on arch@
|
136841 |
23-Oct-2004 |
ru |
"unset verbose" is 13 characters, not 10.
|
136840 |
23-Oct-2004 |
ru |
Expand the scope of the .SHELL specification to also cover the compat mode of operation and the != operator.
While here, fixed a bug in the .SHELL directive processing when only the name= attribute is specified and no built-in shell matches this name, causing null pointer dereference.
Obtained from: NetBSD (except for bugs)
|
134843 |
06-Sep-2004 |
jmg |
remove XXX comment now that the kernel is fixed, there isn't any obvious reason to enable this as performance didn't significantly change...
MFC after: 3 days
|
133957 |
18-Aug-2004 |
ru |
Document the effects of modifying the .MAKEFLAGS internal variable and using the .MAKEFLAGS special target, and the differences between them.
Reviewed by: harti
|
133562 |
12-Aug-2004 |
harti |
Put variable assignments on .MAKEFLAGS and .MFLAGS targets into the .MAKEFLAGS variable so that these are also passed to sub-makes. This makes the handling of variables in the command environment more consistent.
PR: bin/68853 Submitted by: Martin Kamerhofer <data@sbox.tugraz.at>
|
133388 |
09-Aug-2004 |
harti |
Make explicit that MAKEOBJDIRPREFIX and MAKOBJDIR must be set as environment variables and should not be set on make's command line. They happen to work accidentially as command line variables too when none of the sub-makes wants to play games with them (because make is putting command line variables into the environment and will find them there later on). Makefile.inc1 wants to change MAKEOBJDIRPREFIX. In this case one cannot set it on the command line.
|
133120 |
04-Aug-2004 |
harti |
Correct the .Dd date. Pluralize 'assignment' in one place.
Requested by: ru
|
133086 |
03-Aug-2004 |
harti |
Correct the description of the MFLAGS and .MAKEFLAGS variables. Add the MFLAGS target. Document that variable assignments from the MAKEFLAGS environment variable and the .MAKEFLAGS and .MFLAGS target have the same precedence as command line variable assignments.
|
133085 |
03-Aug-2004 |
harti |
Put variable assignments from the command line into the MAKEFLAGS variable as required by POSIX. This causes such variables to be pushed into all sub-makes called by the make (except when the MAKEFLAGS variable is explicitely changed in the sub-make's environment). This makes them also mostly un-overrideable in sub-makes except on the sub-make's command line. Therefor specifying 'make CC=icc' will cause icc to be used as C compiler in all sub-makes no matter what the Makefiles itself try to do to the CC variable.
This patch also corrects the handling of the MFLAGS variable. MFLAGS contains all the command line flags but not the command line variable assignments. The evaluation of the .MFLAGS or .MAKEFLAGS target now changes both MFLAGS and MAKEFLAGS (they used to change MAKEFLAGS only). Makefiles can use MFLAGS for their own purposes given that they do not except MFLAGS to be undefined at the beginning and that they don't evaluate .MFLAGS or .MAKEFLAGS. MFLAGS should be removed for POSIX compliance, but it is unfortunately heavily used by the X makefiles.
This has been extensively tested by port builds (thanks to portmgr), new worlds and kernels.
PR: standards/57295 (1st part above) Submitted by: James E. Flemer <jflemer@alum.rpi.edu> Approved by: portmgr Obtained from: NetBSD (1st part above) MFC after: 4 weeks
|
133082 |
03-Aug-2004 |
harti |
Make the SIGCHLD handler static and declare its argument as unused, so that make can be compiled with WARNS=3 again.
|
132844 |
29-Jul-2004 |
harti |
Bump the date in .Dd for the recent '+' flag commit.
Requested by: ru
|
132839 |
29-Jul-2004 |
harti |
Implement POSIX's '+' flag for command lines. This flag causes a line to be executed even when -n is given on the command line to make. This is very handy for calls to submakes.
This is slightly changed from the original patch as obtained from NetBSD. The NetBSD variant prints lines which have both '+' and '@' when -n is specified. The commited version always obeys '@'.
Bump MAKE_VERSION so Makefiles can use this conditionally.
PR: standards/66357 (partly) Submitted by: Mark Baushke <mdb@juniper.net> Obtained from: NetBSD
|
132540 |
22-Jul-2004 |
harti |
Fix handling of comments on .elif lines. The patch given in a followup to the PR failed, because the line skipping function is actually called from two places in the code to do quite different things (this should be two functions probably): in a false .if to skip to the next line beginning with a dot and to collect .for loops. In the seconds case we should not skip comments, because they are actually harder to handle than we need for the .if case and should defer this to the main code.
PR: bin/25627 Submitted by: Seth Kingsley (original patch)
|
132439 |
20-Jul-2004 |
harti |
Improve make's diagnostic of mistmatched .if-.endif. This patch is slightly different from the patch in the PR. The problem is, that make handles .if clauses inside false .if clauses simply by counting them - it doesn't put them onto the conditional stack, nor even parses them so we need an extra line number stack for these ifs.
PR: bin/61257 Submitted by: Mikhail Teterin <mi@aldan.algebra.com>
|
132405 |
19-Jul-2004 |
harti |
Make it clearer what means 'won't work' for .if string == ${VAR}.
Replace the use of '=' in conditionals in the examples by the more correct '=='.
Clarify the example explaining that .for expansion takes place before .if handling by showing the correct code instead of saying 'the other way around'. Change a variable name there so the example is more parseable to the human reader.
PR: docs/65400 Submitted by: Roman Neuhauser <neuhauser@chello.cz>
|
132328 |
18-Jul-2004 |
keramida |
Remove the dependency of the :C/regexp/replacement/ variable modifier from the :S modifier which follows a bit further below. This way the reader can read each of these two descriptions without having to jump back and forth in the manpage.
PR: docs/26943 Submitted by: Alex Kapranoff <alex@kapran.bitmcnit.bryansk.su>
|
131491 |
02-Jul-2004 |
ru |
Mechanically kill hard sentence breaks.
|
131457 |
02-Jul-2004 |
eik |
manlint
Obtained from: ru
|
131456 |
02-Jul-2004 |
eik |
New variable `.MAKEFILE_LIST', useful for tracing, debugging and dependency tracking.
Use make -V .MAKEFILE_LIST | tr \ \\n | awk '$0==".." {l--; next} {l++; printf "%*s%s\n", l, " ", $0}' to print a tree of all included makefiles.
Approved by: joerg MFC after: 1 week
|
129431 |
19-May-2004 |
ru |
Markup nits.
|
128500 |
20-Apr-2004 |
green |
Treat kevent(2) returning an error EINTR as the non-error it is.
|
128165 |
12-Apr-2004 |
ru |
The .DEFAULT target with no commands caused a null pointer dereference.
PR: bin/63405 Obtained from: NetBSD
|
128161 |
12-Apr-2004 |
ru |
Document the new .warning directive.
|
128160 |
12-Apr-2004 |
ru |
Added the new .warning directive.
Submitted by: Cyrille Lefevre
|
127899 |
05-Apr-2004 |
ru |
Unbreak compilation on RELENG_4.
Submitted by: des
|
127880 |
05-Apr-2004 |
des |
Sort #includes, remove <sys/types.h> (made redundant by <sys/param.h>), add <signal.h> (needed for sigaction())
Noticed by: Stefan Farfeleder <stefan@fafoe.narf.at>
|
126824 |
10-Mar-2004 |
ru |
Reworked the fix to print the useful line number on error in the .for loop:
- Replaced four global variables in parse.c with one. - Made Parse_FromString() accept the "lineno" as an argument. - Fixed line numbering when there are escaped newlines in the body of the .for loop.
Adopted from: NetBSD
|
126779 |
09-Mar-2004 |
ru |
Make it possible to ``.undef ${VAR}'' (expanding VAR to get the variable name to undef).
Submitted by: Cyrille Lefevre
|
126768 |
09-Mar-2004 |
ru |
Fixed line numbering inside the .for loops.
Submitted by: Cyrille Lefevre
|
124966 |
25-Jan-2004 |
ru |
Fixed a bug that previous revision has introduced -- we missed the double quotes ("" and '') as a separate argument.
Reported by: ache
The fix in this and previous revisions combined is functionally equivalent to the below patch against rev. 1.27 but the code is now much easier to follow:
%%% Index: str.c =================================================================== RCS file: /home/ncvs/src/usr.bin/make/str.c,v retrieving revision 1.27 diff -u -r1.27 str.c --- str.c 28 Oct 2002 23:33:57 -0000 1.27 +++ str.c 25 Jan 2004 12:09:21 -0000 @@ -168,7 +168,7 @@ inquote = (char) ch; /* Don't miss "" or '' */ if (start == NULL && p[1] == inquote) { - start = t + 1; + start = t; break; } } %%%
|
124840 |
22-Jan-2004 |
ru |
Fixed broken logic when parsing double quotes.
PR: bin/61673 MFC after: 1 month
|
124803 |
21-Jan-2004 |
schweikh |
Revert previous commit, ru has ideas how to better document this elsewhere.
|
124733 |
19-Jan-2004 |
schweikh |
Document __MAKE_CONF and its default, /etc/make.conf.
MFC-After: 2 weeks
|
124420 |
12-Jan-2004 |
harti |
Allow variable substitutions in SYSV variable substitutions like $(SRC:.c=$O). This brings us closer to other makes.
Reviewed by: ru Obtained from: NetBSD
|
124344 |
10-Jan-2004 |
ru |
Moved the code for :U and :L modifiers where it belongs, so that the fallback for SysV (now in POSIX) variable substitution works for old_string arguments starting with 'U' or 'L'.
|
123659 |
19-Dec-2003 |
scottl |
Change the select timeout from 100ms to 2 seconds now that SIGCHILD is handled.
|
123513 |
13-Dec-2003 |
des |
Install a SIGCHLD handler so select(2) will be interrupted when a child terminates. Without this patch, 'make -j1 buildworld' takes about 30% longer than 'make -B buildworld' on my 2.4 GHz P4; the difference is probably even larger on faster systems. With this patch, there is no perceptible difference in wall time between the two.
Submitted by: bde MFC after: 3 days
|
120859 |
06-Oct-2003 |
ru |
Fix a bug in variable parsing code that could cause a segfault.
PR: bin/46203 Submitted by: Stefan Farfeleder <stefan@fafoe.dyndns.org>
|
120718 |
03-Oct-2003 |
ru |
Make the -q option DTRT in the compat mode.
PR: 48210
|
120676 |
02-Oct-2003 |
ru |
Fix a bug that prevented exists() from finding "foo/", "foo/." and "foo/.." when ".PATH: foo" was also given.
PR: bin/34062
|
120671 |
02-Oct-2003 |
ru |
Document the recently added `O' modifier.
|
120184 |
18-Sep-2003 |
marcel |
Implement the O modifier. The O modifier sorts the words in a variable. The implementation is based upon the patch sent to arch@, but modified to be compatible with NetBSD. The modifier that does a reverse sort has been dropped for now, but the ability to add one later has been preserved.
|
120053 |
14-Sep-2003 |
ru |
- Cut out the code that caches the "." directory out of Dir_Init() into a separate function, Dir_InitDot().
- Postpone the current and object directories detection (and caching of the "." directory) until after all command line arguments are parsed. This makes the -C option DTRT.
PR: bin/47149
|
119876 |
08-Sep-2003 |
ru |
Command line variables take precedence over global variables. Make this true in the .for loops too. The following fragment,
FOO= foo bar
all: .for f in ${FOO} @echo ${f} .endfor
when run as "make FOO=xxx" should print "xxx". (OpenBSD had this bug fixed for some time.)
|
119818 |
07-Sep-2003 |
imp |
Keep up with minor changes to NetBSD. Consider a variable empty when not define.
Obtained From: NetBSD (rev 1.18; sjg)
|
117226 |
04-Jul-2003 |
ru |
Fixed broken arithmetic expression parser.
Reminded by: bde In memory of: alane
|
113512 |
15-Apr-2003 |
ru |
Sync usage() with SYNOPSIS.
|
113044 |
04-Apr-2003 |
imp |
No need to check to see if we're running a version of FreeBSD 3.0 current or newer anymore.
|
110266 |
03-Feb-2003 |
trhodes |
Remove another unused Makefile.
|
109337 |
15-Jan-2003 |
marcel |
Change the handling of non-anchored global substitutions of the empty string from a silent implicit non-global substitution to a non-silent explicit fatal error. Archored substitutions are those containing '^' or '$'. The problem with changing the substitution to prevent an infinite number of matches is that it doesn't provide the necessary feedback to the user that there's a bug in the/a makefile. Reporting the bug without making the condition fatal makes the feedback mostly useless due to the way that make fails to prefix the error with program name, makefile file name and line number information. Note that global substitutions of the empty string anchored with '^' (start of string) or '$' (end of string) do not cause an infinite number of matches and are therefore not reported and hence are non- fatal.
Suggested by: bde Tested with: buildworld
|
109209 |
13-Jan-2003 |
marcel |
Prevent infinite substitution of the empty string by forcing non- global substitution. In general it's a makefile bug to globally substitute the empty string, but it's a bug in make(1) if a bug in the makefile yields an infinite running time of make(1).
Not objected to by: arch@
|
108470 |
30-Dec-2002 |
schweikh |
Fix typos, mostly s/ an / a / where appropriate and a few s/an/and/ Add FreeBSD Id tag where missing.
|
108221 |
23-Dec-2002 |
ru |
Fixed the abuses of .Ql visible on stderr in troff mode.
PR: docs/37176
|
107964 |
17-Dec-2002 |
seanc |
Check the return status of chdir() when using the -C option.
Reviewed by: bright && jmallet MFC after: 1 day
|
107447 |
01-Dec-2002 |
ru |
Bootstrapping aid from pre-kqueue(2) systems, e.g. 4.0-RELEASE.
Submitted by: jmallett Approved by: re (bmah)
|
107373 |
28-Nov-2002 |
ru |
Finish the fix in revision 1.39 -- make(1)'s behavior is now "greedy" with respect to finding the dependency operators.
Approved by: re
|
106642 |
08-Nov-2002 |
jmallett |
Convert some broken cases where Error is called, but we try to continue, 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.)
|
106286 |
01-Nov-2002 |
ru |
Document the confusing behavior that the .if conditional defaults to defined(), e.g., ``.if 1'' is equivalent to ``.if defined(1)'', which is only true when the ${1} variable is defined.
|
106143 |
29-Oct-2002 |
ru |
bsd.doc.mk changes:
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.
|
106134 |
29-Oct-2002 |
jmallett |
In VarHead(), look into the correct (modified) string.
|
106125 |
29-Oct-2002 |
ru |
Mention that the left-hand side of the comparison conditional must always be a variable expansion.
Obtained from: PMake
Do not lie that debugging .for loops is a no-op.
|
106106 |
28-Oct-2002 |
jmallett |
Split var.c into var.c and var_modify.c and move all the modification funcs 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.
|
105895 |
24-Oct-2002 |
jmallett |
Fix problem with my ability to tell the difference between 'r' and 'l'... We 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
|
105865 |
24-Oct-2002 |
jmallett |
When expanding a specific [1-char] variable, only expand said specific [1-char] variable. Don't just automatically expand something which starts with that character.
Obtained from: OpenBSD [3 years ago!]
|
105846 |
24-Oct-2002 |
jmallett |
Duplicate the variable name in the v->name field, as otherwise it points to 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.
|
105826 |
23-Oct-2002 |
jmallett |
Remove efree(), it isn't used consistently enough to even pretend that it 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.
|
105754 |
23-Oct-2002 |
jmallett |
De-obfuscate and correct the include path handling for SysV style includes.
PR: 32759 Submitted by: Mark Valentine Reviewed by: Matthew Emmerton" <matt@gsicomp.on.ca> MFC after: 15 days
|
104818 |
10-Oct-2002 |
jmallett |
Move utilitarian routines to util.c, which isn't the same as the old 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.
|
104696 |
09-Oct-2002 |
jmallett |
Convert make(1) to use ANSI style function declarations. Variable 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.
|
104694 |
09-Oct-2002 |
jmallett |
Use __FBSDID in the lst.lib files, to match to main make(1) files. It is defined to __RCSID when bootstrapping, by the Makefile, but this change is for consistency
|
104693 |
09-Oct-2002 |
jmallett |
Remove extern declarations from functions and source files where they would happily fit into headers.
|
104692 |
09-Oct-2002 |
jmallett |
Remove unused local-locals, where upper-level locals may safely be used.
|
104689 |
08-Oct-2002 |
jmallett |
Reference the correct local variable in all parts of a for loop, so we operate on the correct data (properly).
Tracked down by: Dan Nelson
|
104475 |
04-Oct-2002 |
phk |
Give make(1) the ability to use KQUEUE to wait for worker processes 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>
|
104395 |
03-Oct-2002 |
jmallett |
In lieu of a good way to prevent every possible looping in make(1), stop 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
|
104375 |
02-Oct-2002 |
jmallett |
Code that has been #if0'd with the comment "WHY" since revision 1.1 can disappear.
|
104374 |
02-Oct-2002 |
jmallett |
Remove 6-years-stale #if0, the behaviour isn't ever going to be limited to compatible mode, as far as I know, since we use it...
|
104125 |
29-Sep-2002 |
jmallett |
Fix spurious three-space indentation in a four-space indentation file.
|
104123 |
29-Sep-2002 |
jmallett |
Fix ability to use csh(1) as the make(1) shell.
Sponsored by: Bright Path Solutions
|
104121 |
28-Sep-2002 |
jmallett |
Make make(1) WARNS=6 clean except for const issues. This mostly involves 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
|
104109 |
28-Sep-2002 |
jmallett |
Fix merge error in previous commit.
Sponsored by: Bright Path Solutions
|
104108 |
28-Sep-2002 |
jmallett |
Add empty default cases where they should be, remove non-local execution stuff 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
|
104032 |
27-Sep-2002 |
ru |
Document the parsing bug.
|
103991 |
26-Sep-2002 |
jmallett |
Remove a semicolon that appears to be a lie.
Spotted by: SPARC64 make WARNS=3 Sponsored by: Rachel Hestilow <rachel@jerkcity.com>
|
103990 |
26-Sep-2002 |
jmallett |
When formatting the time for a target, use %H instead of %k, which is mostly the same, but uses a non-extension option.
Sponsored by: Rachel Hestilow <rachel@jerkcity.com>
|
103981 |
26-Sep-2002 |
jmallett |
Don't declare things as extern when they will be static.
Sponsored by: Rachel Hestilow <rachel@jerkcity.com>
|
103545 |
18-Sep-2002 |
jmallett |
Make the DEBUGF() macro portable by (ugh) adding a Debug() function, which 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.
|
103508 |
17-Sep-2002 |
jmallett |
Move common use of if (DEBUG(FOO)) printf... to DEBUGF(FOO, ...), using 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.
|
103503 |
17-Sep-2002 |
jmallett |
#define<space> -> #define<tab>
|
103502 |
17-Sep-2002 |
jmallett |
Print debugging from DEBUG(VAR) level to stderr. About to macroise this. (Read: More commits to come).
MFC in: 4 days.
|
103030 |
06-Sep-2002 |
archie |
Make it clear that the ":C" variable modifier expects an extended regular expression instead of an obsolete regular expression. Also, cross-reference re_format(7) instead of regex(3).
MFC after: 3 days
|
102692 |
31-Aug-2002 |
peter |
Deal with bootstrapping from an old -current (almost exactly a year old) 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.
|
102393 |
25-Aug-2002 |
jmallett |
Add a -C ala GNU make(1) for Makefiles which are too lazy to use $(MAKE) and 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>
|
102178 |
20-Aug-2002 |
ru |
Allow embedded `:' and `!' in target names.
PR: bin/6612 Obtained from: OpenBSD MFC after: 1 week
|
102084 |
19-Aug-2002 |
jmallett |
Remove local prototypes for main().
|
101672 |
11-Aug-2002 |
ru |
main.c:450: warning: `targs' might be used uninitialized in this function
Spotted by: patrick@godloveya.com, naddy, -Wuninitialized
This segfaulted alpha and sparc64; i386 had this magically zeroed.
|
101460 |
07-Aug-2002 |
ru |
Pacify ``make -f /dev/null -V FOO''.
|
100792 |
28-Jul-2002 |
jmallett |
Print a warning when we are given two scripts for one target. This is neither as wide-reaching nor intensive as NetBSD's similar, but the warning uses the same text.
Inspired by: NetBSD
|
100733 |
26-Jul-2002 |
imp |
Back out jmallett's realpath changes. They break a set of makefiles that 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
|
100037 |
15-Jul-2002 |
jmallett |
Bit-width fields should be of type 'int'.
|
100036 |
15-Jul-2002 |
jmallett |
Use %zu to print size_t.
|
98509 |
20-Jun-2002 |
jmallett |
Fix a bug fixed by NetBSD in revision 1.42 of parse.c by christos which caused an example Makefile I was showing someone just last night to report a variable as being recursive.
Obtained from: NetBSD
|
98508 |
20-Jun-2002 |
jmallett |
More unsigned char casts to isupper(3).
Obtained from: NetBSD
|
98506 |
20-Jun-2002 |
jmallett |
Provide a heuristic for RCS conflicts.
Obtained from: NetBSD
|
98502 |
20-Jun-2002 |
jmallett |
Look for wildcards, and balanced meta-characters such as { and } like NetBSD does.
Obtained from: NetBSD
|
98501 |
20-Jun-2002 |
jmallett |
Expand a buffer to reduce diffs to NetBSD.
Obtained from: NetBSD
|
98500 |
20-Jun-2002 |
jmallett |
Diff reduction for great justice against NetBSD, cast to unsigned char when passing an argument to isspace(3).
|
98441 |
19-Jun-2002 |
jmallett |
Fix a memory leak from previous commit by freeing the possibly expanded string at the first opportunity, being sure to now always allocate the new string from VarPossiblyExpand. Oops.
|
98439 |
19-Jun-2002 |
jmallett |
Possibly expand the variable name's embedded variables before using it, as seen (somewhat) in NetBSD. This catches a few extra recursion cases that could be hidden by expanding a NIL variable causing an existing variable to be returned (which caused infinite looping and climbing memory usage in at least one case).
Obtained from: NetBSD (in principle)
|
98346 |
17-Jun-2002 |
jmallett |
make(I) appeared in PWB UNIX.
|
98164 |
13-Jun-2002 |
jmallett |
Avoid classy use of a variable one time with a constant value.
|
98163 |
13-Jun-2002 |
jmallett |
Use %p to print a pointer, not %lx and a cast to (unsigned long). Yuck.
|
98162 |
13-Jun-2002 |
jmallett |
Don't do stupid things to avoid unused parameters, mark them __unused.
|
98138 |
12-Jun-2002 |
jmallett |
String lengths and sizeof()s are size_t not int. Mark an unused parameter of ReadMakefile as __unused, it's there because this function is used by the abstracted list interface which normally deals with item handlers which take two arguments. Add a missing static prototype.
|
98136 |
12-Jun-2002 |
jmallett |
The error functions take constant pointers to strings for their format.
|
97686 |
01-Jun-2002 |
jmallett |
Remove a stray asterisk in a comment.
|
97538 |
30-May-2002 |
ru |
mdoc(7) police: removed unnecessary .Ns's.
|
97251 |
24-May-2002 |
ru |
Back out the ``run shell from $PATH'' change; this was an overkill and is insecure.
Requested by: bde
|
97163 |
23-May-2002 |
jmallett |
Set the MAKEFILE variable to the value passed to ReadMakefile(), not the full path to it. Use the full path only for parsing it.
|
97123 |
22-May-2002 |
jmallett |
str_concat() doesn't really take const arguments.
Submitted by: bde Pointy hat to: jmallett
|
97122 |
22-May-2002 |
ru |
Do not run shell from /bin, run it from $PATH. Bump MAKE_VERSION to 5200205221.
|
97121 |
22-May-2002 |
ru |
Added the MAKE_VERSION global that could be useful in determining if a given make(1) is feature-compatible with a set of makefiles.
When merged, this will be used to replace the ugly upgrade_checks hacks in src/Makefile.
Version has the RYYYYMMDDX format, where R is from RELENG_<R> and X allows for 10 distinguishable changes per day.
Discussed with: bde
|
97104 |
22-May-2002 |
jmallett |
Replace the evil that is __DECONST() with (void *). This is one of the least evil things we can do involving the const qualifier and a pointer.
Submitted by: bde, ru
|
97077 |
21-May-2002 |
jmallett |
Make ReadMakefile() operate using the realpath(3) name for the file handed to it, which means that relative paths will be expanded to absolute paths, and filenames without a path will end up with their absolute path included as well. This aids tremendously in debugging a build using our make(1) with multiple Makefile's, such as when there is a syntax error in a file in a sub-directory as per <bsd.subdir.mk>. Normally we'd end up with just "Makefile" known about the Makefile in question, which means that an error would be useless for someone trying to debug their build system, now we end up with a complete real pathname for the Makefile.
So mostly this is useful in a debugging context, but possibly others too (I haven't thought of them yet, but they probably are more useful if you make Dir_FindFile use realpath(3), but that's another story).
Reviewed by: -current MFC after: 2 weeks
|
96704 |
16-May-2002 |
trhodes |
More consistancy. file system > filesystem
|
96071 |
05-May-2002 |
jmallett |
Fix make(1) behaviour regarding SysV-style substitution when given a nil left-hand-side.
PR: bin/5297 Submitted by: "Matthew Emmerton" <matt@gsicomp.on.ca> MFC after: 1 week
|
95124 |
20-Apr-2002 |
charnier |
Use `The .Nm utility'
|
95020 |
19-Apr-2002 |
obrien |
Move the sysV variable substitution up with the BSD feature that replaced it.
|
94990 |
18-Apr-2002 |
ru |
Do not reset MAKEFILE when reading ".depend" as this rather eliminates the usefulness of ${MAKEFILE}.
Obtained from: NetBSD MFC after: 1 week
|
94638 |
14-Apr-2002 |
obrien |
Back out rev 1.17, it breaks dependencies. With rev 1.7 one cannot build src/bin/sh -- because make fails to create the buildtools before trying to use them. Actually it does compile the buildtools into .o's before trying to use them, but not all the way into binaries.
|
94607 |
13-Apr-2002 |
obrien |
Revision 1.17 seems to break a subsequent buildworld (i.e. with the new make installed) in gnu/usr.bin/groff/src/preproc/eqn (which, being a build tool itself, is built with the original make during buildworld).
The problem seems to be that in str_concat(), the string is not terminated when the length of the second string is 0. This apparently can happen during null suffix rule processing.
Submitted by: tmm
|
94595 |
13-Apr-2002 |
obrien |
Fix a minor lint warning.
|
94594 |
13-Apr-2002 |
obrien |
Prefer BSDmakefile over makefile and Makefile.
Submitted by: jmallett Obtained from: OpenBSD
|
94589 |
13-Apr-2002 |
obrien |
Fix copyrights, and undo SCS ID damage.
|
94587 |
13-Apr-2002 |
obrien |
Update SCM ID method.
|
94585 |
13-Apr-2002 |
obrien |
Make str_concat handle NULL arguments properly (a-la how ODE-2.3.6 make does).
Submitted by: jmallett Inspired by: CMU BUILDTOOLS4 coredumping, ODE-2.3.6 make(1)
|
94584 |
13-Apr-2002 |
obrien |
De'register.
|
94583 |
13-Apr-2002 |
obrien |
Constify str_concat()
Submitted by: jmallett
|
94582 |
13-Apr-2002 |
obrien |
Check to make sure fdopen() succeeds in make(1).
Submitted by: jmallett Inspired by: NetBSD
|
94513 |
12-Apr-2002 |
charnier |
Un.Ar makefile. The add of .Ar was part of my last commit. Asked by: ru
|
94506 |
12-Apr-2002 |
charnier |
Reorder #include. Cast arg #2 of lseek to an off_t when constant. No need to test if failsafe memory allocation fails, it can't. perror -> warn. Use failsafe memory allocation provided.
Use .Pa and .Ar. Uppercase (first letter) programname after dot.
|
93056 |
23-Mar-2002 |
imp |
o unifdef -D__STDC__ o remove badly bit-rotted compat file that likely won't work on the systems it purports to support.
|
92921 |
22-Mar-2002 |
imp |
remove __P
|
90965 |
20-Feb-2002 |
cjc |
make(1) claims to ignore the remainder of a conditional once its value has been determined similar to C. That is, one expects a construction like,
.if defined(TEST) && (${TEST:L} == "test")
Never to generate an error since the second expression should never be evaluated when TEST is undefined.
However, this was not the case. The above fails with the current make(1) if TEST is undefined. This patch fixes the above and many similar cases.
PR: bin/34032 Submitted by: Alan Eldridge <alane@geeksrus.net> MFC after: 1 week
|
89282 |
12-Jan-2002 |
schweikh |
Make substitutions in internal macros like $(@F:.o=.c) work. This should not affect our build process, as
find /usr/src -name Makefile | xargs grep '@[DF]'
has no matches (other than FreeBSD.org email addresses :-)
PR: bin/24377 Submitted by: Mark Valentine <mark@thuvia.demon.co.uk> Reviewed by: Matthew Emmerton <matt@gsicomp.on.ca> MFC after: 4 weeks
|
81449 |
10-Aug-2001 |
ru |
mdoc(7) police: protect trailing full stops of abbreviations with a trailing zero-width space: `e.g.\&'.
|
80381 |
26-Jul-2001 |
sheldonh |
Use STD{ERR,IN,OUT}_FILENO instead of their numeric values. The definitions are more readable, and it's possible that they're more portable to pathalogical platforms.
Submitted by: David Hill <david@phobia.ms>
|
79790 |
16-Jul-2001 |
ru |
Clarify that MAKEOBJDIR and MAKEOBJDIRPREFIX are environment variables.
Submitted by: bde
|
79755 |
15-Jul-2001 |
dd |
Remove whitespace at EOL.
|
77054 |
23-May-2001 |
obrien |
Note that sys.mk is read before any other file (even Makefile)
|
76801 |
18-May-2001 |
sobomax |
By default build make(1) as a static binary. It costs only 100k of additional disk space, buf provides measureable speed increase for make-intensive operations, such as pkg_version(1), `make world' and so on.
MFC after: 1 week
|
76163 |
30-Apr-2001 |
dd |
mdoc(7) police: remove hard sentence breaks.
|
76012 |
26-Apr-2001 |
will |
Remove GCC-ism (-Wall).
Submitted by: bde
|
75976 |
25-Apr-2001 |
ru |
Add -Wall.
|
75975 |
25-Apr-2001 |
ru |
-Wall cleanup.
|
75974 |
25-Apr-2001 |
ru |
unifdef -UWANT_ENV_PWD.
No one ever going to use this bugfeature.
|
75973 |
25-Apr-2001 |
ru |
Make ${.OBJDIR} canonical.
Reviewed by: bde
|
74294 |
15-Mar-2001 |
billf |
with my mentor hat on...
remove the concept of a 'maintainer' of our make. there really isn't a need for any one committer to hold an exclusive lock or serve as a filter for this code.
|
74293 |
15-Mar-2001 |
will |
Revert previous change -- apparently it's not quite right. It broke src/sys/modules/if_ef and possibly other things. I tested the build with a make based on rev. 1.26, and it worked fine. Since I'm not particularly inclined to figure out what's going on with this, it's probably prudent just to back it out for now.
Found by: jkh Suggested by: jhay
|
74272 |
15-Mar-2001 |
will |
Fix make(1) bug: nested comments may be placed in .if, .else .if, and .endif statements but can't be placed in .elif. Basically, the problem was that ParseSkipLine() didn't handle comments the same way that ParseReadLine() did, and thus you had errors with comments that are on a conditional line (i.e. "^.") rather than a non-conditional line.
MFC candidate for 4.3-STABLE and 3.5-STABLE.
PR: 25627 Bug found by: jhs Fix submitted by: Seth Kingsley <sethk@osd.bsdi.com> (thanks!!)
|
73970 |
08-Mar-2001 |
tmm |
Fix two bugs in null suffix handling. Both occured only after the suffix list was cleared. Rules with null suffixes would not be rebuilt when the suffixes were added again. Adding null suffix rules would fail when a rule for the same source was declared before the suffix list was cleared.
PR: 23328, 24102 Reviewed by: will Approved by: rwatson
|
73265 |
01-Mar-2001 |
imp |
Include -DDEFSHELL=1 in Makefile.dist so people boostrapping will have a sane default.
Also add $FreeBSD$ while I'm here.
Pointed out by: bde
|
73262 |
01-Mar-2001 |
imp |
MAXPATHLEN includes the trailing NUL.
Correct array sizes to reflect this. Correct NUL termination after strncpy.
# Didn't to strncpy -> strlcpy change.
|
72679 |
19-Feb-2001 |
kris |
Introduce support for using OpenSSL ASM optimizations. This is done through the use of a new build directive, MACHINE_CPU, which contains a list of the CPU generations/features for which optimizations are desired. This feature will be extended to cover the ports tree in the future.
Currently OpenSSL provides optimizations for i386, i586 and i686-class CPUs. Currently it has not been tested on an i386 or i486.
Teach make(1) to provide sensible defaults for MACHINE_CPU if it is not defined (namely, the lowest common denominator CPU we support for each architecture). Currently this is i386 for the i386 architecture and ev4 for the alpha. sys.mk also sets the variable as a last resort for consistency with MACHINE_ARCH and bootstrapping from very old versions of make.
Benchmarks show a significant speed increase even in the i386 case, with additional improvements for i586 and i686 systems. For maximum performance define MACHINE_CPU=i686 i586 i386 in /etc/make.conf.
Based on a patch submitted by: Mike Silbersack <silby@silby.com> Reviewed by: current
|
72645 |
18-Feb-2001 |
asmodai |
Preceed/preceeding are not english words. Use precede and preceding.
|
72371 |
11-Feb-2001 |
dwmalone |
Uname is in section 3 of the manual pages.
PR: 25008 Submitted by: fullermd@over-yonder.net
|
72310 |
10-Feb-2001 |
will |
Fix nasty bug where make(1) assumed that you could read the directory it was in. This shall be MFC'd in about three days (probably not a good idea to MFC the stylistic changes though - see below).
PR: 19978 Submitted by: Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> Patch by: roam (slightly modified by me to use NULL not NIL)
|
71895 |
01-Feb-2001 |
ru |
mdoc(7) police: split punctuation characters + misc fixes.
|
71325 |
21-Jan-2001 |
will |
Fix style(9) bug; use ISDOT[DOT,]() macro available in util.c by moving it to make.h so both dir.c and util.c can use it, although bde didn't particularly like this part of the idea, IMO it's cleaner than it was.
Submitted by: bde
|
71102 |
16-Jan-2001 |
ru |
Prepare for mdoc(7)NG.
|
70358 |
26-Dec-2000 |
will |
Fix for the case where the first two entries returned by readdir() are actually NOT '.' and '..'. Apparently this isn't the case when accessing a directory via XFS over NFS on SGI systems. Since I don't have access to an environment like that, this will sit out in -current for at least six weeks. However, the patch proposed by the submitter seems acceptable, so I've decided to commit it to the tree, in the hope that it will solve some problems without bringing up others.
PR: 23300 Submitted by: Jim Pirzyk <Jim.Pirzyk@disney.com>
|
70197 |
19-Dec-2000 |
ru |
Prepare for mdoc(7)NG.
|
70080 |
16-Dec-2000 |
des |
Fix a bug introduced in rev. 1.17: initialize variables before use, not after.
Rev. 1.17 was "Obtained from NetBSD", but is significantly different from the equivalent NetBSD revision (rev. 1.30), which does not have this bug.
|
69531 |
02-Dec-2000 |
will |
There's also no point in #typedef'ing void/char pointers. Accordingly, rip out ClientData/Address pointers and use standard types.
Obtained from: OpenBSD
|
69527 |
02-Dec-2000 |
will |
There's no reason to use fancy forms of NULL. Replace all instances of NIL, NILLST, NILLGNODE, etc. with NULL.
Obtained from: OpenBSD
|
69390 |
30-Nov-2000 |
will |
Format string paranoia. This should avoid potential buffer overflows from user input (in its ever-broadening definition).
Obtained from: NetBSD
|
69355 |
29-Nov-2000 |
nik |
Xref make.conf(5), and point to /usr/share/doc/psd/12.make for the tutorial paper.
|
69107 |
24-Nov-2000 |
ru |
Reimplement the groff(1) warnings elimination fixes in a better way.
|
69095 |
23-Nov-2000 |
ru |
Eliminate groff(1) warnings.
|
68963 |
20-Nov-2000 |
ru |
mdoc(7) police: use the new features of the Nm macro.
|
68898 |
19-Nov-2000 |
kris |
Unlink the temporary file immediately so it is removed on exit.
Obtained from: OpenBSD
|
66854 |
09-Oct-2000 |
will |
Add :L and :U variable modifiers. These convert the variable's value to all-lower or all-upper case characters, respectively. These were added to further reduce differences between NetBSD/OpenBSD and FreeBSD make(1) to propagate OpenPackages.
PR: 19959 Submitted by: Gaspar Chilingarav <nm@web.am>
|
66853 |
09-Oct-2000 |
will |
Add :C/// variable modifier, which is similar to :S/// in functionality but allows for regex. I removed NO_REGEX since no one could give a reason to have it, and since we don't use make in bootstrap tools, it's not needed.
This is mostly added to synch up with NetBSD/OpenBSD so as to eliminate roadblocks in the OpenPackages project (see http://www.openpackages.org/). It's also quite useful, and costs us only about 3 kilobytes of space.
PR: 21605 Submitted by: Hubert Feyrer <hubertf@NetBSD.org> Reviewed by: silence on -arch Obtained from: NetBSD
|
66465 |
29-Sep-2000 |
will |
Assume MAINTAINER. I will be taking the job of merging NetBSD/OpenBSD improvements (including :C & :L, among others). After that, I'll be coming up with other ways to improve make(1).
Discussed in spirit with: peter
|
66365 |
25-Sep-2000 |
peter |
*** empty log message ***
|
64823 |
18-Aug-2000 |
ru |
Remove gratuitous free() call when we use special .SHELL target.
|
64739 |
16-Aug-2000 |
green |
Allow use of the ${MAKE_SHELL} variable to specify alternate shells for make(1) to use. Setting it to "sh" and "ksh" are the only values which work right ATM; I wouldn't expect "csh" to get you far ;)
|
63955 |
28-Jul-2000 |
imp |
Do include <unistd.h> for getopt interface. Don't extern it.
|
63317 |
17-Jul-2000 |
sheldonh |
Use pwd instead of cwd in backticks. cwd in backticks doesn't do anything useful in a Bourne shell.
PR: 19980 Submitted by: Alex Kapranoff <alex@kapran.bitmcnit.bryansk.su>
|
62835 |
09-Jul-2000 |
ache |
Fix assembler error messages - there is no \n allowed in __COPYRIGHT macro
|
62833 |
09-Jul-2000 |
wsanchez |
Use __RCSID()
|
62831 |
09-Jul-2000 |
wsanchez |
Use __RCSID()
|
62830 |
09-Jul-2000 |
wsanchez |
Initialize variable
|
60570 |
14-May-2000 |
will |
Update make(1) manpage to include information about the new loud debugging facility I introduced earlier today.
|
60569 |
14-May-2000 |
will |
Add loud debugging facility (-dl option) which allows programmers/developers to override @-prefixed commands in Makefiles. It is especially useful for debugging ports and/or complex Makefiles in such a manner that is basically a last resort, but is quite effective if the output is well-handled.
I'll update the manpage after dinner. ;-)
Better patch submitted by: steve Reviewed by: phk, steve, chuckr, obrien, Lyndon Nerenberg <lyndon@orthanc.ab.ca>
|
59217 |
14-Apr-2000 |
imp |
#include <errno.h> where needed. Kill extern int errno;.
Minor warnings in tip corrected.
|
57670 |
01-Mar-2000 |
sheldonh |
Remove single-space hard sentence breaks. These degrade the quality of the typeset output, tend to make diffs harder to read and provide bad examples for new-comers to mdoc.
|
57666 |
01-Mar-2000 |
nik |
Fix errors in .Xr usage.
PR: docs/17057 Submitted by: Submitted by: Udo Erdelhoff <ue@nathan.ruhr.de>
|
56280 |
19-Jan-2000 |
ru |
${.MAKE} -> ${MAKE}
Reviewed by: hoek
|
56151 |
17-Jan-2000 |
kris |
Create tempfiles securely.
Reviewed by: imp
|
54147 |
05-Dec-1999 |
cracauer |
Make '||' visible.
PR: docs/15265 Submitted by: Kazu TAKAMUNE <takamune@avrl.mei.co.jp>
|
53631 |
23-Nov-1999 |
marcel |
Improve backward compatibility.
make(1) uses sysctlbyname() to find out if it is running on a PC98 machine. This check has been added on 1998/9/9. The MIB variable was added on 1998/8/31. At that time __FreeBSD_version was 300003. So, only perform the check *if* __FreeBSD_version is defined and if it's greater than 300003.
For the record: sysctlbyname was added on 1997/5/30 so this change automaticly handles that...
|
53186 |
15-Nov-1999 |
marcel |
Remove CROSS_MAKE_FLAGS.
|
52109 |
10-Oct-1999 |
julian |
Fix the following: It appears that make fails to read the global symbol table of the archive file, making it think that the library needs to be rebuilt.
fix supplied in PR:
PR: bin/14167 Submitted by: Sebastian Lederer <lederer@bonn-online.com> Reviewed by: gallatin@FreeBSD.ORG
|
51155 |
11-Sep-1999 |
hoek |
s/with historical makefils//. Also, relocate and change the description of VPATH to be a little sexier. I'd say it looks a bit like Claudia Schiffer now, which I consider a definate improvement. We're also a little more subtle about saying that VPATH is for backward(s) compatibility.
Submitted-by: chris, bde, and myself [although none of their descriptions were as sexy M(|is|r)s Schiffer, of course].
|
51151 |
11-Sep-1999 |
hoek |
Remove the #include of sys/param.h. It was meant to improve portability for BSD less than 4.4 where sys/cdefs.h DNE but can be simulated with param.h. Unfortunately, the additional include did little to actually improve portability since we've lost portability in several other chunks of make code (err(), sysctlbyname(), probable more).
Partly submitted by: bde
|
51150 |
11-Sep-1999 |
hoek |
Unduplicate IDs from comments, do $Id -> $FreeBSD$ (submitted-by: bde)
|
51132 |
10-Sep-1999 |
julian |
Allow 'make' to check out elements within archive libraries.
"Make no longer properly parses archive files, so using archive members as make targets, as described in PSD:12 section 4.2, does not work."
Really should be merged into 3.3 before we ship if we can.. it's a trivial fix.
PR: bin/13039, bin/10274 Submitted by: Mikko Tyolajarvi mikko@dynas.se
|
50477 |
28-Aug-1999 |
peter |
$Id$ -> $FreeBSD$
|
50145 |
22-Aug-1999 |
hoek |
Fix a temp file race occurring only when -j is used.
Noticed by: ru Obtained from: OpenBSD
|
49938 |
17-Aug-1999 |
hoek |
Merge style- and trivial- only changes from OpenBSD (dated 1999/07/29-19:55+1).
Obtained from: OpenBSD, sometimes indirected from NetBSD; myself
|
49736 |
14-Aug-1999 |
chris |
Bad reference of getcwd(2) changed to getcwd(3).
|
49665 |
12-Aug-1999 |
chris |
Make VPATH explanation more concise. I apparently was not thinking on the previous commit.
|
49663 |
12-Aug-1999 |
chris |
Move ${VPATH} explanation under the .PATH rule section.
Clarify my vague explanation of how ${VPATH} works and why it shouldn't be used.
|
49658 |
12-Aug-1999 |
hoek |
Bugfix to last commit: Correctly intuit when an lhs is a string vs. number.
|
49633 |
11-Aug-1999 |
chris |
Document ${VPATH} and that it _should_not_ be used in any new Makefiles.
PR: 10556 Submitted by: Dominic Mitchell <Dom.Mitchell@palmerharvey.co.uk>
|
49332 |
31-Jul-1999 |
hoek |
Add a -E flag, similar to -e (overide variables from environment) except that -E only operates for a specified variable. Useful since the -e option will often pull-in many unwanted variable overrides (esp. in a make world situation). Uses include overriding BINOWN (which cannot be done by normal methods or through abuses of MAKEFLAGS) or likely for ports to honour CFLAGS (provided they're running on a system whose make(1) has this option).
|
49331 |
31-Jul-1999 |
hoek |
Print an error message on illegal numerical arguments.
Submitted by: bin/9349 (slightly modified) Assar Westerlund <assar@sics.se>
|
49330 |
31-Jul-1999 |
hoek |
When printing an error message after command execution fails, don't assume the only possible error is "command not found". This makes debugging of messages such as "/bin/sh: not found" less common...
|
48654 |
07-Jul-1999 |
imp |
Per requests from the community, commit rudimentary cross compilation support. I've been building world with these changes for months w/o ill effect. I've also managed to build the cross tool chain for MIPS with these patches.
Please note that the extent to which these patches work is largely dictated by how well our tool chains support the cross compilation. Building alpha binaries on i386 doesn't work. Supposedly building i386 binaries on alpha does work, but I've not verified it with these patches, however.
|
47494 |
25-May-1999 |
hoek |
Handle ".if ${T} > 1 || ${T} < 3" and friends correctly.
Reported-by: asami
|
45806 |
19-Apr-1999 |
imp |
Add :Q to quote variable expansion to all proper expansion of variables for recursive makes. This makes it less painful to cross build recent NetBSD kernels on FreeBSD.
Obtained from: NetBSD
|
44362 |
01-Mar-1999 |
imp |
Make MACHINE_ARCH sensitive to the environment, as well as using the compiled in default in case it isn't defined. This is needed to make cross compilation work in some edge cases. It also makes cross compiling on FreeBSD other BSD's easier as well.
Obtained from: NetBSD, OpenBSD (predates the split)
|
44026 |
14-Feb-1999 |
dt |
Remove couple of 'extern int errno'. (They turned to something funny when <errno.h> included).
|
42409 |
08-Jan-1999 |
jkh |
Don't allow pointer underrun in loop.
Spotted by: John W. DeBoskey <jwd@unx.sas.com>
|
41410 |
29-Nov-1998 |
pds |
Described the search path Make uses to find makefiles.
|
41161 |
15-Nov-1998 |
bde |
Fixed missing 'v' in usage message.
|
41160 |
15-Nov-1998 |
bde |
Fixed bugs in previous commit: - missing `v' in synopsis. - 'v' disordered relative to 'V' in description of options. - line too long in description of 'v'.
|
41151 |
14-Nov-1998 |
dg |
Added a -v (verbose) option and hid multi-job file banner generation behind it.
|
40500 |
18-Oct-1998 |
obrien |
Only process the ``PWD'' environmental var if built with "WANT_ENV_PWD" defined. Bash v2 sets PWD and it creates major problems for those of us with /usr/src being a symlink. See the lists for examples of the problems.
|
40392 |
15-Oct-1998 |
jdp |
Fix make world breakage from last commit.
|
40388 |
15-Oct-1998 |
jkoshy |
Fix a serious bug in make(1)'s handling of archive libraries.
This case did not need to be tested when RANLIBMAG was defined (as when in an `aout' environment) because Arch_StatMember() treated the two cases of the library not being present and a member of the library not being present the same way, forcing a rebuild of the library. Since in the ELF environment we don't look inside archive libraries we now need to check if the archive library is present in order to determine its `out-of-date'-ness.
(I hope I've been able to meet the Oct 15th freeze).
Reported-by: Steve Price (and a few others whom I've forgotten, sorry)
|
39006 |
09-Sep-1998 |
kato |
Set the `pc98' string to the MACHINE if machdep.ispc98 != 0.
|
38985 |
09-Sep-1998 |
jb |
Don't define RANLIBMAG if building an elf version of make. The RANLIBMAG option lets make look inside archive libraries when determining if a library is out-of-date. I don't think that make should look inside files, so this fix effectively tells it not to. If the decision is made (by someone else) that make _should_ be doing this, it will need to be taught how to recognise elf archive libraries.
Problem noticed by: Joseph Koshy <jkoshy@freebsd.org>
|
38971 |
09-Sep-1998 |
jkoshy |
Fix spurious `free()' when -d g2 is enabled.
PR: 6790 Submitted by: nsmart <njs3@doc.ic.ac.uk>
|
38520 |
24-Aug-1998 |
cracauer |
When exiting on SIGINT, exit with signal status
|
37872 |
26-Jul-1998 |
imp |
Use malloc + sprintf rather than asprintf to ensure portability to other, less advanced architecutres. This should minorly help porting efforts of FreeBSD. I've done several make worlds since this came up with this change, as well as debugging several interesting nits with -V (which is the only thing this change will affect really).
|
36942 |
13-Jun-1998 |
peter |
Make -V expand it's arguments. This means that instead of 'make -V OBJS' printing something useless (to a shell) like: ${SRCS:N*.h:R:S/$/.o/g} it will instead print the actual ${OBJS} value.
|
36621 |
04-Jun-1998 |
bde |
Don't forget to pretend that `make -n -jN' makes the targets that it says it pretends to make.
This bug was apparently harmless except for normal cases involving .ORDER statements when it made debugging of -jN using -n very confusing. E.g., for:
.ORDER: beforedepend .depend depend: beforedepend .depend
where beforedepend depends on something so that it is not initially up to date, `make [-n] -j2 depend' causes `make' to wait for itself to make beforedepend. This works fine without -n. The job to make beforedepend has normally been started, and beforedepend is marked as made when the job completes. However, with -n, the pseudo-job for making beforedepend has normally completed, and in any case there was no chance of beforedepend being marked as made. `make' actually exited almost immediately with status 0 instead of waiting forever.
|
36588 |
02-Jun-1998 |
thepish |
PR: bin/6828 Submitted by: njs3@doc.ic.ac.uk Obtained from: NetBSD
Implement embedded variable expansion
|
36347 |
25-May-1998 |
steve |
Add a graceful jumping off point with a new .error directive.
PR: 6720 Submitted by: Niall Smart <njs3@doc.ic.ac.uk>
|
35993 |
13-May-1998 |
jb |
Fix broken (at least on alpha, but probably on i386 too) code which is supposed to walk an arry of character pointers, not an array of characters.
|
35968 |
12-May-1998 |
wosch |
Some commands are shell builtins. Execute the builtins by the shell and not directly by make(1).
PR: bin/6550 Submitted by: Theo de Raadt <deraadt@cvs.openbsd.org & wosch
|
35483 |
28-Apr-1998 |
imp |
Use historically correct error message in some cases, optionally.
|
35464 |
26-Apr-1998 |
phk |
When all transformation rules to or from a suffix disappeared, make tries to free the suffix. I think, it is a very strange idea. (Or, maybe, it is a POSIX requirement?) And it is done incorrectly. Apparently, it even don't update the list of known suffixes (but it is an other bug).
PR: 4254, 4692, 4783 Reviewed by: phk Submitted by: Dmitrij Tejblum <dima@tejblum.dnttm.rssi.ru>
|
31358 |
23-Nov-1997 |
jraynard |
Cleanup: fix a few typos, fit ASCII output onto an 80-column terminal and use a fixed font which actually exists.
|
29957 |
29-Sep-1997 |
imp |
Add #include <stdlib.h> to pick up prototypes for getenv and friends.
|
28828 |
27-Aug-1997 |
jkh |
Don't preferentially execute Makefiles in ${OBJDIR} - it just causes confusion and suffering. Tested by "make world". Submitted by: gibbs
|
28746 |
25-Aug-1997 |
fsmp |
Make explicit '-B' option propigate to submakes.
No one has said this would be a bad thing, so given the dearth of comments I decided to add it, as its an important step towards getting "make world" 'parallel-ized'.
Reviewed by: silence Submitted by: nnd@itfs.nsk.su
|
28228 |
14-Aug-1997 |
fsmp |
Better fix, as originally submitted by reporter.
Submitted by: N.Dudorov <nnd@itfs.nsk.su>
|
28191 |
14-Aug-1997 |
fsmp |
Fix PR bin/4291: /usr/bin/make - inconsistent -j<n> flag parsing.
Submitted by: N.Dudorov <nnd@itfs.nsk.su>
|
27644 |
24-Jul-1997 |
charnier |
Use err(3). Cosmetic in usage string.
|
25080 |
21-Apr-1997 |
phk |
In these XXX MHz days, waiting 500ms for a process to do something is really far too long. Let us try 100ms instead, if you have a PP200, maybe that's even too long. This should speed up make -j# builds. I wonder why SIGCHLD isn't used...
|
24360 |
29-Mar-1997 |
imp |
compare return value from getopt against -1 rather than EOF, per the final posix standard on the topic.
|
23578 |
09-Mar-1997 |
wosch |
Add reference to `PMake - A Tutorial'
|
23305 |
03-Mar-1997 |
wosch |
Add enviroment variable MAKEOBJDIRPREFIX, still undocumented except in bsd.obj.mk.
|
23006 |
22-Feb-1997 |
peter |
Revert $FreeBSD$ to $Id$
|
21673 |
14-Jan-1997 |
jkh |
Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long.
Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
|
19344 |
03-Nov-1996 |
steve |
Add a .POSIX directive. When the first non-comment line of a Makefile contains this directive, make(1) will enter a POSIX 1003.2 compliant mode.
Submitted by: Joerg Wunsch <joerg@freebsd.org>
|
18877 |
12-Oct-1996 |
steve |
Remove extraneous comment, fix second-level tabs (one tab and four spaces), and return error message in *err instead of calling Parse_Error.
Suggested by: Bruce Evans <bde@zeta.org.au>
|
18865 |
11-Oct-1996 |
steve |
Removed extra $Id$ string.
|
18864 |
11-Oct-1996 |
steve |
Reinstate '!=' fix by Bruce Evans. The original commit message from parse.c(1.9) was:
revision 1.9 date: 1996/09/12 03:03:25; author: bde; state: Exp; lines: +7 -6 Fixed handling of `!=' assignment. Don't warn if the shell's output is null, but warn if there was an error reading it.
Suggested by: Bruce Evans <bde@zeta.org.au>
|
18804 |
08-Oct-1996 |
steve |
O' to be bitten by CVS. Cleanup after import of Christos' version of make(1) and add Id's.
Set straight by: Bruce Evans and Peter Wemm :)
|
18765 |
06-Oct-1996 |
steve |
This commit was generated by cvs2svn to compensate for changes in r18764, which included commits to RCS files with non-trunk default branches.
|
18759 |
06-Oct-1996 |
steve |
Clarify the rule used to determine the object directory location.
|
18757 |
06-Oct-1996 |
peter |
This commit was generated by cvs2svn to compensate for changes in r18756, which included commits to RCS files with non-trunk default branches.
|
18751 |
06-Oct-1996 |
steve |
Correct problem with traversing into PSD.doc directory, these files are actually installed/built as part of src/share/doc/psd/12.make. Oops. :)
Pointed out by: Peter Wemm and Bruce Evans
|
18749 |
06-Oct-1996 |
jkh |
Correct merge bogon: You want to descend into PSD.doc for both `all' and `install' cases or there's never anything made to install, and you blow up in the install. :-)
|
18730 |
06-Oct-1996 |
steve |
Merge in NetBSD's changes to make(1). Changes include:
- Add the .PHONY, .PARALLEL, and .WAIT directives - Added the -B and -m commandline flags - misc. man page cleanups - numerous job-related enhancements - removed unused header file (bit.h) - add util.c for functions not found in other envs. - and a few coordinated whitespace changes
Special thanks to Christos Zoulas <christos@netbsd.org> for help in the merge. A 'diff -ur' between Net and FreeBSD now only contains sccsid-related diffs. :)
Obtained from: NetBSD, christos@netbsd.org, and me
|
18718 |
05-Oct-1996 |
wosch |
delete doubled words, e.g.: "the the" -> "the"
|
18492 |
25-Sep-1996 |
steve |
Fix for PR# 1231, make(1) execution of ``.BEGIN'' does not halt on error. Thanks to Wolfram for reminding me. ;)
Also remove a unnecessary test for c == '\n', since the loop (in ParseSkipLine) will not terminate unless c == '\n' || c == EOF, and the EOF case is already explicted handled by a return statement.
|
18478 |
23-Sep-1996 |
steve |
Be sure to remove any newlines encountered when parsing the input file in ParseSkipLine(...).
|
18456 |
22-Sep-1996 |
steve |
Fix for PR# 1095, make's continuation line handling buggy when used with .elif. Additional fixes include:
- fix continuation line handling when using .for - plug up a memory leak
|
18433 |
21-Sep-1996 |
steve |
Fix for PR#1230, make ``.for'' loops iterate backwards.
|
18339 |
18-Sep-1996 |
swallace |
Restore previous compatibility of ${.CURDIR}/obj.`uname -m` and $(.CURDIR}/obj search while retaining compatability of new prefix with cwd for the current source tree builds. .TARGETOBJDIR has been removed from make and CANONICALOBJDIR set in bsd.obj.mk
The builtin object directory searching is defined specifically as:
If MAKEOBJDIRPREFIX is defined, the search order is ${MAKEOBJDIRPREFIX}${.CURDIR} ${.CURDIR}
Else if MAKEOBJDIR is defined, the search order is ${MAKEOBJDIR} ${.CURDIR}
Otherwise, default to the search order ${.CURDIR}/obj.`uname -m` $(.CURDIR}/obj /usr/obj${.CURDIR} ${.CURDIR}
Reviewed by: bde
|
18255 |
12-Sep-1996 |
bde |
Fixed handling of `!=' assignment. Don't warn if the shell's output is null, but warn if there was an error reading it.
|
17970 |
31-Aug-1996 |
bde |
Fixed a missing colon in `notyet' code.
|
17969 |
31-Aug-1996 |
bde |
Listed all the environment variables (MACHINE and PWD were missing). Documented PWD. MACHINE and MAKEOBJDIR are are still undocumented except in main.c. I will be changing MAKEOBJDIR back to its old behaviour so that the comment in main.c actually applies.
Removed irrelevant misformatted text about make's name being argv[0].
|
17259 |
23-Jul-1996 |
nate |
'make' prints an extra leading `make: ' and extra trailing newline if there is no target to make.
% make make: make: no target to make.
%
Beause the function Punt() in main.c takes care of leading 'make:' and trailing newline, so, there is no need to pass explicitly.
Submitted by: enami@ba2.so-net.or.jp Obtained from: NetBSD GNATS
|
17193 |
17-Jul-1996 |
bde |
Added a -V option to print make's idea of the value of a variable.
Submitted by: mark@linus.demon.co.uk (Mark Valentine)
Fixed bugs and inconsistencies in synopsis and usage message.
|
17142 |
12-Jul-1996 |
jkh |
General -Wall warning cleanup, part I. Submitted-By: Kent Vander Velden <graphix@iastate.edu>
|
16885 |
01-Jul-1996 |
jkh |
Put back the $PWD override behavior of revision 1.4. The concensus *seems* to be that it was the right thing to do.
|
16809 |
27-Jun-1996 |
jkh |
Remove code which overrode the opinion of getcwd() with an often bogus value for $PWD.
|
16663 |
24-Jun-1996 |
jkh |
Bring in my changes for removing the pestilent obj links (unless you really want them) from /usr/src. This is the final version of the patches, incorporating the feedback I've received from -current.
|
15086 |
07-Apr-1996 |
joerg |
Fix a typo.
Submitted by: tgm@netcom.com (Thomas G. McWilliams)
|
11997 |
01-Nov-1995 |
adam |
Fix the :S modifier to substitute in each word of the variable, according to the description in the manpage. g flag means "replace every occurence in each word", and its absence means "replace first occurence in each word". Previously, absence of the g flag was implemented to mean "replace first occurence found in all words, and then stop replacing", which was incorrect.
|
10953 |
22-Sep-1995 |
phk |
Stop using gnumalloc.
|
9298 |
24-Jun-1995 |
ache |
Back out prev. NetBSD fix, it cause skipping some error constructions, don't delete initial space from line instead
|
9297 |
24-Jun-1995 |
ache |
Don't make error on ^<spaces>\n Obtained from: NetBSD
|
9255 |
18-Jun-1995 |
ache |
Fix parsing SYSV/GNU "include"
|
9254 |
18-Jun-1995 |
ache |
NetBSD fixes: declare more prototypes, move .OPTIONAL in alphabet order, prevent suffix rule, if direct or children dependances exists, forget to free v->name in var.c My fixes: fix famous ^\t\n bug, correct free order in str_end Reviewed by: bde Obtained from: NetBSD, me
|
9242 |
16-Jun-1995 |
ache |
Allow additional parsing of SYSV/GNU make "include" directive, it covers 90% of problems in ports Makefiles
|
8874 |
30-May-1995 |
rgrimes |
Remove trailing whitespace.
|
5814 |
23-Jan-1995 |
jkh |
Bring in a number of changes from NetBSD's make, fixing quite a few problems in the process:
1. Quoting should work properly now. In particular, Chet's reported bash make problem has gone away. 2. A lot of memory that just wasn't being free'd after use is now freed. This should cause make to take up a LOT less memory when dealing with archive targets. 3. Give proper credit to Adam de Boor in a number of files. Obtained from: NetBSD (and Adam de Boor)
|
2390 |
29-Aug-1994 |
dg |
Use gnumalloc.
|
2266 |
24-Aug-1994 |
sef |
Fix a problem with passing quoted strings down to commands.
Reviewed by: Sean Eric Fagan
|
1591 |
27-May-1994 |
rgrimes |
This commit was generated by cvs2svn to compensate for changes in r1590, which included commits to RCS files with non-trunk default branches.
|