1 1.18 is # $NetBSD: Makefile,v 1.18 2000/10/30 21:26:00 is Exp $ 2 1.1 mrg # 3 1.9 fredb # Targets & Variables 4 1.9 fredb # 5 1.9 fredb # build: Clean out xsrc, and build and install everything that goes 6 1.9 fredb # under /usr/X11R6. 7 1.9 fredb # 8 1.9 fredb # DESTDIR -- Set to an alternative directory to install under. 9 1.9 fredb # UPDATE -- If set, don't make clean first, plus attempt to make 10 1.9 fredb # only the targets that are out of date. 11 1.9 fredb # 12 1.9 fredb # release snapshot: Same as build, plus tar up the X sets and install 13 1.9 fredb # them under the ${RELEASEDIR}/binary/sets directory. 14 1.9 fredb # 15 1.9 fredb # DESTDIR -- Same as for build. Mandatory for building a release. 16 1.9 fredb # RELEASEDIR -- As explained above. 17 1.9 fredb # BUILD_DONE -- If set, assume build is already done. 18 1.9 fredb # INSTALL_DONE -- If set, assume binaries to tar up are to be found 19 1.9 fredb # in ${DESTDIR} already. 20 1.9 fredb # BSDSRCDIR -- Set to the full path to the main source tree, /usr/src 21 1.9 fredb # by default. Needed to find ./distrib/sets. 22 1.9 fredb # 23 1.9 fredb # cleandir distclean: Remove all generated files from under xsrc. 24 1.9 fredb # 25 1.9 fredb # clean: Remove object files, but keep imake generated makefiles. 26 1.9 fredb 27 1.12 hubertf .include <bsd.own.mk> 28 1.12 hubertf 29 1.1 mrg 30 1.15 thorpej all: all-xc all-contrib all-local 31 1.4 tv 32 1.4 tv all-xc: 33 1.7 fredb .if exists(xc/xmakefile) && defined(UPDATE) 34 1.7 fredb @cd xc && ${MAKE} Everything 35 1.4 tv .else 36 1.7 fredb @-rm -f xc/xmakefile 37 1.4 tv @cd xc && ${MAKE} World 38 1.4 tv .endif 39 1.1 mrg 40 1.1 mrg all-contrib: 41 1.8 fredb @if [ ! -f contrib/Makefile ]; then \ 42 1.8 fredb cd contrib && PATH=../xc/config/imake:$$PATH \ 43 1.8 fredb sh ../xc/config/util/xmkmf -a ../xc ../contrib; \ 44 1.8 fredb fi 45 1.4 tv @cd contrib && ${MAKE} 46 1.1 mrg 47 1.15 thorpej all-local: 48 1.15 thorpej @if [ ! -f local/Makefile ]; then \ 49 1.15 thorpej cd local && PATH=../xc/config/imake:$$PATH \ 50 1.15 thorpej sh ../xc/config/util/xmkmf -a ../xc ../local; \ 51 1.15 thorpej fi 52 1.15 thorpej @cd local && ${MAKE} 53 1.15 thorpej 54 1.15 thorpej install: install-xc install-contrib install-local 55 1.1 mrg 56 1.1 mrg install-xc: 57 1.4 tv @cd xc && ${MAKE} install && ${MAKE} install.man 58 1.1 mrg 59 1.1 mrg install-contrib: 60 1.4 tv @cd contrib && ${MAKE} install && ${MAKE} install.man 61 1.15 thorpej 62 1.15 thorpej install-local: 63 1.15 thorpej @cd local && ${MAKE} install && ${MAKE} install.man 64 1.3 mrg 65 1.6 tron clean: 66 1.7 fredb @-cd xc && ${MAKE} clean 67 1.4 tv @-cd contrib && ${MAKE} clean 68 1.16 tron @-cd local && ${MAKE} clean 69 1.6 tron 70 1.7 fredb cleandir distclean: clean 71 1.16 tron find xc contrib local -name .depend | xargs rm 72 1.16 tron find xc contrib local -name 'Makefile*' | \ 73 1.17 simonb xargs grep -l "Makefile generated by imake" | xargs rm 74 1.6 tron -rmdir xc/exports 75 1.6 tron rm -f xc/xmakefile 76 1.5 tv 77 1.5 tv build: 78 1.7 fredb .if defined(UPDATE) 79 1.7 fredb @${MAKE} all install 80 1.7 fredb .else 81 1.7 fredb @${MAKE} cleandir all install 82 1.5 tv .endif 83 1.9 fredb 84 1.9 fredb # release goo 85 1.9 fredb # 86 1.9 fredb .if !defined(DESTDIR) 87 1.9 fredb release snapshot: 88 1.9 fredb @echo setenv DESTDIR before doing that! 89 1.9 fredb @false 90 1.9 fredb .elif !defined(RELEASEDIR) 91 1.9 fredb release snapshot: 92 1.9 fredb @echo setenv RELEASEDIR before doing that! 93 1.9 fredb @false 94 1.9 fredb # 95 1.9 fredb .else 96 1.9 fredb # 97 1.9 fredb .if defined(INSTALL_DONE) 98 1.9 fredb release snapshot: 99 1.9 fredb .elif defined(BUILD_DONE) 100 1.9 fredb release snapshot: install 101 1.9 fredb .else 102 1.9 fredb release snapshot: build 103 1.9 fredb # 104 1.9 fredb .endif # INSTALL_DONE or BUILD_DONE 105 1.9 fredb # 106 1.9 fredb ${INSTALL} -d -m 755 -o root -g wheel ${RELEASEDIR}/binary/sets 107 1.18 is .if ${MACHINE} == "amiga" 108 1.18 is cd xc/programs/Xserver/hw/netbsd/amiga && \ 109 1.18 is ${INSTALL} -m 644 INSTALL.X11 ${RELEASEDIR} 110 1.18 is .endif 111 1.11 fredb sh ${BSDSRCDIR}/distrib/sets/maketars -x -s ${BSDSRCDIR}/distrib/sets \ 112 1.9 fredb -d ${DESTDIR} -t ${RELEASEDIR}/binary/sets 113 1.9 fredb cd ${RELEASEDIR}/binary/sets && \ 114 1.9 fredb cksum -o 1 *.tgz >BSDSUM && \ 115 1.9 fredb cksum *.tgz >CKSUM && \ 116 1.9 fredb cksum -m *.tgz >MD5 && \ 117 1.9 fredb cksum -o 2 *.tgz >SYSVSUM 118 1.9 fredb # 119 1.13 fredb .endif # DESTDIR and RELEASEDIR check 120 1.9 fredb 121