[BACK]Return to Makefile CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / etc

Annotation of src/etc/Makefile, Revision 1.141

1.141   ! thorpej     1: #      $NetBSD: Makefile,v 1.140 2000/03/10 11:59:35 lukem Exp $
1.66      mikel       2: #      from: @(#)Makefile      8.7 (Berkeley) 5/25/95
1.1       cgd         3:
1.96      cjs         4: # Environment variables without default values:
                      5: #   DESTDIR must be set before anything in this file will work.
                      6: #   RELEASEDIR is where the tarred up stuff for a snapshot or
                      7: #      release will be placed.
                      8: #
                      9: # Environment variables with default values:
                     10: #   LOCALTIME will set the default local time for the system you
                     11: #      build; it determines what /etc/localtime is symlink'd to.
                     12: #   KERNSRCDIR points to kernel source; it is set by default to ../sys,
                     13: #      but can be overridden.
                     14: #   KERNOBJDIR is the kernel build directory, it defaults to
                     15: #      ${KERNSRCDIR}/arch/${MACHINE}/compile/KERNELNAME, but can be
                     16: #      overridden.
                     17: #   KERNCONFDIR is where the configuration files for kernels are found;
                     18: #      default is ${KERNSRCDIR}/arch/${MACHINE}/conf but can be overridden.
1.97      cjs        19: #   UPDATE is normally undefined; if defined, don't do a 'make clean'
                     20: #      before kernel compile
1.96      cjs        21: #   NO_SENDMAIL is normally undefined; if defined, it will not do a
                     22: #      `make distribution' in the sendmail config file source directory.
                     23: #   EXTRA_KERNELS has a machine-dependent list of kernels to build added
                     24: #      to it, but you may also set this to have extra ones built.
1.119     ross       25: #   BUILD_KERNELS are a machine-dependent list of kernels that should just
                     26: #      be built in place but not made into sets or installed, e.g., an
                     27: #      INSTALL kernel used later in src/distrib/.
1.134     erh        28: #   CRYPTOPATH is automatically defined by bsd.crypto.mk to be either
                     29: #      ../crypto-us or ../crypto-intl.  It controls the building of
                     30: #      the secr set, which can be disabled by setting CRYPTOPATH to
                     31: #      "none".
1.96      cjs        32: #
                     33: # Targets:
                     34: #    distribution: makes a full NetBSD distribution in DESTDIR. If
                     35: #      INSTALL_DONE is set, it will not do a `make install.'
                     36: #    distrib-dirs: creates an empty NetBSD directory tree in DESTDIR.
                     37: #      Called by distribution.
                     38: #    snapshot: calls distribution, above, and then tars up the files
                     39: #      into a release(7) format in RELEASEDIR. Any port-dependent
                     40: #      stuff for this target is found in etc.${MACHINE}/Makefile.inc.
1.106     cjs        41: #    release: a synonym for `snapshot'
1.96      cjs        42:
1.134     erh        43: # For NO_SENDMAIL and INSTPRIV and CRYPTOPATH
1.90      kim        44: .include <bsd.own.mk>
1.134     erh        45: SRCTOP= ..
                     46: .include <bsd.crypto.mk>
1.90      kim        47:
1.23      cgd        48: TZDIR=         /usr/share/zoneinfo
1.90      kim        49: LOCALTIME?=    US/Pacific
1.19      deraadt    50:
1.55      perry      51: # setting NOOBJ prevents "make obj" from doing anything;
                     52: # an objdir would break the installation stuff below
1.101     lukem      53: MKOBJ= no
1.1       cgd        54:
1.80      jonathan   55: # MD Makefile.inc may append MD targets to BIN[123].  Make sure all
                     56: # are empty, to preserve the old semantics of setting them below with "=".
                     57: BIN1=
                     58: BIN2=
                     59: BIN3=
                     60:
1.117     simonb     61: # Directories to build in ${RELEASEDIR}.   MD Makefile.inc files can
                     62: # add to this.
                     63: # NOTE: Parent directories must be listed before subdirectories.
                     64: INSTALLATION_DIRS= \
                     65:        binary binary/sets binary/kernel binary/security installation
                     66:
1.71      cjs        67: .if exists(etc.${MACHINE}/Makefile.inc)
                     68: .include "etc.${MACHINE}/Makefile.inc"
                     69: .endif
