2 # $Id: Makefile,v 1.15 1994/09/03 02:38:28 paul Exp $
4 # Make command line options:
5 # -DCLOBBER will remove /usr/include and MOST of /usr/lib
6 # -DMAKE_LOCAL to add ./local to the SUBDIR list
7 # -DMAKE_PORTS to add ./ports to the SUBDIR list
8 # -DNOCLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir
9 # -DNOCRYPT will prevent building of crypt versions
10 # XXX2 -DNOKERBEROS do not build Kerberos
11 # -DNOOBJDIR do not run ``${MAKE} obj''
12 # -DNOPROFILE do not build profiled libraries
13 # -DNOSECURE do not go into secure subdir
14 # -DNOEBONES do not make eBones (kerberosIV)
16 # XXX2 Mandatory, and Kerberos will not build sucessfully yet
18 # Put initial settings here.
43 .if exists(kerberosIV) && !defined(NOCRYPT) && !defined(NOKERBEROS)
46 .if exists(eBones) && !defined(NOCRYPT) && defined(NOKERBEROS) \
56 .if exists(secure) && !defined(NOCRYPT) && !defined(NOSECURE)
72 # These are last, since it is nice to at least get the base system
73 # rebuilt before you do them.
74 .if defined(MAKE_LOCAL) & exists(local) & exists(local/Makefile)
77 .if defined(MAKE_PORTS) & exists(ports) & exists(ports/Makefile)
81 # Handle the -DNOOBJDIR and -DNOCLEANDIR
87 .if defined(NOCLEANDIR)
93 world: directories cleandist mk includes libraries tools
94 @echo "--------------------------------------------------------------"
95 @echo " Rebuilding ${DESTDIR} The whole thing"
96 @echo "--------------------------------------------------------------"
98 ${MAKE} depend all install
99 cd ${.CURDIR}/share/man && ${MAKE} makedb
103 @echo "--------------------------------------------------------------"
104 @echo " Making directories"
105 @echo "--------------------------------------------------------------"
106 cd ${.CURDIR}/etc && ${MAKE} distrib-dirs
109 .if defined(SUP_UPDATE)
110 @echo "--------------------------------------------------------------"
112 @echo "--------------------------------------------------------------"
115 .if defined(CVS_UPDATE)
116 @echo "--------------------------------------------------------------"
117 @echo "Updating /usr/src from cvs repository" ${CVSROOT}
118 @echo "--------------------------------------------------------------"
119 cd ${.CURDIR} && cvs update -P -d
123 .if !defined(NOCLEANDIR)
124 @echo "--------------------------------------------------------------"
125 @echo " Cleaning up the source tree, and rebuilding the obj tree"
126 @echo "--------------------------------------------------------------"
128 here=`pwd`; dest=/usr/obj`echo $$here | sed 's,^/usr/src,,'`; \
129 if test -d /usr/obj -a ! -d $$dest; then \
134 cd $$dest && rm -rf ${SUBDIR}
135 find . -name obj | xargs rm -rf
136 .if defined(MAKE_LOCAL) & exists(local) & exists(local/Makefile)
137 # The cd is done as local may well be a symbolic link
138 -cd local && find . -name obj | xargs rm -rf
140 .if defined(MAKE_PORTS) & exists(ports) & exists(ports/Makefile)
141 # The cd is done as local may well be a symbolic link
142 -cd ports && find . -name obj | xargs rm -rf
149 @echo "--------------------------------------------------------------"
150 @echo " Rebuilding ${DESTDIR}/usr/share/mk"
151 @echo "--------------------------------------------------------------"
152 cd ${.CURDIR}/share/mk && ${MAKE} install
155 @echo "--------------------------------------------------------------"
156 @echo " Rebuilding ${DESTDIR}/usr/include"
157 @echo "--------------------------------------------------------------"
160 rm -rf ${DESTDIR}/usr/include
161 mkdir ${DESTDIR}/usr/include
162 chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include
163 chmod 755 ${DESTDIR}/usr/include
165 cd ${.CURDIR}/include && ${MAKE} install
166 #XXX cd ${.CURDIR}/gnu/lib/libg++ && ${MAKE} beforeinstall
167 #XXX cd ${.CURDIR}/gnu/usr.bin/cc/libobjc && ${MAKE} beforeinstall
168 .if exists(kerberosIV) && !defined(NOCRYPT) && !defined(NOKERBEROS)
169 cd ${.CURDIR}/kerberosIV/include && ${MAKE} install
171 cd ${.CURDIR}/lib/libc && ${MAKE} beforeinstall
172 cd ${.CURDIR}/lib/libcurses && ${MAKE} beforeinstall
173 cd ${.CURDIR}/lib/libedit && ${MAKE} beforeinstall
174 cd ${.CURDIR}/lib/librpcsvc && ${MAKE} beforeinstall
175 .if exists(eBones) && !defined(NOCRYPT) && defined(NOKERBEROS) && \
177 cd ${.CURDIR}/eBones/include && ${MAKE} beforeinstall
181 @echo "--------------------------------------------------------------"
182 @echo " Rebuilding ${DESTDIR}/usr/lib"
183 @echo "--------------------------------------------------------------"
186 find ${DESTDIR}/usr/lib \! -name '*.s[ao].*' -a \! -type d | \
189 cd ${.CURDIR}/gnu/lib && \
190 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
191 cd ${.CURDIR}/gnu/usr.bin/cc/libgcc && \
192 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
193 .if exists(secure) && !defined(NOCRYPT) && !defined(NOSECURE)
194 cd ${.CURDIR}/secure/lib && \
195 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
198 cd ${.CURDIR}/lib && \
199 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
201 cd ${.CURDIR}/usr.bin/lex/lib && \
202 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
203 .if exists(kerberosIV) && !defined(NOCRYPT) && !defined(NOKERBEROS)
204 cd ${.CURDIR}/kerberosIV/acl && \
205 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
206 cd ${.CURDIR}/kerberosIV/des && \
207 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
208 cd ${.CURDIR}/kerberosIV/kdb && \
209 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
210 cd ${.CURDIR}/kerberosIV/krb && \
211 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
213 .if exists(eBones) && !defined(NOCRYPT) && defined(NOKERBEROS) && \
215 cd ${.CURDIR}/eBones/des && \
216 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
217 cd ${.CURDIR}/eBones/acl && \
218 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
219 cd ${.CURDIR}/eBones/kdb && \
220 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
221 cd ${.CURDIR}/eBones/krb && \
222 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
226 @echo "--------------------------------------------------------------"
227 @echo " Rebuilding ${DESTDIR} Compiler and Make"
228 @echo "--------------------------------------------------------------"
230 cd ${.CURDIR}/gnu/usr.bin/cc && \
231 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
232 cd ${.CURDIR}/usr.bin/make && \
233 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
235 .include <bsd.subdir.mk>