[BACK]Return to Makefile CVS log [TXT][DIR] Up to [local] / src

Annotation of src/Makefile, Revision 1.21

1.21    ! deraadt     1: #      $OpenBSD: Makefile,v 1.20 1997/07/29 04:07:35 kstailey Exp $
1.1       deraadt     2: #      $NetBSD: Makefile,v 1.25 1995/10/09 02:11:28 thorpej Exp $
                      3:
1.16      deraadt     4: #
                      5: # For more information on building in tricky environments, please see
                      6: # the list of possible environment variables described in
                      7: # /usr/share/mk/bsd.README.
                      8: #
                      9: # Building recommendations:
                     10: #
                     11: # 1) If at all possible, put this source tree in /usr/src.  If /usr/src
                     12: # must be a symbolic link, setenv BSDSRCDIR to point to the real location.
                     13: #
                     14: # 2) It is also recommended that you compile with objects outside the
                     15: # source tree. To do this, ensure /usr/obj exists or points to some
                     16: # area of disk of sufficient size.  Then do "cd /usr/src; make obj".
                     17: # This will make a symbolic link called "obj" in each directory, as
                     18: # well as populate the /usr/obj properly with directories for the
                     19: # objects.
                     20: #
                     21: # 3) If you are reasonably sure that things will compile OK, use the
                     22: # "make build" target supplied here. Good luck.
                     23:
1.6       mickey     24: .include <bsd.own.mk>  # for NOMAN, if it's there.
1.1       deraadt    25:
                     26: SUBDIR+= lib include bin libexec sbin usr.bin usr.sbin share games
                     27: SUBDIR+= gnu
                     28:
1.5       tholo      29: SUBDIR+= sys lkm
1.1       deraadt    30:
1.17      millert    31: .if (${KERBEROS} == "yes")
1.2       tholo      32: SUBDIR+= kerberosIV
1.21    ! deraadt    33: .endif
        !            34:
        !            35: .if   make(clean) || make(cleandir) || make(obj)
        !            36: SUBDIR+= distrib
1.4       tholo      37: .endif
1.2       tholo      38:
1.1       deraadt    39: .if exists(regress)
                     40: .ifmake !(install)
                     41: SUBDIR+= regress
                     42: .endif
                     43:
                     44: regression-tests:
                     45:        @echo Running regression tests...
                     46:        @(cd ${.CURDIR}/regress && ${MAKE} regress)
                     47: .endif
1.10      deraadt    48:
                     49: includes:
                     50:        (cd ${.CURDIR}/include; ${MAKE} includes)
1.1       deraadt    51:
1.7       deraadt    52: beforeinstall:
                     53: .ifndef DESTDIR
                     54:        (cd ${.CURDIR}/etc && ${MAKE} DESTDIR=/ distrib-dirs)
                     55: .else
                     56:        (cd ${.CURDIR}/etc && ${MAKE} distrib-dirs)
                     57: .endif
1.9       deraadt    58:        (cd ${.CURDIR}/include; ${MAKE} includes)
1.1       deraadt    59:
                     60: afterinstall:
                     61: .ifndef NOMAN
                     62:        (cd ${.CURDIR}/share/man && ${MAKE} makedb)
                     63: .endif
                     64:
                     65: build:
1.19      kstailey   66: .ifdef GLOBAL_AUTOCONF_CACHE
1.20      kstailey   67:        rm -f ${GLOBAL_AUTOCONF_CACHE}
1.18      kstailey   68: .endif
1.6       mickey     69:        (cd ${.CURDIR}/share/mk && ${MAKE} install)
1.8       deraadt    70:        (cd ${.CURDIR}/include; ${MAKE} includes)
1.1       deraadt    71:        ${MAKE} cleandir
                     72:        (cd ${.CURDIR}/lib && ${MAKE} depend && ${MAKE} && ${MAKE} install)
                     73:        (cd ${.CURDIR}/gnu/lib && ${MAKE} depend && ${MAKE} && ${MAKE} install)