1.32      jtc        70:
1.96      cjs        71: # Use multiple jobs for kernel builds, if NBUILDJOBS set.
                     72: # (Taken from src/Makefile.)
                     73: .if defined(NBUILDJOBS)
                     74: _J= -j${NBUILDJOBS}
                     75: .endif
                     76:
1.21      cgd        77: # -rw-r--r--
                     78: BINOWN= root
                     79: BINGRP= wheel
1.131     veego      80: BIN1+= bootptab changelist csh.cshrc csh.login csh.logout daily \
                     81:        daily.conf dm.conf floppytab ftpchroot ftpusers ftpwelcome \
                     82:        gettytab group hosts hosts.lpd inetd.conf lkm.conf \
                     83:        mailer.conf man.conf monthly monthly.conf mrouted.conf \
                     84:        netstart networks newsyslog.conf nsswitch.conf ntp.conf \
                     85:        phones printcap profile protocols rbootd.conf rc rc.conf \
                     86:        rc.lkm rc.local rc.subr rc.shutdown rc.wscons remote rpc \
                     87:        security security.conf services shells syslog.conf weekly \
                     88:        weekly.conf wscons.conf \
1.109     drochner   89:        etc.${MACHINE}/ttys etc.${MACHINE}/disktab
1.105     mycroft    90:
1.121     fvdl       91: .if    (${MACHINE_ARCH} == "m68k") || \
1.105     mycroft    92:        (${MACHINE_ARCH} == "ns32k") || \
                     93:        (${MACHINE_ARCH} == "vax") || \
                     94:        (${MACHINE_ARCH} == "arm32")
1.129     christos   95: BIN1+= ld.so.conf
                     96: .elif exists(etc.${MACHINE_ARCH}/ld.so.conf)
1.132     jlam       97: BIN1+= etc.${MACHINE_ARCH}/ld.so.conf
1.105     mycroft    98: .endif
1.120     itojun     99:
                    100: # IPv6
                    101: BIN1+= rtadvd.conf
1.1       cgd       102:
1.46      deraadt   103: # -rw-rw-r--
1.80      jonathan  104: BIN2+= motd
1.1       cgd       105:
1.77      mycroft   106: # -rw-------
1.80      jonathan  107: BIN3+= hosts.equiv
1.77      mycroft   108:
1.138     itojun    109: NAMEDB=        127 root.cache named.conf loopback.v6
1.1       cgd       110: PCS=   pcs750.bin
                    111:
1.88      lukem     112: all clean cleandir depend distclean etc includes install lint:
1.1       cgd       113:
1.34      cgd       114: .ifndef DESTDIR
1.106     cjs       115: distribution distrib-dirs release snapshot:
1.36      cgd       116:        @echo setenv DESTDIR before doing that!
1.34      cgd       117:        @false
                    118: .else
1.7       cgd       119: distribution: distrib-dirs
1.87      perry     120: .if !defined(INSTALL_DONE)
1.107     scottr    121:        (cd ..; ${MAKE} _DISTRIB= includes)
                    122:        (cd ..; ${MAKE} _DISTRIB= install)
1.87      perry     123: .endif
1.124     simonb    124:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 644 ${BIN1} \
                    125:            ${DESTDIR}/etc
                    126:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 664 ${BIN2} \
                    127:            ${DESTDIR}/etc
                    128:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 600 ${BIN3} \
                    129:            ${DESTDIR}/etc
                    130:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 644 aliases \
                    131:            ${DESTDIR}/etc
                    132:        ${INSTALL} ${INSTPRIV} -c -o root -g wheel -m 600 crontab \
1.56      thorpej   133:            ${DESTDIR}/var/cron/tabs/root
1.124     simonb    134:        ${INSTALL} ${INSTPRIV} -c -o root -g wheel -m 600 master.passwd \
                    135:            ${DESTDIR}/etc
