Makefile revision 88a49676
188a49676Stron# $NetBSD: Makefile,v 1.23 2001/04/09 22:41:10 tron Exp $ 23cbc2fa9Smrg# 3b1c0e358Sfredb# Targets & Variables 4b1c0e358Sfredb# 5b1c0e358Sfredb# build: Clean out xsrc, and build and install everything that goes 6b1c0e358Sfredb# under /usr/X11R6. 7b1c0e358Sfredb# 8b1c0e358Sfredb# DESTDIR -- Set to an alternative directory to install under. 9b1c0e358Sfredb# UPDATE -- If set, don't make clean first, plus attempt to make 10b1c0e358Sfredb# only the targets that are out of date. 11b1c0e358Sfredb# 12b1c0e358Sfredb# release snapshot: Same as build, plus tar up the X sets and install 13b1c0e358Sfredb# them under the ${RELEASEDIR}/binary/sets directory. 14b1c0e358Sfredb# 15b1c0e358Sfredb# DESTDIR -- Same as for build. Mandatory for building a release. 16b1c0e358Sfredb# RELEASEDIR -- As explained above. 17b1c0e358Sfredb# BUILD_DONE -- If set, assume build is already done. 18b1c0e358Sfredb# INSTALL_DONE -- If set, assume binaries to tar up are to be found 19b1c0e358Sfredb# in ${DESTDIR} already. 20b1c0e358Sfredb# BSDSRCDIR -- Set to the full path to the main source tree, /usr/src 21b1c0e358Sfredb# by default. Needed to find ./distrib/sets. 22b1c0e358Sfredb# 23b1c0e358Sfredb# cleandir distclean: Remove all generated files from under xsrc. 24b1c0e358Sfredb# 25b1c0e358Sfredb# clean: Remove object files, but keep imake generated makefiles. 26b1c0e358Sfredb 2719cf06cfShubertf.include <bsd.own.mk> 2819cf06cfShubertf 292acc5bd1Stron.if defined(USE_XF86_4) 302acc5bd1StronXCDIR= xfree/xc 312acc5bd1Stron.else 322acc5bd1StronXCDIR= xc 332acc5bd1Stron.endif 342acc5bd1Stron 35a63b1a70Sfredb.MAIN: all 36456141b6Sthorpejall: all-xc all-contrib all-local 37b583040eStv 38b583040eStvall-xc: 392acc5bd1Stron.if exists(${XCDIR}/xmakefile) && defined(UPDATE) 402acc5bd1Stron @cd ${XCDIR} && ${MAKE} Everything 41b583040eStv.else 422acc5bd1Stron @-rm -f ${XCDIR}/xmakefile 432acc5bd1Stron @cd ${XCDIR} && ${MAKE} World 44b583040eStv.endif 453cbc2fa9Smrg 463cbc2fa9Smrgall-contrib: 47f766d8bfSfredb @if [ ! -f contrib/Makefile ]; then \ 482acc5bd1Stron cd contrib && PATH=../${XCDIR}/config/imake:$$PATH \ 4988a49676Stron sh ../${XCDIR}/config/util/xmkmf -a ../${XCDIR} \ 5088a49676Stron ${.CURDIR}/contrib; \ 51f766d8bfSfredb fi 52b583040eStv @cd contrib && ${MAKE} 533cbc2fa9Smrg 54456141b6Sthorpejall-local: 55456141b6Sthorpej @if [ ! -f local/Makefile ]; then \ 562acc5bd1Stron cd local && PATH=../${XCDIR}/config/imake:$$PATH \ 5788a49676Stron sh ../${XCDIR}/config/util/xmkmf -a ../${XCDIR} \ 5888a49676Stron ${.CURDIR}/local; \ 59456141b6Sthorpej fi 60456141b6Sthorpej @cd local && ${MAKE} 61456141b6Sthorpej 62456141b6Sthorpejinstall: install-xc install-contrib install-local 633cbc2fa9Smrg 643cbc2fa9Smrginstall-xc: 652acc5bd1Stron @cd ${XCDIR} && ${MAKE} install && ${MAKE} install.man 663cbc2fa9Smrg 673cbc2fa9Smrginstall-contrib: 68b583040eStv @cd contrib && ${MAKE} install && ${MAKE} install.man 695c5d6177Smrg 70456141b6Sthorpejinstall-local: 71456141b6Sthorpej @cd local && ${MAKE} install && ${MAKE} install.man 72456141b6Sthorpej 737e6ae19cStronclean: 742acc5bd1Stron @-cd ${XCDIR} && ${MAKE} clean 75b583040eStv @-cd contrib && ${MAKE} clean 7695c20adcStron @-cd local && ${MAKE} clean 7790360741Stv 7834e496fbSfredbcleandir distclean: clean 792acc5bd1Stron find ${XCDIR} contrib local -name .depend | xargs rm 802acc5bd1Stron find ${XCDIR} contrib local -name 'Makefile*' | \ 817c7a996aSsimonb xargs grep -l "Makefile generated by imake" | xargs rm 822acc5bd1Stron -rmdir ${XCDIR}/exports 832acc5bd1Stron rm -f ${XCDIR}/xmakefile 847e6ae19cStron 8590360741Stvbuild: 8634e496fbSfredb.if defined(UPDATE) 8790360741Stv @${MAKE} all install 8834e496fbSfredb.else 8934e496fbSfredb @${MAKE} cleandir all install 9034e496fbSfredb.endif 91b1c0e358Sfredb 92b1c0e358Sfredb# release goo 93b1c0e358Sfredb# 94b1c0e358Sfredb.if !defined(DESTDIR) 95b1c0e358Sfredbrelease snapshot: 96b1c0e358Sfredb @echo setenv DESTDIR before doing that! 97b1c0e358Sfredb @false 98b1c0e358Sfredb.elif !defined(RELEASEDIR) 99b1c0e358Sfredbrelease snapshot: 100b1c0e358Sfredb @echo setenv RELEASEDIR before doing that! 101b1c0e358Sfredb @false 102b1c0e358Sfredb# 103b1c0e358Sfredb.else 104b1c0e358Sfredb# 105b1c0e358Sfredb.if defined(INSTALL_DONE) 106b1c0e358Sfredbrelease snapshot: 107b1c0e358Sfredb.elif defined(BUILD_DONE) 108b1c0e358Sfredbrelease snapshot: install 109b1c0e358Sfredb.else 110b1c0e358Sfredbrelease snapshot: build 111b1c0e358Sfredb# 112b1c0e358Sfredb.endif # INSTALL_DONE or BUILD_DONE 113b1c0e358Sfredb# 114b1c0e358Sfredb ${INSTALL} -d -m 755 -o root -g wheel ${RELEASEDIR}/binary/sets 115761ef8e1Sis.if ${MACHINE} == "amiga" 1162acc5bd1Stron cd ${XCDIR}/programs/Xserver/hw/netbsd/amiga && \ 11799e715b7Sis ${INSTALL} -c -m 644 INSTALL.X11 ${RELEASEDIR} 118761ef8e1Sis.endif 119231ff5f5Sfredb sh ${BSDSRCDIR}/distrib/sets/maketars -x -s ${BSDSRCDIR}/distrib/sets \ 120b1c0e358Sfredb -d ${DESTDIR} -t ${RELEASEDIR}/binary/sets 121b1c0e358Sfredb cd ${RELEASEDIR}/binary/sets && \ 122b1c0e358Sfredb cksum -o 1 *.tgz >BSDSUM && \ 123b1c0e358Sfredb cksum *.tgz >CKSUM && \ 124b1c0e358Sfredb cksum -m *.tgz >MD5 && \ 125b1c0e358Sfredb cksum -o 2 *.tgz >SYSVSUM 126b1c0e358Sfredb# 127e99d7581Sfredb.endif # DESTDIR and RELEASEDIR check 128