Commit Graph

7854 Commits

Author SHA1 Message Date
gad
b785b6343e If the `utility' specified starts with a '/' character, then execute it
without checking it for an equals-sign.  If it starts with a slash, then
it cannot be a request to set the value of a valid environment variable.

Approved by:	re (blanket `env')
2005-06-20 03:14:29 +00:00
gad
4e1c4de27a Move the code that clears the environment when `-i' is specified, so it that
it does not happen until all single-letter options are processed.  This will
be important for the -S option, which will be coming soon.

Approved by:	re (blanket `env')
2005-06-20 03:09:49 +00:00
gad
cd436d6b80 Add a '-v' option to `env', to make it easier to discover exactly what steps
it is doing, and what order it does them.  This will be much more useful as
more options are added.

Approved by:	re (blanket `env')
2005-06-20 03:06:54 +00:00
alfred
5f6df97a58 Decode chroot(2) args.
Approved by: re
2005-06-14 21:51:08 +00:00
ru
19aa3916e2 Markup and wording fixes.
Approved by:	re (blanket)
2005-06-14 11:50:53 +00:00
des
d8145c4b62 Don't free(sock) before it's even allocated.
Submitted by:	Joerg Sonnenberger <joerg@britannica.bec.de>
MFC after:	1 week
2005-06-10 06:36:03 +00:00
des
2bb8de20fe Remove kludges intended to support src trees with partial obj trees.
Discussed with:	ru
2005-06-10 06:12:53 +00:00
csjp
c7b82f2db4 Append a newline character to the usage string.
MFC after:	3 days
2005-06-05 23:49:35 +00:00
gad
1d64a7af31 Use the ki_udata field that was recently-added to kinfo_proc, instead of
stealing ki_spare[0] to hold a pointer.
2005-06-04 23:40:09 +00:00
eivind
4587fc275c Back out revision 1.19 and 1.20 until I find mental clarity to deal with
issues bde pointed out.
2005-06-01 20:34:06 +00:00
brd
785e5d3c15 Add myself as a new committer.
Approved by:	ceri (mentor)
2005-06-01 18:29:50 +00:00
maxim
e8b16ba229 o Teach login(1) to respect "hushlogin" and "nocheckmail" attributes
defined in user's $HOME/.login_conf.

PR:		bin/75001
Submitted by:	Rostislav Krasny
MFC after:	2 weeks
2005-06-01 12:23:06 +00:00
obrien
e9f9f6481f Don't use a patch w/in /usr/src. Programmatically change files when needed. 2005-05-31 22:16:49 +00:00
stefanf
e73616b51f Move #ident into #if 0. 2005-05-31 20:00:29 +00:00
charnier
6cd34f4d90 Reduce compiler warning: variable might be used uninitialized, by giving
an initial value.
2005-05-29 16:04:46 +00:00
charnier
00bccc99ec Move variable initialization to reduce compiler warning. 2005-05-29 15:52:48 +00:00
charnier
45f96a1a02 Reduce compiler warning: variable might be used uninitialized, by giving
an initial value.
2005-05-29 15:49:53 +00:00
charnier
3d484d1c7a Move FreeBSD Id outside of copyright. Initialize variable. 2005-05-29 15:47:31 +00:00
rwatson
f5b0199972 Modify vmstat(8)'s domem() routine, which is responsible for extracting
malloc(9) statistics from kernel memory or a kernel coredump, to catch
up with recent changes to adopt per-CPU malloc(9) statistics.  The new
routines walk the per-CPU statistics pools and coalesce them for
presentation to the user.
2005-05-29 13:40:00 +00:00
rwatson
8cf16b63df dd a '-n' option to ministat, which causes it to display only summary
statistics, not graph and statistical test output.  Useful for automated
processing.
2005-05-27 17:52:56 +00:00
eivind
bf8bf9051e Remove an errno reset that became unnecessary.
Noticed by: juli
2005-05-26 22:49:08 +00:00
alfred
67f16567dc decode utimes, lutimes, futimes, chflags, lchflags. 2005-05-26 22:49:06 +00:00
eivind
64e1569cd3 Document a couple of gotchas. 2005-05-26 22:30:12 +00:00
eivind
1a8a2d84cd We are past 4.4BSD - use our new-found stat flags for pipes and fifos. 2005-05-26 22:14:37 +00:00
alfred
2754f60f30 decode mkdir args. 2005-05-26 20:06:57 +00:00
keramida
dd13f28b17 Interlink systat(1), iostat(8) and vmstat(8) through their SEE ALSO
sections, so that users of one can learn about the others easily.
2005-05-26 17:54:16 +00:00
thompsa
572561b265 Add myself to the calendar.
Approved by: bms (mentor)
2005-05-26 03:21:16 +00:00
harti
ec3ee28e7c 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.
2005-05-25 16:06:14 +00:00
harti
0a769c1e2e Document why there is a dependency of certain object files from the
Makefile.