1.68      perry     136:        pwd_mkdb -p -d ${DESTDIR}/ ${DESTDIR}/etc/master.passwd
1.124     simonb    137:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 555 \
1.1       cgd       138:             MAKEDEV.local etc.${MACHINE}/MAKEDEV ${DESTDIR}/dev
1.124     simonb    139:        ${INSTALL} ${INSTPRIV} -c -o root -g wheel -m 600 minfree \
1.73      perry     140:            ${DESTDIR}/var/crash
1.1       cgd       141:        (cd root; \
1.124     simonb    142:                ${INSTALL} ${INSTPRIV} -c -o root -g wheel -m 644 dot.cshrc \
1.1       cgd       143:                    ${DESTDIR}/root/.cshrc; \
1.124     simonb    144:                ${INSTALL} ${INSTPRIV} -c -o root -g wheel -m 600 dot.klogin \
1.1       cgd       145:                    ${DESTDIR}/root/.klogin; \
1.124     simonb    146:                ${INSTALL} ${INSTPRIV} -c -o root -g wheel -m 644 dot.login \
1.1       cgd       147:                    ${DESTDIR}/root/.login; \
1.124     simonb    148:                ${INSTALL} ${INSTPRIV} -c -o root -g wheel -m 644 dot.profile \
1.1       cgd       149:                    ${DESTDIR}/root/.profile; \
1.128     mycroft   150:                ${INSTALL} ${INSTPRIV} -c -o root -g wheel -m 644 dot.shrc \
                    151:                    ${DESTDIR}/root/.shrc; \
1.1       cgd       152:                rm -f ${DESTDIR}/.cshrc ${DESTDIR}/.profile; \
                    153:                ln ${DESTDIR}/root/.cshrc ${DESTDIR}/.cshrc; \
                    154:                ln ${DESTDIR}/root/.profile ${DESTDIR}/.profile)
1.83      mrg       155:        (cd mtree; ${MAKE} install)
1.63      mikel     156:        (cd namedb; \
1.124     simonb    157:                ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 644 \
                    158:                    ${NAMEDB} ${DESTDIR}/etc/namedb)
1.140     lukem     159:        (cd rc.d; ${MAKE} install)
1.19      deraadt   160:        /bin/rm -f ${DESTDIR}/etc/localtime
                    161:        ln -s ${TZDIR}/${LOCALTIME} ${DESTDIR}/etc/localtime
1.48      deraadt   162:        /bin/rm -f ${DESTDIR}/etc/rmt
                    163:        ln -s /usr/sbin/rmt ${DESTDIR}/etc/rmt
1.124     simonb    164:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g operator -m 664 /dev/null \
1.32      jtc       165:                ${DESTDIR}/etc/dumpdates
1.124     simonb    166:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g operator -m 600 /dev/null \
1.44      deraadt   167:                ${DESTDIR}/etc/skeykeys
1.127     perry     168:        ${INSTALL} ${INSTPRIV} -c -o root -g wheel -m 600 /dev/null \
                    169:                ${DESTDIR}/var/at/at.deny
1.124     simonb    170:        ${INSTALL} ${INSTPRIV} -c -o root -g wheel -m 600 /dev/null \
1.38      cgd       171:                ${DESTDIR}/var/cron/log
1.124     simonb    172:        ${INSTALL} ${INSTPRIV} -c -o nobody -g ${BINGRP} -m 664 /dev/null \
1.32      jtc       173:                ${DESTDIR}/var/db/locate.database
1.124     simonb    174:        ${INSTALL} ${INSTPRIV} -c -o uucp -g dialer -m 640 /dev/null \
1.113     fair      175:                ${DESTDIR}/var/log/aculog
1.124     simonb    176:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 600 /dev/null \
1.69      perry     177:                ${DESTDIR}/var/log/authlog
1.124     simonb    178:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 664 /dev/null \
1.32      jtc       179:                ${DESTDIR}/var/log/lastlog
1.124     simonb    180:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 640 /dev/null \
1.32      jtc       181:                ${DESTDIR}/var/log/lpd-errs
1.124     simonb    182:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 600 /dev/null \
1.32      jtc       183:                ${DESTDIR}/var/log/maillog
1.124     simonb    184:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \
1.32      jtc       185:                ${DESTDIR}/var/log/messages
1.124     simonb    186:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 600 /dev/null \
1.58      lukem     187:                ${DESTDIR}/var/log/secure
1.137     mycroft   188:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \
                    189:                ${DESTDIR}/var/log/sendmail.st
