Deleted Added
full compact
1#
2# $Id: Makefile,v 1.14 1994/08/26 20:44:12 paul Exp $
2# $Id: Makefile,v 1.15 1994/09/03 02:38:28 paul Exp $
3#
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)
15#
16# XXX2 Mandatory, and Kerberos will not build sucessfully yet
17
18# Put initial settings here.
19NOKERBEROS= yes
20SUBDIR=
21
22.if exists(bin)
23SUBDIR+= bin
24.endif
25.if exists(contrib)
26SUBDIR+= contrib
27.endif
28.if exists(etc)
29SUBDIR+= etc
30.endif
31.if exists(games)
32SUBDIR+= games
33.endif
34.if exists(gnu)
35SUBDIR+= gnu
36.endif
37.if exists(include)
38SUBDIR+= include
39.endif
40.if exists(lib)
41SUBDIR+= lib
42.endif
43.if exists(kerberosIV) && !defined(NOCRYPT) && !defined(NOKERBEROS)
44SUBDIR+= kerberosIV
45.endif
46.if exists(eBones) && !defined(NOCRYPT) && defined(NOKERBEROS) \
47 && !defined(NOEBONES)
48SUBDIR+= eBones
49.endif
50.if exists(libexec)
51SUBDIR+= libexec
52.endif
53.if exists(sbin)
54SUBDIR+= sbin
55.endif
56.if exists(secure) && !defined(NOCRYPT) && !defined(NOSECURE)
57SUBDIR+= secure
58.endif
59.if exists(share)
60SUBDIR+= share
61.endif
62.if exists(sys)
63SUBDIR+= sys
64.endif
65.if exists(usr.bin)
66SUBDIR+= usr.bin
67.endif
68.if exists(usr.sbin)
69SUBDIR+= usr.sbin
70.endif
71
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)
75SUBDIR+= local
76.endif
77.if defined(MAKE_PORTS) & exists(ports) & exists(ports/Makefile)
78SUBDIR+= ports
79.endif
80
81# Handle the -DNOOBJDIR and -DNOCLEANDIR
82.if defined(NOOBJDIR)
83OBJDIR=
84.else
85OBJDIR= obj
86.endif
87.if defined(NOCLEANDIR)
88CLEANDIR= clean
89.else
90CLEANDIR= cleandir
91.endif
92
93world: directories cleandist mk includes libraries tools
94 @echo "--------------------------------------------------------------"
95 @echo " Rebuilding ${DESTDIR} The whole thing"
96 @echo "--------------------------------------------------------------"
97 @echo
98 ${MAKE} depend all install
99 cd ${.CURDIR}/share/man && ${MAKE} makedb
100
101
102directories:
103 @echo "--------------------------------------------------------------"
104 @echo " Making directories"
105 @echo "--------------------------------------------------------------"
106 cd ${.CURDIR}/etc && ${MAKE} distrib-dirs
107
108update:
109.if defined(SUP_UPDATE)
110 @echo "--------------------------------------------------------------"
111 @echo "Running sup"
112 @echo "--------------------------------------------------------------"
113 @sup -v ${SUPFILE}
114.endif
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
120.endif
121
122cleandist:
123.if !defined(NOCLEANDIR)
124 @echo "--------------------------------------------------------------"
125 @echo " Cleaning up the source tree, and rebuilding the obj tree"
126 @echo "--------------------------------------------------------------"
127 @echo
128 here=`pwd`; dest=/usr/obj`echo $$here | sed 's,^/usr/src,,'`; \
129 if test -d /usr/obj -a ! -d $$dest; then \
130 mkdir -p $$dest; \
131 else \
132 true; \
133 fi; \
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
139.endif
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
143.endif
144 ${MAKE} cleandir
145 ${MAKE} obj
146.endif
147
148mk:
149 @echo "--------------------------------------------------------------"
150 @echo " Rebuilding ${DESTDIR}/usr/share/mk"
151 @echo "--------------------------------------------------------------"
152 cd ${.CURDIR}/share/mk && ${MAKE} install
153
154includes:
155 @echo "--------------------------------------------------------------"
156 @echo " Rebuilding ${DESTDIR}/usr/include"
157 @echo "--------------------------------------------------------------"
158 @echo
159.if defined(CLOBBER)
160 rm -rf ${DESTDIR}/usr/include
161 mkdir ${DESTDIR}/usr/include
162 chown ${BINOWN}.${BINGRP} ${DESTDIR}/usr/include
163 chmod 755 ${DESTDIR}/usr/include
164.endif
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
163.if !defined(NOCRYPT) && !defined(NOKERBEROS)
168.if exists(kerberosIV) && !defined(NOCRYPT) && !defined(NOKERBEROS)
169 cd ${.CURDIR}/kerberosIV/include && ${MAKE} install
170.endif
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) && \
176 !defined(NOEBONES)
177 cd ${.CURDIR}/eBones/include && ${MAKE} beforeinstall
178.endif
179
180libraries:
181 @echo "--------------------------------------------------------------"
182 @echo " Rebuilding ${DESTDIR}/usr/lib"
183 @echo "--------------------------------------------------------------"
184 @echo
185.if defined(CLOBBER)
186 find ${DESTDIR}/usr/lib \! -name '*.s[ao].*' -a \! -type d | \
187 xargs rm -rf
188.endif
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}
196.endif
197.if exists(lib)
198 cd ${.CURDIR}/lib && \
199 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
200.endif
201 cd ${.CURDIR}/usr.bin/lex/lib && \
202 ${MAKE} depend all install ${CLEANDIR} ${OBJDIR}
194.if !defined(NOCRYPT) && !defined(NOKERBEROS)
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}
212.endif
213.if exists(eBones) && !defined(NOCRYPT) && defined(NOKERBEROS) && \
214 !defined(NOEBONES)
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}
223.endif
224
225tools:
226 @echo "--------------------------------------------------------------"
227 @echo " Rebuilding ${DESTDIR} Compiler and Make"
228 @echo "--------------------------------------------------------------"
229 @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}
234
235.include <bsd.subdir.mk>