Requested by:	ru
2005-05-25 08:46:31 +00:00
csjp
377408df64 If sysctlbyname fails for kernel related reasons, tag the errno
string to the end of the error message. I think we used errx()
there when we really wanted an err().

MFC after:	1 week
2005-05-24 23:42:09 +00:00
harti
dd5f450e83 The caller of Var_Value() should not change the variable value. Make
this clear by constifying the return value.

Obtained from:	DragonFlyBSD
2005-05-24 16:05:51 +00:00
harti
79613308dc 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
2005-05-24 15:58:35 +00:00
harti
910dc606b9 Make shell.o dependend on the Makefile just in case someone changes
the default shell in the Makefile.
2005-05-24 15:48:10 +00:00
harti
145a7e51b4 Bump the warning level to 6. 2005-05-24 15:46:50 +00:00
harti
def2e7bba0 Fix a 64-bit warning by casting an int64_t to intmax_t and printing it
with %jd.
2005-05-24 15:45:11 +00:00
harti
30f40a9f33 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)
2005-05-24 15:41:34 +00:00
harti
a5cd5bc554 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)
2005-05-24 15:30:03 +00:00
harti
b6ff4ff920 Use the name of the default shell instead of a numeric index to select
the default shell.

Idea from:	DragonFlyBSD
2005-05-24 13:19:40 +00:00
harti
6c1f15aa0b 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.
2005-05-24 13:14:24 +00:00
harti
e6576c2ddf Describe the meta and builtins attributes for the .SHELL special
target.
2005-05-24 10:59:08 +00:00
harti
8cf013ca66 Describe the -x option and the .WARN pseudo-target. 2005-05-24 10:55:00 +00:00
harti
37b9e8f42f 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.
2005-05-24 09:14:46 +00:00
harti
cd8de662c8 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.
2005-05-24 07:45:49 +00:00
harti
6e1ae33f12 Make the ArgArray_Init() function visible to the rest of make.
It will soon be needed for the .SHELL parsing code.
2005-05-23 13:27:52 +00:00
ru
8b6774c605 Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 10:14:11 +00:00
ru
0491ba1f63 Sync program's usage() with manpage's SYNOPSIS. 2005-05-21 09:55:10 +00:00
harti
e6b2d317a9 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
2005-05-18 14:50:35 +00:00
keramida
dec56f1548 (1) Revert unnecessary indentation changes I committed as part of the
last version and (2) remove a disabled debugging fprintf() that I
accidentally committed here.

Noticed by:	simon (2)
2005-05-18 13:42:51 +00:00
keramida
0f9725e09b Merge the CPU and WCPU columns in a single %6.2f column, add a new 'C'
command that toggles between the two and update the ORDER_PCTCPU()
macro to sort correctly by the visible "cpu" value.

This saves 6 more columns in 80-column terminals, making things a lot
better for the COMMAND column.