1.124     simonb    190:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \
1.32      jtc       191:                ${DESTDIR}/var/log/wtmp
1.124     simonb    192:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 600 /dev/null \
1.69      perry     193:                ${DESTDIR}/var/log/xferlog
1.124     simonb    194:        ${INSTALL} ${INSTPRIV} -c -o daemon -g staff -m 664 /dev/null \
1.39      cgd       195:                ${DESTDIR}/var/msgs/bounds
1.124     simonb    196:        ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} -g ${BINGRP} -m 664 /dev/null \
1.32      jtc       197:                ${DESTDIR}/var/run/utmp
1.124     simonb    198:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       199:                ${DESTDIR}/var/games/atc_scores
1.124     simonb    200:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       201:                ${DESTDIR}/var/games/battlestar.log
1.124     simonb    202:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       203:                ${DESTDIR}/var/games/cfscores
1.124     simonb    204:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.82      perry     205:                ${DESTDIR}/var/games/criblog
1.124     simonb    206:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       207:                ${DESTDIR}/var/games/robots_roll
1.124     simonb    208:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       209:                ${DESTDIR}/var/games/rogue.scores
1.124     simonb    210:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       211:                ${DESTDIR}/var/games/saillog
1.124     simonb    212:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       213:                ${DESTDIR}/var/games/snakerawscores
1.124     simonb    214:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       215:                ${DESTDIR}/var/games/snake.log
1.124     simonb    216:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       217:                ${DESTDIR}/var/games/tetris.scores
1.124     simonb    218:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       219:                ${DESTDIR}/var/games/larn/llog12.0
1.124     simonb    220:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       221:                ${DESTDIR}/var/games/larn/lscore12.0
1.124     simonb    222:        ${INSTALL} ${INSTPRIV} -c -o games -g games -m 664 /dev/null \
1.81      mrg       223:                ${DESTDIR}/var/games/larn/playerids
1.124     simonb    224:        (cd etc.${MACHINE}; ${INSTALL} ${INSTPRIV} -c -o ${BINOWN} \
                    225:            -g ${BINGRP} -m 444 fstab.* ${DESTDIR}/etc)
1.49      tls       226:        (cd ${DESTDIR}/dev; ./MAKEDEV all)
1.62      perry     227:        (cd ../usr.bin/mail; ${MAKE} distribution)
1.90      kim       228: .ifndef NO_SENDMAIL
1.133     tron      229:        (cd ../gnu/usr.sbin/sendmail/cf/cf; ${MAKE} distribution)
1.139     joda      230:        ${DESTDIR}/usr/libexec/sendmail/sendmail -C ${DESTDIR}/etc/sendmail.cf -O AliasFile=${DESTDIR}/etc/aliases -O DontBlameSendmail=groupwritabledirpathsafe -bi
1.90      kim       231: .endif
1.112     perry     232: .ifdef BUILD_POSTFIX
1.110     mrg       233:        (cd ../usr.sbin/postfix/etc; ${MAKE} distribution)
1.111     simonb    234: .endif
1.1       cgd       235:
                    236:
1.7       cgd       237: distrib-dirs:
1.124     simonb    238:        ${INSTALL} ${INSTPRIV} -d -o root -g wheel -m 755 ${DESTDIR}
1.67      perry     239:        -mtree -def mtree/NetBSD.dist -p ${DESTDIR}/ -u
1.28      jtc       240:        cd ${DESTDIR}; rm -f sys; ln -s usr/src/sys sys
1.99      cjs       241:
1.96      cjs       242: .if !defined(RELEASEDIR)
1.117     simonb    243: release snapshot snap_pre snap_md_pre snap_md_post:
1.96      cjs       244:        @echo setenv RELEASEDIR before doing that!
                    245:        @false
                    246: .else
1.117     simonb    247: release snapshot: distribution snap_pre snap_md_pre snap_kern snap_md_post
1.141   ! thorpej   248:        (cd ../distrib/sets; ${MAKE} sets)
1.123     is        249:        sh ../distrib/sets/makesums -t ${RELEASEDIR}/binary/kernel '*.gz'
1.141   ! thorpej   250:
        !           251: cryptoset: distribution snap_pre snap_md_pre snap_kern snap_md_post
        !           252:        (cd ../distrib/sets; ${MAKE} cryptoset)