1.13      deraadt    74: .if (${MACHINE_ARCH} == "mips")
1.14      briggs     75:        ldconfig
1.13      deraadt    76: .endif
1.17      millert    77: .if (${KERBEROS} == "yes")
1.2       tholo      78:        (cd ${.CURDIR}/kerberosIV && ${MAKE} build)
1.4       tholo      79: .endif
1.1       deraadt    80:        ${MAKE} depend && ${MAKE} && ${MAKE} install
1.15      niklas     81:
                     82: .if !defined(TARGET)
                     83: cross-tools:
                     84:        echo "TARGET must be set"; exit 1
                     85: .else
                     86: cross-tools:   cross-helpers cross-includes cross-binutils cross-gcc
                     87:
                     88: CROSSDIR=      ${DESTDIR}/usr/cross/${TARGET}
                     89:
                     90: cross-helpers:
                     91:        -mkdir -p ${CROSSDIR}/usr/include
                     92:        echo _MACHINE_ARCH | \
                     93:            cat ${.CURDIR}/sys/arch/${TARGET}/include/param.h - | \
                     94:            ${CPP} -E |sed -n '$$p' >${CROSSDIR}/TARGET_ARCH
                     95:        eval `grep '^osr=' sys/conf/newvers.sh`; \
                     96:           sed "s/\$$/-unknown-openbsd$$osr/" ${CROSSDIR}/TARGET_ARCH > \
                     97:           ${CROSSDIR}/TARGET_CANON
                     98:
                     99: cross-includes:
                    100:        ${MAKE} MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH` \
                    101:            DESTDIR=${CROSSDIR} includes
                    102:
                    103: cross-binutils:
                    104:        -mkdir -p ${CROSSDIR}/usr/obj
                    105:        export BSDSRCDIR=`pwd`; \
                    106:            (cd ${.CURDIR}/gnu/usr.bin/binutils; \
                    107:            BSDOBJDIR=${CROSSDIR}/usr/obj \
                    108:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    109:            ${MAKE} -f Makefile.bsd-wrapper obj); \
                    110:            (cd ${CROSSDIR}/usr/obj/gnu/usr.bin/binutils; \
                    111:            ${BSDSRCDIR}/gnu/usr.bin/binutils/configure \
                    112:            --prefix ${CROSSDIR}/usr \
                    113:            --target `cat ${CROSSDIR}/TARGET_CANON` && \
                    114:            ${MAKE} && ${MAKE} install)
                    115:        ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 755 \
                    116:            ${.CURDIR}/usr.bin/lorder/lorder.sh.gnm \
                    117:            ${CROSSDIR}/usr/bin/`cat ${CROSSDIR}/TARGET_CANON`-lorder
                    118:
                    119: cross-gcc:
                    120:        -mkdir -p ${CROSSDIR}/usr/obj
                    121:        (cd gnu/usr.bin/gcc; \
                    122:            BSDOBJDIR=${CROSSDIR}/usr/obj BSDSRCDIR=${.CURDIR} \
                    123:            MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                    124:            ${MAKE} -f Makefile.bsd-wrapper obj)
                    125:        (cd ${CROSSDIR}/usr/obj/gnu/usr.bin/gcc; \
                    126:            ${.CURDIR}/gnu/usr.bin/gcc/configure \
                    127:            --prefix ${CROSSDIR}/usr \
                    128:            --target `cat ${CROSSDIR}/TARGET_CANON` && \
                    129:            ${MAKE} BISON=yacc LANGUAGES=c \
                    130:            GCC_FOR_TARGET="./xgcc -B./ -I${CROSSDIR}/usr/include" && \
                    131:            ${MAKE} LANGUAGES=c install)
                    132: .endif
1.1       deraadt   133:
                    134: .include <bsd.subdir.mk>