Tested on:	i386, sparc64 (panther), amd64 (sledge)
Approved by:	davidxu (in principle)
2005-05-18 13:30:08 +00:00
harti
94c62408e0 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
2005-05-18 06:50:39 +00:00
kan
dbfc528c1e Unbreak r1.11 by delhij. Blind change from unsigned to signed char
pointer causes problems with sign extension and leads to compress(1)
dumping core on any non-trivial incoming data.
2005-05-18 05:24:08 +00:00
ru
7727dbb6af Add temporary patches to make one-true-awk respect locale's collating order
in [a-z] bracket expressions, until a more complete fix (like handing BREs)
is ready.

Prodded by:	ache
OK'ed by:	tjr
2005-05-17 14:54:33 +00:00
ru
d975010767 Correct the script name to be "zless.sh". This avoids an extra cp/chmod
(from the sys.mk rule) while still installing it under the "zless" name.
2005-05-17 11:41:01 +00:00
des
b51b7d4a0f Add a zless script which invokes less using the lesspipe script. This is
similar to the zmore script that comes with gzip (and in fact, in most
Linux distros, zless is a symlink to that very same zmore script) but has
the advantage that you get the correct file name on the less status line,
and can use :n and :p to navigate back and forth between multiple files.

MFC after:	1 week
2005-05-17 11:14:11 +00:00
des
4622341945 Handle presumably uncompressed files with cat; exec the handlers.
MFC after:	1 week
2005-05-17 11:08:11 +00:00
obrien
4689881298 Hardcode username to 8 characters. This makes top(1) output sane when
there are users on the system (even if not running a single process)
with a login > 8 chars.
I'm not all that happy limiting the username width like this, but it
restores sanity to top(1) output.

Discussed with:	keramida
2005-05-16 18:17:38 +00:00
ru
86758e8895 Make <runefile.h> internal to libc.
Suggested by:	phantom
2005-05-16 09:32:41 +00:00
marcel
bd9685053c o Add option -n. The -n option takes a count and breaks the line
after that many values have been printed. The line length is not
   considered anymore.
o  Add option -x. The -x option will cause the byte values to be
   printed in hexadecimal instead of decimal.
o  Bump WARNS to 6.
o  Update the manpage accordingly.
2005-05-15 06:26:59 +00:00
marcel
af76c232de Reindent and improve style(9) comformance. 2005-05-15 01:07:36 +00:00
ume
e33ba03345 NI_WITHSCOPEID cleanup. Neither RFC 2553 nor RFC 3493 defines
NI_WITHSCOPEID, and our getaddrinfo(3) does nothing special
for it, now.
2005-05-13 16:31:11 +00:00
harti
c52091a829 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.
2005-05-13 13:47:41 +00:00
harti
4340f9015f Move the Boolean and ReturnStatus stuff from sprite.h to util.h and
get rid of sprite.h.

