from christos@netbsd:
authorderaadt <deraadt@openbsd.org>
Thu, 14 Dec 1995 03:23:26 +0000 (03:23 +0000)
committerderaadt <deraadt@openbsd.org>
Thu, 14 Dec 1995 03:23:26 +0000 (03:23 +0000)
commite3a09ae03d61275f8f0dd328fce7234a5f53f06c
tree7cdad489b08ec7127bcc896158396f1f8f2f8b25
parent60b35d9da9c8bab5ed6c204ef6d03ccc74665d8c
from christos@netbsd:
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.
- 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.
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.

from cgd@netbsd:
pull in make.h.  (PAlloc() now uses emalloc(), which is prototyped in
make.h.  If the prototype is not in scope on the Alpha, I see lots
of "cast to pointer from integer of different size" warnings.)
14 files changed:
usr.bin/make/arch.c
usr.bin/make/bit.h
usr.bin/make/compat.c
usr.bin/make/dir.c
usr.bin/make/extern.h
usr.bin/make/job.c
usr.bin/make/lst.lib/lstInt.h
usr.bin/make/main.c
usr.bin/make/make.1
usr.bin/make/nonints.h
usr.bin/make/parse.c
usr.bin/make/suff.c
usr.bin/make/util.c
usr.bin/make/var.c