Commit Graph

45 Commits

Author SHA1 Message Date
itohy
6aeb72f23f Reduced memory leaks.
I found some more leaks, but are not in inside of iterations.
1998-11-01 03:07:33 +00:00
itohy
f748b52ef3 Avoid reading outside of allocated memory
on command execution if the output is empty.
1998-11-01 03:01:53 +00:00
wsanchez
8a6084908f Use __ARCHITECTURE__, if defined, as MACHINE_ARCH 1998-10-13 17:08:34 +00:00
kleink
fb7502608a Need <time.h> for time() prototype. 1998-04-02 10:33:17 +00:00
christos
d611392726 PR/5225: Jason Thorpe: make with -j 4 and subdirs core-dumps.
This revealed another long standing problem with pmake's port to bsd.
.MAKE was not set as the manual page states. Set it and remove another
typo in my last commit.
1998-03-28 22:29:04 +00:00
christos
f46f2d693e PR/5210: Hauke Fath: make core dumps with .SHELL
Unfortunately this revealed a deeper problem with the brk_string code.
To fix it:
	- remove sharing of the buffer between brk_string invocations
	- change the semantics of brk_string so that the argument array
	  starts with 0, and return the buffer where the strings are
	  stored
1998-03-26 19:20:36 +00:00
lukem
8640f5d0af getopt returns -1 not EOF, use memmove instead of bcopy 1997-11-08 09:33:15 +00:00
lukem
2ba9e97765 wrap #include <sys/cdefs.h>, __RCSID(...) stuff in #ifndef MAKE_BOOTSTRAP 1997-09-28 03:30:58 +00:00
christos
254d64f064 Add WARNS=1
RCSID police
1997-07-01 21:17:00 +00:00
gwr
bf6930a26c Add the new .NOPATH feature which can be used to disable .PATH search
for particular targets, i.e. .depend, objects, etc.  (from Christos).
1997-05-08 21:24:41 +00:00
cjs
90423c173a If the -m option is used, make will check for the existence of the
directory specified, and add it to sysIncPath only if it exists.
However, afterwards make tested for the presence of a -m option by
checking to see if sysIncPath was an empty list, and assumed that
the -m option was not used if it was empty. This obviously breaks
if -m specified a non-existent directory. So I have added a flag
that is set if the -m option is used, and I test that instead.
1997-05-08 05:19:46 +00:00
gwr
f17ca2c65c Do not compile-in ${MACHINE} (as per PR#3386, OK'ed by christos) 1997-03-24 20:56:36 +00:00
christos
b210ac559b make $MACHINE_ARCH settable from the environment. 1997-01-28 23:58:00 +00:00
christos
87961728d3 - include <stdlib.h> to get getenv() prototype on SVR4
- if __STDC__ -> ifdef __STDC__ to appease SVR4
1996-12-31 17:54:16 +00:00
christos
aa49881371 - Merge in FreeBSD and Lite2 changes.
- Fix bug where a non-archive target with a .a suffix would always
  be considered to be out of date, since it does not have a TOC.
1996-11-06 17:58:58 +00:00
christos
091b5c0118 Add estrdup(), a checked version of strdup and use it. 1996-08-13 16:42:00 +00:00
christos
5c1983c016 - Move -D flags from Makefile to config.h and explain what they do. Add
-Wall -Wno-unused to CFLAGS. Add new define SYSVVARSUB to enable SysV
  style variable substitutions and enable them.
- Add SunOS style command substitutions via SUNSHCMD
- Fix core dump with '{variable = value'
1996-05-28 23:34:35 +00:00
christos
c7f6ddc626 make emalloc and erealloc return void *; closes PR/2276 1996-03-31 21:30:05 +00:00
jtc
fea2f4c4ca Added erealloc() function that calls enomem() if the allocation fails
(this is like the existing emalloc() function).  Changed all realloc()
calls to erealloc().
1996-03-29 02:17:13 +00:00
christos
57cad0d107 Jonathan Stone's fixes:
main.c:	Remove double include of <sys/resource.h>; if MACHINE is defined, use
	that instead of uname.
Makefile: Add util.c.
1996-03-11 13:45:31 +00:00
christos
9779dee0b1 Fix PR/2118; apply sysincludes patch. 1996-03-06 00:15:17 +00:00
christos
8862d696fa fix pr/1421 and pr/1997 1996-02-04 22:20:27 +00:00
christos
6611cb1d0d Updates for POSIX/SVR4 compiling:
arch.c:		 Don't require ranlib stuff. Not everybody has it.
dir.c:		 SunOS-4 != Solaris; change #ifdef sun to #if sun && !__svr4__
job.c, compat.c: Don't use 'union wait', use int and the W*() macros.
main.c: 	 Check for uname() == -1; some unames return > 0...
util.c, job.c:	 Add signal() with BSD semantics for svr4, don't use bsd
		 sigmask and friends.
1995-11-22 17:39:53 +00:00
christos
027abce852 - Turn compat mode on by default. It gets turned off when the -j without
the -B flag is specified. [Thus you can use -j 1 to turn it off].
- Fix malloc -> emalloc as Gordon noted.
1995-11-08 02:30:53 +00:00
christos
61067003d8 Minor:
- ${.PREFIX} should never contain a full pathname
    - Fixed gcc -Wall warnings
Major:
    - compatMake is now FALSE. This means that we are now running in
      full pmake mode:
	  * rules on dependency lines can be executed in parallel and or
	    out of sequence:

	    foo: bar baz

	    can fire the rule for baz before the rule for bar is fired.
	    To enforce bar to be fired before baz, another rule needs to be
	    added. [bar: baz]
	  * adjacent shell commands in a target are now executed by a single
	    invocation of the shell, not one invocation of the shell per line
      (compatMake can be turned off using the -B flag)
    - The -j flag now works... I.e. make -j 4 will fork up to four jobs in
      parallel when it can. The target name is printed before each burst
      of output caused by the target execution as '--- target ---', when j > 1
    - I have changed all the Makefiles so that they work with make -j N, and
      I have tested the whole netbsd by:
	  'make -j 4 cleandir; make -j 4 depend; make -j 4; make -j 4 install'
    - I have not compiled or tested this version of make with -DREMOTE.
1995-11-02 23:54:35 +00:00
jtc
6a70570191 include <signal.h> instead of <sys/signal.h> 1995-09-27 18:42:21 +00:00
christos
b5f782e810 - $NetBSD$ rcsids
- Fixed so that .[A-Z]* targets that do not match keywords are ignored as
  Posix mandates
- Added .PHONY target keyword
1995-06-14 15:18:37 +00:00
christos
95531c8e1f Fixes from Paul Borman (prb@bsdi.com)
1. Honor environment variable $MACHINE if set over uname.machine
2. archives with :: are always out of date, even when they have no children.
3. VAR= a b c     # comment, gets the trailing blanks trimmed, unless
   escaped by \. I'll have to read the posix manul to make sure that it
   is ok to handle escapes here.
1995-01-06 19:57:27 +00:00
gwr
4ca862ca1d Get the name of this type of MACHINE from utsname
so we can share an executable for similar machines.
(i.e. m68k: amiga hp300, mac68k, sun3, ...)
1994-09-30 03:14:21 +00:00
mycroft
e046f69de1 Use getcwd(3), not getwd(3), and remove some old, unused compatibility code. 1994-09-23 09:33:21 +00:00
jtc
9f7dde6ba0 Christos' fix for quoting variable extraction properly. 1994-06-16 18:50:04 +00:00
jtc
26a8972fd7 Fixes from Christos Zoulas, who used purify, objectcenter and testcenter
to find memory leaks and illegal memory accesses.
1994-06-06 22:45:17 +00:00
cgd
3db59563ee fixes/improvements from Christos Zoulas <christos@deshaw.com>. 1994-03-05 00:34:29 +00:00
jtc
e890eb6415 Include appropriate header files to bring prototypes into scope. 1994-01-13 21:01:40 +00:00
pk
f0e170dc10 Introduced ${.OBJDIR}. The variable is similar to .CURDIR but points at
the directory where make builds the targets. It can be used to clean up
those cumbersome Makefiles that have to guess at the "obj" directory.
1993-12-22 00:25:57 +00:00
jtc
5a178ffc9b POSIX.2 added the -S flag (opposite of -k). It was allready there,
just #ifdef'ed out.
1993-12-17 23:55:57 +00:00
jtc
77e8bced10 Fix bug (PR #42) with -j flag. Doesn't seem to do anything, but at
least it doesn't dump core anymore.
1993-12-15 18:26:40 +00:00
cgd
edcba29bc8 add MACHINE_ARCH 1993-12-04 02:12:34 +00:00
cgd
670f052fd7 add support for an obj.${MACHINE} dir, which will be used rather than obj,
if both exist.  basically, precedence is now:
	MAKEOBJDIR or (obj.${MACHINE} then obj)
	.
1993-10-23 02:32:03 +00:00
cgd
e57d888eed fix from chmr@edvz.tu-graz.ac.at (Christoph Robitschko)
to get things right if obj is a symlink and points to nowhere.
1993-08-23 05:29:31 +00:00
mycroft
e9d867ef50 Add RCS identifiers. 1993-08-01 17:54:45 +00:00
cgd
2b3bd9befd remember curdir as something other than ".", so that makes
of things which include files in directories won't get hosed...
1993-07-08 03:41:58 +00:00
cgd
883c20ae5a made .CURDIR be absolute, not relative, thereby eliminating
the need for some of the makefile trickery when making objects,
and fixing a few .PATH bugs
1993-03-23 07:26:38 +00:00
cgd
e541169ce2 after 0.2.2 "stable" patches applied 1993-03-21 18:04:42 +00:00
cgd
61f282557f initial import of 386bsd-0.1 sources 1993-03-21 09:45:37 +00:00