]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - Makefile
This commit was generated by cvs2svn to compensate for changes in r16514,
[FreeBSD/FreeBSD.git] / Makefile
1 #
2 #       $Id: Makefile,v 1.78 1996/03/24 13:16:45 paul Exp $
3 #
4 # Make command line options:
5 #       -DCLOBBER will remove /usr/include
6 #       -DMAKE_LOCAL to add ./local to the SUBDIR list
7 #       -DMAKE_PORTS to add ./ports to the SUBDIR list
8 #       -DMAKE_EBONES to build eBones (KerberosIV)
9 #
10 #       -DNOCLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir
11 #       -DNOCLEAN do not clean at all
12 #       -DNOCRYPT will prevent building of crypt versions
13 #       -DNOLKM do not build loadable kernel modules
14 #       -DNOOBJDIR do not run ``${MAKE} obj''
15 #       -DNOPROFILE do not build profiled libraries
16 #       -DNOSECURE do not go into secure subdir
17
18 # Put initial settings here.
19 SUBDIR=
20
21 # We must do include and lib first so that the perl *.ph generation
22 # works correctly as it uses the header files installed by this.
23 .if exists(include)
24 SUBDIR+= include
25 .endif
26 .if exists(lib)
27 SUBDIR+= lib
28 .endif
29
30 .if exists(bin)
31 SUBDIR+= bin
32 .endif
33 .if exists(contrib)
34 SUBDIR+= contrib
35 .endif
36 .if exists(games)
37 SUBDIR+= games
38 .endif
39 .if exists(gnu)
40 SUBDIR+= gnu
41 .endif
42 .if exists(eBones) && !defined(NOCRYPT) && defined(MAKE_EBONES)
43 SUBDIR+= eBones
44 .endif
45 .if exists(libexec)
46 SUBDIR+= libexec
47 .endif
48 .if exists(sbin)
49 SUBDIR+= sbin
50 .endif
51 .if exists(share)
52 SUBDIR+= share
53 .endif
54 .if exists(sys)
55 SUBDIR+= sys
56 .endif
57 .if exists(usr.bin)
58 SUBDIR+= usr.bin
59 .endif
60 .if exists(usr.sbin)
61 SUBDIR+= usr.sbin
62 .endif
63 .if exists(secure) && !defined(NOCRYPT) && !defined(NOSECURE)
64 SUBDIR+= secure
65 .endif
66 .if exists(lkm) && !defined(NOLKM)
67 SUBDIR+= lkm
68 .endif
69
70 # etc must be last for "distribute" to work
71 .if exists(etc) && make(distribute)
72 SUBDIR+= etc
73 .endif
74
75 # These are last, since it is nice to at least get the base system
76 # rebuilt before you do them.
77 .if defined(MAKE_LOCAL) & exists(local) & exists(local/Makefile)
78 SUBDIR+= local
79 .endif
80 .if defined(MAKE_PORTS) & exists(ports) & exists(ports/Makefile)
81 SUBDIR+= ports
82 .endif
83
84 # Handle the -DNOOBJDIR and -DNOCLEANDIR
85 .if defined(NOOBJDIR)
86 OBJDIR=
87 .else
88 OBJDIR=         obj
89 .endif
90
91 .if defined(NOCLEAN)
92 CLEANDIR=
93 WORLD_CLEANDIST=obj
94 .else
95 WORLD_CLEANDIST=cleandist
96 .if defined(NOCLEANDIR)
97 CLEANDIR=       clean
98 .else
99 CLEANDIR=       cleandir
100 .endif
101 .endif
102
103 MK_FLAGS=       -DNOMAN -DNOPROFILE
104
105 world:  hierarchy mk $(WORLD_CLEANDIST) bootstrap include-tools includes lib-tools libraries build-tools
106         @echo "--------------------------------------------------------------"
107         @echo " Rebuilding ${DESTDIR} The whole thing"
108         @echo "--------------------------------------------------------------"
109         @echo
110         ${MAKE} depend all install
111         cd ${.CURDIR}/share/man &&              ${MAKE} makedb
112         @echo "make world completed on `date`"
113
114 bootstrap:
115         cd ${.CURDIR}/usr.bin/xlint && ${MAKE} ${MK_FLAGS} lint1 lint2 xlint
116         cd ${.CURDIR}/usr.bin/xlint/lint1 && ${MAKE} ${MK_FLAGS} install
117         cd ${.CURDIR}/usr.bin/xlint/lint2 && ${MAKE} ${MK_FLAGS} install
118         cd ${.CURDIR}/usr.bin/xlint/xlint && ${MAKE} ${MK_FLAGS} install
119
120 reinstall:      hierarchy mk includes
121         @echo "--------------------------------------------------------------"
122         @echo " Reinstall ${DESTDIR} The whole thing"
123         @echo "--------------------------------------------------------------"
124         @echo
125         ${MAKE} install
126         cd ${.CURDIR}/share/man &&              ${MAKE} makedb
127
128 hierarchy:
129         @echo "--------------------------------------------------------------"
130         @echo " Making hierarchy"
131         @echo "--------------------------------------------------------------"
132         cd ${.CURDIR}/etc &&            ${MAKE} distrib-dirs
133
134 update:
135 .if defined(SUP_UPDATE)
136         @echo "--------------------------------------------------------------"
137         @echo "Running sup"
138         @echo "--------------------------------------------------------------"
139         @sup -v ${SUPFILE}
140 .if defined(SUPFILE1)
141         @sup -v ${SUPFILE1}
142 .endif
143 .if defined(SUPFILE2)
144         @sup -v ${SUPFILE2}
145 .endif
146 .endif
147 .if defined(CVS_UPDATE)
148         @echo "--------------------------------------------------------------"
149         @echo "Updating /usr/src from cvs repository" ${CVSROOT}
150         @echo "--------------------------------------------------------------"
151         cd ${.CURDIR} &&  cvs update -P -d
152 .endif
153
154 cleandist:
155 .if !defined(NOCLEANDIR)
156         @echo "--------------------------------------------------------------"
157         @echo " Cleaning up the source tree, and rebuilding the obj tree"
158         @echo "--------------------------------------------------------------"
159         @echo
160         here=`pwd`; dest=/usr/obj`echo $$here | sed 's,^/usr/src,,'`; \
161         if test -d /usr/obj -a ! -d $$dest; then \
162                 mkdir -p $$dest; \
163         else \
164                 true; \
165         fi; \
166         cd $$dest && rm -rf ${SUBDIR}
167         find . -name obj | xargs rm -rf
168 .if defined(MAKE_LOCAL) & exists(local) & exists(local/Makefile)
169         # The cd is done as local may well be a symbolic link
170         -cd local && find . -name obj | xargs rm -rf
171 .endif
172 .if defined(MAKE_PORTS) & exists(ports) & exists(ports/Makefile)
173         # The cd is done as local may well be a symbolic link
174         -cd ports && find . -name obj | xargs rm -rf
175 .endif
176         ${MAKE} cleandir
177         ${MAKE} obj
178 .endif
179
180 installmost:
181         @echo "--------------------------------------------------------------"
182         @echo " Installing programs only"
183         @echo "--------------------------------------------------------------"
184         cd ${.CURDIR}/bin       &&      ${MAKE} ${.MAKEFLAGS} install
185         cd ${.CURDIR}/sbin      &&      ${MAKE} ${.MAKEFLAGS} install
186         cd ${.CURDIR}/libexec   &&      ${MAKE} ${.MAKEFLAGS} install
187         cd ${.CURDIR}/usr.bin   &&      ${MAKE} ${.MAKEFLAGS} install
188         cd ${.CURDIR}/usr.sbin  &&      ${MAKE} ${.MAKEFLAGS} install
189         cd ${.CURDIR}/gnu/libexec &&    ${MAKE} ${.MAKEFLAGS} install
190         cd ${.CURDIR}/gnu/usr.bin &&    ${MAKE} ${.MAKEFLAGS} install
191         cd ${.CURDIR}/gnu/usr.sbin &&   ${MAKE} ${.MAKEFLAGS} install
192 #.if defined(MAKE_EBONES) && !defined(NOCRYPT)
193 #       cd ${.CURDIR}/eBones    &&      ${MAKE} ${.MAKEFLAGS} installmost
194 #.endif
195 #.if !defined(NOSECURE) && !defined(NOCRYPT)
196 #       cd ${.CURDIR}/secure    &&      ${MAKE} ${.MAKEFLAGS} installmost
197 #.endif
198
199 most:
200         @echo "--------------------------------------------------------------"
201         @echo " Building programs only"
202         @echo "--------------------------------------------------------------"
203         cd ${.CURDIR}/bin       &&      ${MAKE} ${.MAKEFLAGS} all
204         cd ${.CURDIR}/sbin      &&      ${MAKE} ${.MAKEFLAGS} all
205         cd ${.CURDIR}/libexec   &&      ${MAKE} ${.MAKEFLAGS} all
206         cd ${.CURDIR}/usr.bin   &&      ${MAKE} ${.MAKEFLAGS} all
207         cd ${.CURDIR}/usr.sbin  &&      ${MAKE} ${.MAKEFLAGS} all
208         cd ${.CURDIR}/gnu/libexec &&    ${MAKE} ${.MAKEFLAGS} all
209         cd ${.CURDIR}/gnu/usr.bin &&    ${MAKE} ${.MAKEFLAGS} all
210         cd ${.CURDIR}/gnu/usr.sbin &&   ${MAKE} ${.MAKEFLAGS} all
211 #.if defined(MAKE_EBONES) && !defined(NOCRYPT)
212 #       cd ${.CURDIR}/eBones    &&      ${MAKE} ${.MAKEFLAGS} most
213 #.endif
214 #.if !defined(NOSECURE) && !defined(NOCRYPT)
215 #       cd ${.CURDIR}/secure    &&      ${MAKE} ${.MAKEFLAGS} most
216 #.endif
217
218 mk:
219         @echo "--------------------------------------------------------------"
220         @echo " Rebuilding ${DESTDIR}/usr/share/mk"
221         @echo "--------------------------------------------------------------"
222         cd ${.CURDIR}/share/mk &&               ${MAKE} install
223
224 includes:
225         @echo "--------------------------------------------------------------"
226         @echo " Rebuilding ${DESTDIR}/usr/include"
227         @echo "--------------------------------------------------------------"
228         @echo
229 .if defined(CLOBBER)
230         rm -rf ${DESTDIR}/usr/include/*
231         mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \
232                 -p ${DESTDIR}/usr/include
233 .endif
234         cd ${.CURDIR}/include &&                ${MAKE} install
235         cd ${.CURDIR}/gnu/include &&            ${MAKE} install
236         cd ${.CURDIR}/gnu/lib/libreadline &&    ${MAKE} beforeinstall
237         cd ${.CURDIR}/gnu/lib/libregex &&       ${MAKE} beforeinstall
238         cd ${.CURDIR}/gnu/lib/libg++ &&         ${MAKE} beforeinstall
239         cd ${.CURDIR}/gnu/lib/libdialog &&      ${MAKE} beforeinstall
240 .if exists(eBones) && !defined(NOCRYPT) && defined(MAKE_EBONES)
241         cd ${.CURDIR}/eBones/include &&         ${MAKE} beforeinstall
242         cd ${.CURDIR}/eBones/lib/libkrb &&      ${MAKE} beforeinstall
243         cd ${.CURDIR}/eBones/lib/libkadm &&     ${MAKE} beforeinstall
244 .endif
245         cd ${.CURDIR}/lib/libc &&               ${MAKE} beforeinstall
246         cd ${.CURDIR}/lib/libcurses &&          ${MAKE} beforeinstall
247         cd ${.CURDIR}/lib/libedit &&            ${MAKE} beforeinstall
248         cd ${.CURDIR}/lib/libmd &&              ${MAKE} beforeinstall
249         cd ${.CURDIR}/lib/libmytinfo &&         ${MAKE} beforeinstall
250         cd ${.CURDIR}/lib/libncurses &&         ${MAKE} beforeinstall
251 .if !defined(WANT_CSRG_LIBM)
252         cd ${.CURDIR}/lib/msun &&               ${MAKE} beforeinstall
253 .endif
254         cd ${.CURDIR}/lib/libpcap &&            ${MAKE} beforeinstall
255         cd ${.CURDIR}/lib/librpcsvc &&          ${MAKE} beforeinstall
256         cd ${.CURDIR}/lib/libskey &&            ${MAKE} beforeinstall
257         cd ${.CURDIR}/lib/libtermcap &&         ${MAKE} beforeinstall
258         cd ${.CURDIR}/lib/libcom_err &&         ${MAKE} beforeinstall
259         cd ${.CURDIR}/lib/libss &&              ${MAKE} beforeinstall
260         cd ${.CURDIR}/lib/libforms &&           ${MAKE} beforeinstall
261         cd ${.CURDIR}/lib/libscsi &&            ${MAKE} beforeinstall
262         cd ${.CURDIR}/lib/libutil &&            ${MAKE} beforeinstall
263
264 lib-tools:
265         @echo "--------------------------------------------------------------"
266         @echo " Rebuilding tools needed to build the libraries"
267         @echo "--------------------------------------------------------------"
268         @echo
269         cd ${.CURDIR}/usr.bin/xinstall && \
270                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
271         cd ${.CURDIR}/gnu/usr.bin/ld && \
272                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
273         cd ${.CURDIR}/usr.bin/ar && \
274                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
275         cd ${.CURDIR}/usr.bin/ranlib && \
276                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
277         cd ${.CURDIR}/usr.bin/nm && \
278                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
279         cd ${.CURDIR}/usr.bin/lex/lib && \
280                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
281         cd ${.CURDIR}/usr.bin/compile_et && \
282                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR} && \
283                 rm -f /usr/sbin/compile_et
284         cd ${.CURDIR}/usr.bin/mk_cmds && \
285                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
286
287 libraries:
288         @echo "--------------------------------------------------------------"
289         @echo " Rebuilding ${DESTDIR}/usr/lib"
290         @echo "--------------------------------------------------------------"
291         @echo
292 .if exists(lib/libcompat)
293         cd ${.CURDIR}/lib/libcompat && \
294                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
295 .endif
296 .if exists(lib/libncurses)
297         cd ${.CURDIR}/lib/libncurses && \
298                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
299 .endif
300 .if exists(lib/libtermcap)
301         cd ${.CURDIR}/lib/libtermcap && \
302                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
303 .endif
304 .if exists(gnu)
305         cd ${.CURDIR}/gnu/lib && \
306                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
307         cd ${.CURDIR}/gnu/usr.bin/cc/libgcc && \
308                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
309 .endif
310 .if exists(secure) && !defined(NOCRYPT) && !defined(NOSECURE)
311         cd ${.CURDIR}/secure/lib && \
312                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
313 .endif
314 .if exists(lib)
315         cd ${.CURDIR}/lib/csu/i386 && \
316                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
317         cd ${.CURDIR}/lib && \
318                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
319 .endif
320 .if exists(usr.sbin/lex/lib)
321         cd ${.CURDIR}/usr.bin/lex/lib && \
322                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
323 .endif
324 .if exists(eBones) && !defined(NOCRYPT) && defined(MAKE_EBONES)
325         cd ${.CURDIR}/eBones/lib && \
326                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
327 .endif
328 .if exists(usr.sbin/pcvt/keycap)
329         cd ${.CURDIR}/usr.sbin/pcvt/keycap && \
330                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
331 .endif
332
333 include-tools:
334         @echo "--------------------------------------------------------------"
335         @echo " Rebuild tools necessary to build the include files"
336         @echo "--------------------------------------------------------------"
337         @echo
338         cd ${.CURDIR}/usr.bin/xinstall && \
339                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
340         cd ${.CURDIR}/usr.bin/rpcgen && \
341                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
342
343 build-tools:
344         @echo "--------------------------------------------------------------"
345         @echo " Rebuilding ${DESTDIR} C compiler, make, symorder, sgmlfmt and zic(8)"
346         @echo "--------------------------------------------------------------"
347         @echo
348         cd ${.CURDIR}/gnu/usr.bin/cc && \
349                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
350         cd ${.CURDIR}/usr.bin/make && \
351                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
352         cd ${.CURDIR}/usr.bin/symorder && \
353                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
354         cd ${.CURDIR}/usr.bin/sgmlfmt && \
355                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR} 
356         cd ${.CURDIR}/share/sgml && \
357                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR} 
358         cd ${.CURDIR}/usr.sbin/zic && \
359                 ${MAKE} ${MK_FLAGS} depend all install ${CLEANDIR} ${OBJDIR}
360
361 .include <bsd.subdir.mk>