X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/ea9dfc18da25b9e5d3c1fab6cc06cfd343ef286f..d6bc9b28056f03bf8a4eaa0fcd202a623da8a0f3:/usr/src/Makefile?ds=inline diff --git a/usr/src/Makefile b/usr/src/Makefile index f070e836db..c306bbf3d4 100644 --- a/usr/src/Makefile +++ b/usr/src/Makefile @@ -1,114 +1,55 @@ -# -# Copyright (c) 1986 Regents of the University of California. -# All rights reserved. The Berkeley software License Agreement -# specifies the terms and conditions for redistribution. -# -# @(#)Makefile 4.13 (Berkeley) %G% -# -# This makefile is designed to be run as: -# make build -# make installsrc -# The `make build' will compile and install the libraries -# before building the rest of the sources. The `make installsrc' -# will then install the remaining binaries. -# -# It can also be run in the more conventional way: -# make -# make install -# The `make' will compile everything without installing anything. -# The `make install' will then install everything. Note however -# that all the binaries will have been loaded with the old libraries. -# -# C library options: passed to libc makefile. -# See lib/libc/Makefile for explanation. -# HOSTLOOKUP must be either named or hosttable. -# DFLMON must be either mon.o or gmon.o. -# DEFS may include -DLIBC_SCCS, -DSYSLIBC_SCCS, both, or neither. -# -HOSTLOOKUP=named -DFLMON=mon.o -DEFS= -DLIBC_SCCS -LIBCDEFS= HOSTLOOKUP=${HOSTLOOKUP} DFLMON=${DFLMON} DEFS="${DEFS}" +# @(#)Makefile 4.20 (Berkeley) %G% -# global flags -# SRC_MFLAGS are used on makes in command source directories, -# but not in library or compiler directories that will be installed -# for use in compiling everything else. -# -DESTDIR= -CFLAGS= -O -SRC_MFLAGS = -k +# skip old +SUBDIR= bin games include lib libexec old pgrm sbin share usr.bin usr.sbin -# Programs that live in subdirectories, and have makefiles of their own. -# -LIBDIR= lib usr.lib -SRCDIR= bin usr.bin etc ucb new games local old +build: + ${MAKE} cleandir -all: ${LIBDIR} ${SRCDIR} + @echo +++ installing includes + cd include; ${MAKE} depend all install clean -lib: FRC - cd lib/libc; make ${MFLAGS} ${LIBCDEFS} - cd lib; make ${MFLAGS} pcc cpp c2 + @echo +++ installing C compiler + cd pgrm/cpp; ${MAKE} depend all install clean + cd libexec/c2.${MACHINE}; ${MAKE} depend all install clean + cd libexec/pcc; ${MAKE} depend all install clean -usr.lib ${SRCDIR}: FRC - cd $@; make ${MFLAGS} ${SRC_MFLAGS} + @echo +++ installing C library + cd lib/libc; ${MAKE} depend all install clean -build: buildlib ${SRCDIR} + @echo +++ re-installing C compiler + cd pgrm/cpp; ${MAKE} all install all + cd libexec/c2.${MACHINE}; ${MAKE} all install all + cd libexec/pcc; ${MAKE} all install all -buildlib: FRC - @echo installing /usr/include - cd include; make ${MFLAGS} DESTDIR=${DESTDIR} install - @echo - @echo compiling libc.a - cd lib/libc; make ${MFLAGS} ${LIBCDEFS} - @echo installing /lib/libc.a - cd lib/libc; make ${MFLAGS} DESTDIR=${DESTDIR} install - @echo - @echo compiling C compiler - cd lib; make ${MFLAGS} pcc cpp c2 - @echo installing C compiler - cd lib/pcc; make ${MFLAGS} DESTDIR=${DESTDIR} install - cd lib/cpp; make ${MFLAGS} DESTDIR=${DESTDIR} install - cd lib/c2; make ${MFLAGS} DESTDIR=${DESTDIR} install - cd lib; make ${MFLAGS} clean - @echo - @echo re-compiling libc.a - cd lib/libc; make ${MFLAGS} ${LIBCDEFS} - @echo re-installing /lib/libc.a - cd lib/libc; make ${MFLAGS} DESTDIR=${DESTDIR} install - @echo - @echo re-compiling C compiler - cd lib; make ${MFLAGS} pcc cpp c2 - @echo re-installing C compiler - cd lib/pcc; make ${MFLAGS} DESTDIR=${DESTDIR} install - cd lib/cpp; make ${MFLAGS} DESTDIR=${DESTDIR} install - cd lib/c2; make ${MFLAGS} DESTDIR=${DESTDIR} install - @echo - @echo compiling usr.lib - cd usr.lib; make ${MFLAGS} ${SRC_MFLAGS} - @echo installing /usr/lib - cd usr.lib; make ${MFLAGS} ${SRC_MFLAGS} DESTDIR=${DESTDIR} install + @echo +++ installing all libraries + cd lib; ${MAKE} depend all install all + cd lib/libc; rm -f tags; ${MAKE} tags; \ + install -c -o ${BINOWN} -g ${BINGRP} -m 444 tags /usr/libdata/tags -FRC: + @echo +++ installing C library tags file -install: - -for i in ${LIBDIR} ${SRCDIR}; do \ - (cd $$i; \ - make ${MFLAGS} ${SRC_MFLAGS} DESTDIR=${DESTDIR} install); \ - done + @echo +++ libraries done + ${MAKE} -installsrc: - -for i in ${SRCDIR}; do \ - (cd $$i; \ - make ${MFLAGS} ${SRC_MFLAGS} DESTDIR=${DESTDIR} install); \ +OBJ= /usr/obj +objlinks: + -for file in `find ${SUBDIR:S/^/-f /g} name SCCS prune or type dir print`; do \ + if [ -s $$file/Makefile -a ! -d ${OBJ}/$$file ] ; then \ + rm -rf ${OBJ}/$$file; \ + mkdir -p ${OBJ}/$$file > /dev/null 2>&1 ; \ + rm -f $$file/obj; \ + ln -s ${OBJ}/$$file $$file/obj; \ + fi; \ done -tags: - for i in include lib usr.lib; do \ - (cd $$i; make ${MFLAGS} TAGSFILE=../tags tags); \ +shadow: + -for file in `find ${SUBDIR:S/^/-f /g} name SCCS prune or type dir print`; do \ + if [ -s $$file/obj ] ; then \ + rm -rf ${OBJ}/$$file; \ + mkdir -p ${OBJ}/$$file > /dev/null 2>&1 ; \ + fi; \ done - sort -u +0 -1 -o tags tags -clean: - rm -f a.out core *.s *.o - for i in ${LIBDIR} ${SRCDIR}; do (cd $$i; make -k ${MFLAGS} clean); done +.include +.include