Obtained from:	DragonFlyBSD
2005-05-13 08:53:00 +00:00
harti
591461b255 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.
2005-05-13 06:31:45 +00:00
jmallett
85f5689fb5 Add a flag (-q) which prints no header for the file and which doesn't indent the
match text; it also doesn't warn() for files which can't be opened.  Remove
global variables.  Use bool.  fopen(3) the files instead of freopen(3)ing stdin.
2005-05-12 18:57:37 +00:00
jmallett
2b0b1f0030 Include <err.h>. On my system CVS Make(1) has an implicit declaration of
warnc(3) without it.
2005-05-12 16:40:16 +00:00
harti
da28dc88d3 Still too early to bump WARNS - there are still warnings on 64bit
architectures.
2005-05-12 15:58:25 +00:00
harti
36e83199cc Make sure machine is initialize before use. Also make two pointers const
to get rid of the last two const warnings.
2005-05-12 15:54:52 +00:00
harti
8a553d2355 Get rid of the warning about vfork() clobbering variables.
Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.246)
2005-05-12 15:54:17 +00:00
harti
585f572c6c 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)
2005-05-12 15:45:14 +00:00
harti
1fa77b7e18 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)
2005-05-12 15:41:02 +00:00
harti
8218c0d11c Move code in CondToken() and get rid of a goto.
Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.243)
2005-05-12 15:38:11 +00:00
harti
c5cd0cafaa Remove a useless else and un-indent the following code. 2005-05-12 15:35:33 +00:00
harti
de9fcf7a3a Revert the previous accidential commit. 2005-05-12 15:20:50 +00:00
harti
85aa055df3 Cleanup SuffFindArchDeps() to get rid of two const-warnings.
Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.240)
2005-05-12 15:20:03 +00:00
harti
0c5d8337ec 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)
2005-05-12 15:10:45 +00:00
harti
2df173ac68 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)
2005-05-12 15:04:14 +00:00
harti
8b9c642e87 Replace a lot of Var_Set(..., VAR_GLOBAL) by Var_SetGlobal().
Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.237)
2005-05-12 14:47:22 +00:00
harti
dfdc1e0f67 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)
2005-05-12 14:43:32 +00:00
harti
00f50de80b Reshuffle functions to get rid of prototypes.
Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.235)
2005-05-12 14:35:01 +00:00
harti
ce844954ae Compat_RunCommand is used only in job.c so make it static there.
Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.234)
2005-05-12 14:33:24 +00:00
harti
8a832592ce Move variable printing from main.c to var.c
Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.233)
2005-05-12 14:31:42 +00:00
harti
e7ab78380c 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
2005-05-12 14:16:44 +00:00
harti
ad17767376 Move some global variables to the correct files.
Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.232)
2005-05-12 11:58:39 +00:00
harti
d25fe44200 Untwist the convoluted if() expressions in JobFinish(). They
could benefit from even more untwisting.

Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.23[01])
2005-05-12 11:47:17 +00:00
harti
c8542dc6a9 Move some comments around to where they belong and remove some unneccessary
gcc magic.

Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.229)
2005-05-12 11:16:04 +00:00
harti
1abbaf545a 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)
2005-05-12 11:09:45 +00:00
harti
99e68afe6f Make a function ProcWait() that waits for the given process.
Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.227)
2005-05-12 10:55:37 +00:00
harti
64956650a5 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>
2005-05-12 10:40:57 +00:00
fjoe
80c76b58f6 - check for geom_uzip module presence using kldstat -m.
kldstat -m finds geom_uzip module even if it is compiled in statically.
- create output file with x bit set.
- build mkuzip on all architectures (verified with "make universe").
- fix typo in info message.
2005-05-11 17:02:38 +00:00
jmallett
1a7bb0831b Spell 1 as SHUT_WR in argument to shutdown(2). 2005-05-11 02:49:03 +00:00
harti
4e99d859a8 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)
2005-05-10 14:27:04 +00:00
harti
a074124769 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)
2005-05-10 14:23:31 +00:00
harti
49e445d4c1 Move declarations of variables belonging to the variable module
from globals.h into var.h.

Submitted by:	Max Okumoto <okumoto@ucsd.edu> (7.209)
2005-05-10 14:16:40 +00:00
harti
312bbd99e5 Style: remove spaces before tabs.
Patch:	7.207
Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-05-10 14:13:20 +00:00
harti
2eb7ef8982 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>
2005-05-10 14:10:44 +00:00
harti
cb3c429895 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>
2005-05-10 14:06:19 +00:00
harti
3a6b30eead Make the three versions of fork() more uniform.
Patch:		7.201 (idea taken, but done differently)
Submitted by:	Max Okumoto <okumoto@ucsd.edu>
2005-05-10 14:03:28 +00:00
harti
9b84402586 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>
2005-05-10 13:48:15 +00:00
harti
9f5daa0be5 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>
2005-05-10 13:45:29 +00:00
glebius
7db34cfe43 Add option -l, to make output line buffered.
PR:		bin/78692
Submitted by:	Eugene Grosbein
MFC after:	2 weeks
2005-05-10 13:40:50 +00:00