1.41      cgd       253:
                    254: snap_pre:
1.96      cjs       255:        /bin/rm -rf ${RELEASEDIR}
1.124     simonb    256:        ${INSTALL} ${INSTPRIV} -d -o root -g wheel -m 755 ${RELEASEDIR}
1.117     simonb    257: .for dir in ${INSTALLATION_DIRS}
1.124     simonb    258:        ${INSTALL} ${INSTPRIV} -d -o root -g wheel -m 755 ${RELEASEDIR}/${dir}
1.117     simonb    259: .endfor
1.96      cjs       260:
                    261: # the regular expression does a basename(1) on .CURDIR so that we don't
                    262: # have to keep looking up .. at compile time.
                    263: KERNSRCDIR?=   ${.CURDIR:C/[^\/]+$//}sys
                    264: KERNOBJDIR?=   ${KERNSRCDIR}/arch/${MACHINE}/compile
                    265: KERNCONFDIR?=  ${KERNSRCDIR}/arch/${MACHINE}/conf
                    266:
                    267: # This target builds the GENERIC kernel (which must exist for all
                    268: # ports) and puts it in binary/sets/kern.tgz, and also builds any
1.114     fair      269: # kernels specified in EXTRA_KERNELS. Since NetBSD's kernel build
                    270: # system can create more than one kernel from a single configuration
                    271: # we figure out how many there are, what they're named, and move them
                    272: # to binary/kernel/${KERNEL}.${CONFIGFILE}.gz - most often KERNEL will
1.116     fair      273: # simply be "netbsd". If we don't find the "config" line, assume the
                    274: # kernel will be "netbsd" (some config files are simple additions on
                    275: # GENERIC, and just include it).
                    276: #
                    277: GETKERNELAWK=  awk '/^config/ {print $$2; found=1} \
                    278:                END{ if (found == 0) print "netbsd"; }'
1.96      cjs       279: #
1.118     gwr       280: .if !target(snap_kern)
1.96      cjs       281: snap_kern:
1.135     mycroft   282: .for configfile in GENERIC ${EXTRA_KERNELS} ${BUILD_KERNELS}
1.125     sommerfe  283:        cd ${KERNCONFDIR} && ${CONFIG} \
1.135     mycroft   284:                -b ${KERNOBJDIR}/${configfile} -s ${KERNSRCDIR} ${configfile}
1.97      cjs       285: .ifndef UPDATE
1.135     mycroft   286:        cd ${KERNOBJDIR}/${configfile} && ${MAKE} clean
1.96      cjs       287: .endif
1.135     mycroft   288:        cd ${KERNOBJDIR}/${configfile} && ${MAKE} depend && ${MAKE} ${_J}
                    289: .endfor # kernels
1.96      cjs       290:        cd ${KERNOBJDIR}/GENERIC &&     \
1.116     fair      291:                tar cf - `${GETKERNELAWK} ${KERNCONFDIR}/GENERIC` |\
1.96      cjs       292:                gzip -c -9 > ${RELEASEDIR}/binary/sets/kern.tgz
1.135     mycroft   293: .for configfile in GENERIC ${EXTRA_KERNELS}
1.114     fair      294:        cd ${KERNOBJDIR}/${configfile} &&       \
1.116     fair      295:                for kernel in `${GETKERNELAWK} \
1.114     fair      296:                        ${KERNCONFDIR}/${configfile}` ; {   \
                    297:                gzip -c -9 < $${kernel} > \
                    298:                        ${RELEASEDIR}/binary/kernel/$${kernel}.${configfile}.gz ; }
1.96      cjs       299: .endfor # EXTRA_KERNELS
1.118     gwr       300: .endif # no target(snap_kern)
1.108     drochner  301:
1.96      cjs       302: .endif # RELEASEDIR check
1.41      cgd       303:
1.117     simonb    304: snap_md_pre:
                    305: # nothing here -- look in the machine-dependent Makefile.inc
                    306:
                    307: snap_md_post:
1.41      cgd       308: # nothing here -- look in the machine-dependent Makefile.inc
                    309:
1.34      cgd       310: .endif # DESTDIR check
1.7       cgd       311:
1.1       cgd       312: .include <bsd.prog.mk>

CVSweb <webmaster@jp.NetBSD.org>