version 1.124, 2001/06/10 13:12:32 |
version 1.128, 2001/08/17 15:05:50 |
|
|
# MKSHARE, if set to `no', will prevent building and installing |
# MKSHARE, if set to `no', will prevent building and installing |
# anything in /usr/share. |
# anything in /usr/share. |
# NBUILDJOBS is the number of jobs to start in parallel during a |
# NBUILDJOBS is the number of jobs to start in parallel during a |
# 'make build'. It defaults to 1. |
# `make build'. It defaults to 1. |
# UPDATE will avoid a `make cleandir' at the start of `make build', |
# UPDATE, if defined, will avoid a `make cleandir' at the start of |
# as well as having the effects listed in /usr/share/mk/bsd.README. |
# `make build', as well as having the effects listed in |
# NOCLEANDIR will avoid a `make cleandir' at the start of `make build', |
# /usr/share/mk/bsd.README. |
# but without having the effects listed in /usr/share/mk/bsd.README. |
# NOCLEANDIR, if defined, will avoid a `make cleandir' at the start |
|
# of the `make build'. |
# NOINCLUDES will avoid the `make includes' usually done by `make build'. |
# NOINCLUDES will avoid the `make includes' usually done by `make build'. |
|
|
# |
# |
# Targets: |
# Targets: |
# build: builds a full release of netbsd in DESTDIR. If BUILD_DONE is |
# build: builds a full release of netbsd in DESTDIR. If BUILD_DONE is |
|
|
# beforeinstall: creates the distribution directories. |
# beforeinstall: creates the distribution directories. |
# do-force-domestic: check's that FORCE_DOMESTIC isn't set (deprecated.) |
# do-force-domestic: check's that FORCE_DOMESTIC isn't set (deprecated.) |
# do-share-mk: installs /usr/share/mk files. |
# do-share-mk: installs /usr/share/mk files. |
# do-cleandir: clean's the tree. |
# do-cleandir: cleans the tree. |
# do-make-obj: create's object directories if required. |
# do-make-obj: creates object directories if required. |
# do-check-egcs: check's that we have a modern enough compiler (deprecated.) |
# do-make-tools: builds host toolchain. |
# do-make-includes: install include files. |
# do-make-includes: install include files. |
# do-lib-csu: build & install startup object files. |
# do-lib-csu: build & install startup object files. |
# do-lib: build & install system libraries. |
# do-lib: build & install system libraries. |
|
|
|
|
.include <bsd.own.mk> |
.include <bsd.own.mk> |
|
|
|
.if defined(USE_NEW_TOOLCHAIN) |
|
.include "${.CURDIR}/tools/Makefile.tools" |
|
.endif |
|
|
MKOBJDIRS ?= no |
MKOBJDIRS ?= no |
HAVE_EGCS!= ${CXX} --version | egrep "^(2\.[89]|egcs)" ; echo |
|
|
|
.if defined(NBUILDJOBS) |
.if defined(NBUILDJOBS) |
_J= -j${NBUILDJOBS} |
_J= -j${NBUILDJOBS} |
|
|
.ifndef NODISTRIBDIRS |
.ifndef NODISTRIBDIRS |
.ifndef DESTDIR |
.ifndef DESTDIR |
.if exists(share/mk) |
.if exists(share/mk) |
(cd ${.CURDIR}/etc && ${MAKE} -m ${.CURDIR}/share/mk DESTDIR=/ distrib-dirs) |
(cd ${.CURDIR}/etc && \ |
|
${MAKE} -m ${.CURDIR}/share/mk DESTDIR=/ distrib-dirs) |
.else |
.else |
(cd ${.CURDIR}/etc && ${MAKE} DESTDIR=/ distrib-dirs) |
(cd ${.CURDIR}/etc && ${MAKE} DESTDIR=/ distrib-dirs) |
.endif |
.endif |
.else |
.else |
(cd ${.CURDIR}/etc && ${MAKE} distrib-dirs) |
(cd ${.CURDIR}/etc && ${MAKE} DESTDIR=${DESTDIR} distrib-dirs) |
.endif |
.endif |
.endif |
.endif |
|
|
|
|
@${MAKE} ${_M} do-share-mk |
@${MAKE} ${_M} do-share-mk |
@${MAKE} ${_M} do-cleandir |
@${MAKE} ${_M} do-cleandir |
@${MAKE} ${_M} do-make-obj |
@${MAKE} ${_M} do-make-obj |
@${MAKE} ${_M} do-check-egcs |
@${MAKE} ${_M} do-make-tools |
@${MAKE} ${_M} do-make-includes |
@${MAKE} ${_M} do-make-includes |
@${MAKE} ${_M} do-lib-csu |
@${MAKE} ${_M} do-lib-csu |
@${MAKE} ${_M} do-lib |
@${MAKE} ${_M} do-lib |
|
|
do-make-obj: |
do-make-obj: |
.if ${MKOBJDIRS} != "no" |
.if ${MKOBJDIRS} != "no" |
${MAKE} ${_J} ${_M} obj |
${MAKE} ${_J} ${_M} obj |
|
.if defined(USE_NEW_TOOLCHAIN) |
|
cd ${.CURDIR}/tools && ${MAKE} ${_M} obj |
.endif |
.endif |
|
|
do-check-egcs: |
|
.if empty(HAVE_EGCS) |
|
.if defined(DESTDIR) |
|
@echo "*** CAPUTE!" |
|
@echo " You attempted to compile the world without egcs. You must" |
|
@echo " first install a native egcs compiler." |
|
@false |
|
.else |
|
(cd ${.CURDIR}/gnu/usr.bin/egcs && \ |
|
${MAKE} ${_M} ${_J} dependall MKMAN=no && \ |
|
${MAKE} ${_M} MKMAN=no install && ${MAKE} ${_M} cleandir) |
|
.endif |
.endif |
|
|
|
do-make-tools: |
|
.if defined(USE_NEW_TOOLCHAIN) |
|
cd ${.CURDIR}/tools && ${MAKE} ${_M} build |
.endif |
.endif |
|
|
do-make-includes: |
do-make-includes: |