Makefile revision 1734
1#	from: @(#)Makefile	5.11 (Berkeley) 5/21/91
2#	$Id: Makefile,v 1.64 1994/06/15 20:14:29 jkh Exp $
3
4NOOBJ=	noobj
5
6# disktab may be wrong -- hcx9 is a tahoe, but gets its own.
7# -rw-r--r--
8BINOWN= root
9BINGRP= wheel
10BIN1=	aliases csh.cshrc csh.login csh.logout dm.conf \
11	ftpusers gettytab group hosts host.conf hosts.equiv hosts.lpd \
12	inetd.conf login.access motd myname netstart \
13	networks phones printcap protocols rc rc.local remote \
14	security services shells skey.access \
15	syslog.conf ttys etc.${MACHINE}/disktab rpc make.conf \
16	${.CURDIR}/../gnu/usr.bin/man/manpath/manpath.config \
17	${.CURDIR}/../usr.bin/mail/misc/mail.rc
18
19# -rw-rw-rw-
20BIN2=	motd
21
22# -rwxr-xr-x root.wheel, for the new f***ing cron root.wheel
23BIN3=	daily weekly monthly
24
25MTREE=	BSD.local.dist BSD.root.dist BSD.usr.dist BSD.var.dist
26NAMEDB=	localhost.rev named.boot root.cache
27PCS=	pcs750.bin
28WCS1=	wcs fppwcs poc poc1 poc2 fppoc
29WCS2=	fpevent fppwcs fppwcs_dual hdcwcs load_diags start_fpp wcs wcs_dual
30
31# Special top level files for FreeBSD
32COPYRIGHT=	COPYRIGHT.386BSD COPYRIGHT.FreeBSD
33FREEBSD=	CONTRIB.386BSD CONTRIB.FreeBSD
34FREEBSD+=	MIRROR.SITES PERSONAL.ACKS RELNOTES.FreeBSD SUPPORT.TXT
35FREEBSD+=	${COPYRIGHT}
36#
37# Floppy drive name and files for building FreeBSD Floppies
38FLOPPY?=	fd0
39MOUNT?=		/mnt
40FLOPPY_TYPE?=	fd1200
41#
42MDEC=		usr/mdec/bootfd usr/mdec/fdboot
43MDEC+=		usr/mdec/bootsd usr/mdec/sdboot
44MDEC+=		usr/mdec/bootwd usr/mdec/wdboot
45#
46KC_DIRS=	bin dev mnt sbin
47KC_FILES=	${COPYRIGHT}
48KC_FILES+=	bin/sh					# XXX Crunch is broken!
49KC_FILES+=	sbin/mount sbin/mount_isofs		# XXX Crunch is broken!
50KC_LINKS=	bin/[ bin/cp bin/echo bin/test
51KC_LINKS+=	sbin/fsck sbin/halt sbin/init
52KC_LINKS+=	sbin/umount
53#
54CD_DIRS=	etc usr
55#
56FILESYSTEM_DIRS=	bin dev etc mnt proc sbin usr usr/bin usr/mdec usr/sbin
57FILESYSTEM_TREES=	dev
58FILESYSTEM_FILES=	${COPYRIGHT}
59FILESYSTEM_FILES+=	bin/sh				# XXX Crunch is broken!
60FILESYSTEM_FILES+=	dev/MAKEDEV
61FILESYSTEM_FILES+=	etc/group
62FILESYSTEM_FILES+=	etc/master.passwd etc/passwd etc/pwd.db
63FILESYSTEM_FILES+=	${MDEC}
64FILESYSTEM_LINKS=	bin/[ bin/expr bin/ls bin/mkdir bin/rm
65FILESYSTEM_LINKS+=	bin/sync bin/test
66FILESYSTEM_LINKS+=	sbin/disklabel sbin/fdisk sbin/halt sbin/init
67FILESYSTEM_LINKS+=	sbin/mount sbin/mount_pcfs
68FILESYSTEM_LINKS+=	sbin/newfs
69FILESYSTEM_LINKS+=	sbin/umount
70FILESYSTEM_LINKS+=	usr/bin/cpio
71FILESYSTEM_LINKS+=	usr/bin/gunzip usr/bin/gzcat usr/bin/gzip usr/bin/zcat
72FILESYSTEM_LINKS+=	usr/sbin/bad144
73FILESYSTEM_CPIO=	.profile
74FILESYSTEM_CPIO+=	root/.profile
75FILESYSTEM_CPIO+=	bin/[
76FILESYSTEM_CPIO+=	bin/chmod bin/cat bin/cp bin/df bin/expr bin/ls
77FILESYSTEM_CPIO+=	bin/ln bin/mkdir bin/mv bin/rm bin/sync
78FILESYSTEM_CPIO+=	bin/test
79FILESYSTEM_CPIO+=	etc/spwd.db
80FILESYSTEM_CPIO+=	sbin/disklabel sbin/fdisk sbin/halt sbin/init
81FILESYSTEM_CPIO+=	sbin/mount sbin/mount_pcfs
82FILESYSTEM_CPIO+=	sbin/newfs
83FILESYSTEM_CPIO+=	sbin/umount
84FILESYSTEM_CPIO_DIRS=	root
85
86CPIO_FILES=	${COPYRIGHT}
87CPIO_CPIO=	bin/dd bin/ps bin/pwd bin/stty
88CPIO_CPIO+=	etc/protocols etc/remote etc/services
89CPIO_CPIO+=	etc/termcap
90CPIO_CPIO+=	sbin/dmesg
91CPIO_CPIO+=	sbin/ifconfig sbin/fsck sbin/mknod sbin/mount_isofs
92CPIO_CPIO+=	sbin/mount_procfs
93CPIO_CPIO+=	sbin/reboot sbin/route sbin/slattach
94CPIO_CPIO+=	usr/bin/awk usr/bin/chgrp usr/bin/cpio usr/bin/ex usr/bin/ftp
95CPIO_CPIO+=	usr/bin/gunzip usr/bin/gzcat usr/bin/gzip
96CPIO_CPIO+=	usr/bin/more usr/bin/tar usr/bin/tip
97CPIO_CPIO+=	usr/bin/vi usr/bin/view usr/bin/zcat
98CPIO_CPIO+=	usr/lib/libc.so.1.1
99CPIO_CPIO+=	usr/lib/libcurses.so.1.1
100CPIO_CPIO+=	usr/lib/libgcc.so.1.1
101CPIO_CPIO+=	usr/lib/libm.so.1.1
102CPIO_CPIO+=	usr/lib/libtermlib.so.1.1
103CPIO_CPIO+=	usr/lib/libtermcap.so.1.1
104CPIO_CPIO+=	usr/lib/libutil.so.1.1
105CPIO_CPIO+=	usr/libexec/ld.so
106CPIO_CPIO+=	usr/sbin/bad144 usr/sbin/chown
107CPIO_CPIO+=	usr/share/misc/termcap
108CPIO_CPIO_DIRS=		tmp usr/lib usr/libexec usr/share usr/share/misc
109CPIO_CPIO_DIRS+=	var var/tmp var/run var/spool var/spool/lock
110
111CRYPT_LIB=	lib/libcrypt
112CRYPT_SRCS=	bin/ed bin/rcp
113CRYPT_SRCS+=	libexec/ftpd libexec/makekey libexec/rexecd libexec/rlogind
114CRYPT_SRCS+=	libexec/rshd libexec/telnetd libexec/uucpd
115CRYPT_SRCS+=	sbin/init.bsdi
116CRYPT_SRCS+=	usr.bin/bdes usr.bin/lock usr.bin/login usr.bin/passwd
117CRYPT_SRCS+=	usr.bin/rlogin usr.bin/rsh usr.bin/su usr.bin/telnet
118CRYPT_DIRS=	bin sbin usr usr/bin usr/lib usr/libexec 
119
120all clean cleandir depend etc install lint:
121
122crypt:
123	rm -f ${LIBCRYPT};
124	(cd ${.CURDIR}/../${CRYPT_LIB}; \
125		${MAKE} cleandir obj depend all install)
126	for i in ${CRYPT_SRCS}; do \
127		cd ${.CURDIR}/../$$i; \
128		${MAKE} cleandir obj depend all; \
129	done
130	
131non-crypt:
132	rm -f ${LIBCRYPT}
133	for i in ${CRYPT_SRCS}; do \
134		cd ${.CURDIR}/../$$i; \
135		${MAKE} cleandir obj depend all; \
136	done
137	
138distribution: distrib-dirs
139	install -c -o ${BINOWN} -g ${BINGRP} -m 644 ${BIN1} ${DESTDIR}/etc
140	install -c -o ${BINOWN} -g ${BINGRP} -m 666 ${BIN2} ${DESTDIR}/etc
141	install -c -o ${BINOWN} -g ${BINGRP} -m 755 ${BIN3} ${DESTDIR}/etc
142	install -c -o ${BINOWN} -g ${BINGRP} -m 644 crontab ${DESTDIR}/etc
143	install -c -o ${BINOWN} -g ${BINGRP} -m 600 /dev/null \
144	    ${DESTDIR}/var/cron/log
145	install -c -o ${BINOWN} -g ${BINGRP} -m 600 \
146	    master.passwd ${DESTDIR}/etc
147	pwd_mkdb -p -d ${DESTDIR}/etc ${DESTDIR}/etc/master.passwd
148	install -c -o ${BINOWN} -g ${BINGRP} -m 555 \
149	     MAKEDEV.local etc.${MACHINE}/MAKEDEV ${DESTDIR}/dev
150.if defined(CDROMDIST)
151	(cd ${DESTDIR}/dev; sh MAKEDEV all)
152.endif
153	(cd ${.CURDIR}/root; \
154		install -c -o ${BINOWN} -g ${BINGRP} -m 644 dot.cshrc \
155		    ${DESTDIR}/root/.cshrc; \
156		install -c -o ${BINOWN} -g ${BINGRP} -m 644 dot.klogin \
157		    ${DESTDIR}/root/.klogin; \
158		install -c -o ${BINOWN} -g ${BINGRP} -m 644 dot.login \
159		    ${DESTDIR}/root/.login; \
160		install -c -o ${BINOWN} -g ${BINGRP} -m 644 dot.profile \
161		    ${DESTDIR}/root/.profile; \
162		rm -f ${DESTDIR}/.cshrc ${DESTDIR}/.profile; \
163		ln ${DESTDIR}/root/.cshrc ${DESTDIR}/.cshrc; \
164		ln ${DESTDIR}/root/.profile ${DESTDIR}/.profile)
165	cd ${.CURDIR}/mtree; install -c -o ${BINOWN} -g ${BINGRP} -m 444 \
166	    ${MTREE} ${DESTDIR}/etc/mtree
167	cd ${.CURDIR}/namedb; install -c -o ${BINOWN} -g ${BINGRP} -m 644 \
168	    ${NAMEDB} ${DESTDIR}/etc/namedb
169	install -c -o ${BINOWN} -g operator -m 664 /dev/null \
170	    ${DESTDIR}/etc/dumpdates
171	install -c -o nobody -g ${BINGRP} -m 664 /dev/null \
172	    ${DESTDIR}/var/db/locate.database
173	install -c -o ${BINOWN} -g ${BINGRP} -m 664 minfree \
174	    ${DESTDIR}/var/crash
175	install -c -o ${BINOWN} -g ${BINGRP} -m 664 /dev/null \
176	    ${DESTDIR}/var/log/lpd-errs
177	install -c -o ${BINOWN} -g ${BINGRP} -m 664 /dev/null \
178	    ${DESTDIR}/var/log/maillog
179	install -c -o ${BINOWN} -g ${BINGRP} -m 664 /dev/null \
180	    ${DESTDIR}/var/log/lastlog
181	install -c -o ${BINOWN} -g ${BINGRP} -m 664 /dev/null \
182	    ${DESTDIR}/var/log/messages
183	install -c -o ${BINOWN} -g ${BINGRP} -m 664 /dev/null \
184	    ${DESTDIR}/var/log/wtmp
185	install -c -o ${BINOWN} -g ${BINGRP} -m 664 /dev/null \
186	    ${DESTDIR}/var/run/utmp
187	(cd etc.${MACHINE}; install -c -o ${BINOWN} -g ${BINGRP} -m 444 \
188	    fstab.* ${DESTDIR}/etc)
189.if defined(NOCRYPT)
190	${MAKE} non-crypt
191	(cd ..; NOCRYPT=nocrypt; export NOCRYPT; ${MAKE} install)
192.else
193	${MAKE} crypt
194	(cd ..; ${MAKE} install)
195.endif
196	(cd ../usr.sbin/sendmail/src; \
197	    ${MAKE} install; \
198	 cd ../cf/cf; \
199	    ${MAKE} obj; \
200	    ${MAKE} freefall.cf; \
201	    install -o ${BINOWN} -g ${BINGRP} -m 644 obj/freefall.cf \
202	        ${DESTDIR}/etc/sendmail.cf)
203	(cd ../; \
204	    install -c -o ${BINOWN} -g ${BINGRP} -m 444 ${FREEBSD} ${DESTDIR}/)
205	(cd ..; ${MAKE} mdec; )
206	(cd ../share/man; ${MAKE} makedb; )
207.if ${MACHINE} == "tahoe"
208	(cd etc.tahoe; install -c -o ${BINOWN} -g ${BINGRP} -m 444 ${WCS1} \
209	    ${DESTDIR}/)
210.endif
211.if ${MACHINE} == "vax"
212	(cd etc.vax; install -c -o ${BINOWN} -g ${BINGRP} -m 444 ${PCS} \
213	    ${DESTDIR}/)
214.endif
215
216crunch:
217	@echo crunch target
218
219extract:
220	install -c -o ${BINOWN} -g ${BINGRP} -m 555 \
221	    ${.CURDIR}/etc.i386/INSTALL_bin.sh ${RELEASEDIR}/tarballs/bindist
222	install -c -o ${BINOWN} -g ${BINGRP} -m 555 \
223	    ${.CURDIR}/etc.i386/INSTALL_src.sh ${RELEASEDIR}/tarballs/srcdist
224	install -c -o ${BINOWN} -g ${BINGRP} -m 555 \
225	    ${.CURDIR}/etc.i386/INSTALL_secr.sh ${RELEASEDIR}/tarballs/secrdist
226
227hcx9-distribution:
228	(cd etc.tahoe; install -c -o ${BINOWN} -g ${BINGRP} -m 444 ${WCS2} \
229	    ${DESTDIR}/)
230
231kcopy-kernels: ../sys/i386/conf/GENERICAH ../sys/i386/conf/GENERICBT
232	(cd ../sys/compile; rm -rf GENERICAH GENERICBT)
233	(cd ../sys/i386/conf; config GENERICAH; config GENERICBT)
234	(cd ../sys/compile/GENERICAH; ${MAKE} depend; ${MAKE} all; \
235	    install -c -o ${BINOWN} -g ${BINGRP} -m 755 386bsd \
236	        ${DESTDIR}/386bsd.GENERICAH)
237	(cd ../sys/compile/GENERICBT; ${MAKE} depend; ${MAKE} all; \
238	    install -c -o ${BINOWN} -g ${BINGRP} -m 755 386bsd \
239	        ${DESTDIR}/386bsd.GENERICBT)
240
241kcopy-floppy:
242	disklabel -w -r ${FLOPPY} ${FLOPPY_TYPE} \
243		${DESTDIR}/usr/mdec/fdboot ${DESTDIR}/usr/mdec/bootfd
244	newfs -b 4096 -c 80 -f 512 -i 10240 -m 0 -o space \
245		r${FLOPPY} ${FLOPPY_TYPE}
246	mount /dev/${FLOPPY} ${MOUNT}
247	chown ${BINOWN}.${BINGRP} ${MOUNT}/.
248	chmod 755 ${MOUNT}/.
249	(cd ${DESTDIR}/; \
250	    ls -d ${KC_DIRS} | cpio -pdamuv ${MOUNT})
251	(cd ${MOUNT}/dev; \
252	    sh ${DESTDIR}/dev/MAKEDEV std; \
253	    rm -rf fd; \
254	    sh ${DESTDIR}/dev/MAKEDEV fd0 fd1 wd0 wd1 sd0 sd1; \
255	    rm -rf fd0?* rfd0?* fd1?* rfd1?*; \
256	    sh ${DESTDIR}/dev/MAKEDEV cd0 mcd0 mcd1; \
257	    rm -rf rmcd*)
258	(cd ${DESTDIR}/; \
259	    ls ${KC_FILES} | cpio -pdamuv ${MOUNT})
260	install -c -o ${BINOWN} -g ${BINGRP} -m 755 \
261	    ${.CURDIR}/etc.i386/kc.profile ${MOUNT}/.profile
262	install -c -o ${BINOWN} -g ${BINGRP} -m 755 \
263	    ${RELEASEDIR}/distbin/kcopy ${MOUNT}/bin/kcopy
264	(cd ${MOUNT}/; \
265	    for i in ${KC_LINKS}; do \
266		ln bin/kcopy $$i; \
267	    done)
268
269kcopy_ah.flp:
270	${MAKE} kcopy-floppy
271	(cd ../sys/compile/GENERICAH; \
272	    install -c -o ${BINOWN} -g ${BINGRP} -m 755 386bsd ${MOUNT}/)
273	df -ik ${MOUNT}
274	umount /dev/${FLOPPY}
275	fsck /dev/r${FLOPPY}
276	dd if=/dev/r${FLOPPY} of=${RELEASEDIR}/floppies/kcopy_ah.flp \
277		bs=15b count=160
278	gzip --no-name -9 -c ${RELEASEDIR}/floppies/kcopy_ah.flp \
279		>${RELEASEDIR}/floppies/kcopy_ah.flp.gz
280
281kcopy_bt.flp:
282	${MAKE} kcopy-floppy
283	(cd ../sys/compile/GENERICBT; \
284	    install -c -o ${BINOWN} -g ${BINGRP} -m 755 386bsd ${MOUNT}/)
285	df -ik ${MOUNT}
286	umount /dev/${FLOPPY}
287	fsck /dev/r${FLOPPY}
288	dd if=/dev/r${FLOPPY} of=${RELEASEDIR}/floppies/kcopy_bt.flp \
289		bs=15b count=160
290	gzip --no-name -9 -c ${RELEASEDIR}/floppies/kcopy_bt.flp \
291		>${RELEASEDIR}/floppies/kcopy_bt.flp.gz
292
293cdins-floppy:
294	${MAKE} kcopy-floppy
295	(cd ${DESTDIR}/; \
296	    ls -d ${CD_DIRS} | cpio -pdamuv ${MOUNT})
297	(cd ${MOUNT}/usr; \
298	    ln -s /cdrom/filesys/usr/libexec libexec; \
299	    ln -s /cdrom/filesys/usr/lib lib)
300	mkdir ${MOUNT}/cdrom
301	chown ${BINOWN}.${BINGRP} ${MOUNT}/cdrom
302	chmod 755 ${MOUNT}/cdrom
303	install -c -o ${BINOWN} -g ${BINGRP} -m 755 \
304	    ${.CURDIR}/etc.i386/cdinst1.profile ${MOUNT}/.profile
305	install -c -o ${BINOWN} -g ${BINGRP} -m 755 \
306	    ${.CURDIR}/etc.i386/cdinst1.install ${MOUNT}/install
307	
308cdins_ah.flp:
309	${MAKE} cdins-floppy
310	(cd ../sys/compile/GENERICAH; \
311	    install -c -o ${BINOWN} -g ${BINGRP} -m 755 386bsd ${MOUNT}/)
312	df -ik ${MOUNT}
313	umount /dev/${FLOPPY}
314	fsck /dev/r${FLOPPY}
315	dd if=/dev/r${FLOPPY} of=${RELEASEDIR}/floppies/cdins_ah.flp \
316		bs=15b count=160
317	gzip --no-name -9 -c ${RELEASEDIR}/floppies/cdins_ah.flp \
318		>${RELEASEDIR}/floppies/cdins_ah.flp.gz
319
320cdins_bt.flp:
321	${MAKE} cdins-floppy
322	(cd ../sys/compile/GENERICBT; \
323	    install -c -o ${BINOWN} -g ${BINGRP} -m 755 386bsd ${MOUNT}/)
324	df -ik ${MOUNT}
325	umount /dev/${FLOPPY}
326	fsck /dev/r${FLOPPY}
327	dd if=/dev/r${FLOPPY} of=${RELEASEDIR}/floppies/cdins_bt.flp \
328		bs=15b count=160
329	gzip --no-name -9 -c ${RELEASEDIR}/floppies/cdins_bt.flp \
330		>${RELEASEDIR}/floppies/cdins_bt.flp.gz
331
332filesyst.flp:
333	disklabel -w -r ${FLOPPY} ${FLOPPY_TYPE} \
334		${DESTDIR}/usr/mdec/fdboot ${DESTDIR}/usr/mdec/bootfd
335	newfs -b 4096 -c 80 -f 512 -i 10240 -m 0 -o space \
336		r${FLOPPY}  ${FLOPPY_TYPE}
337	mount /dev/${FLOPPY}  ${MOUNT}
338	chown ${BINOWN}.${BINGRP} ${MOUNT}/.
339	chmod 755 ${MOUNT}/.
340	(cd ${DESTDIR}/; \
341	    ls -d ${FILESYSTEM_DIRS} | cpio -pdamuv ${MOUNT})
342	(cd ${MOUNT}/dev; \
343	    sh ${DESTDIR}/dev/MAKEDEV std; \
344	    rm -rf fd; \
345	    sh ${DESTDIR}/dev/MAKEDEV fd0 fd1 wd0 sd0 sd1; \
346	    rm -f fd0?* fd1?* rfd0?* rfd1?*)
347	(cd ${DESTDIR}/; \
348	    ls ${FILESYSTEM_FILES} | cpio -pdamuv ${MOUNT}; \
349	    (find ${FILESYSTEM_CPIO}; ls -d ${FILESYSTEM_CPIO_DIRS}) | \
350		cpio -H newc --block-size=16 -oav | \
351		gzip -9 >${MOUNT}/inst1.cpio.gz)
352	install -c -o ${BINOWN} -g ${BINGRP} -m 755 \
353	    ${.CURDIR}/etc.i386/inst1.profile ${MOUNT}/.profile
354	install -c -o ${BINOWN} -g ${BINGRP} -m 755 \
355	    ${.CURDIR}/etc.i386/inst1.install ${MOUNT}/install
356	install -c -o ${BINOWN} -g ${BINGRP} -m 755 \
357	    ${RELEASEDIR}/distbin/filesystem ${MOUNT}/bin/filesystem
358	(cd ${MOUNT}/; \
359	    for i in ${FILESYSTEM_LINKS}; do \
360		ln bin/filesystem $$i; \
361	    done)
362	(cd ${MOUNT}/; \
363	    ls ${FILESYSTEM_FILES} >/tmp/filelist; \
364	    ls ${FILESYSTEM_LINKS} >>/tmp/filelist; \
365	    ls -d ${FILESYSTEM_DIRS} >>/tmp/filelist; \
366	    find ${FILESYSTEM_TREES} >>/tmp/filelist; \
367	    sort -u -r /tmp/filelist >filelist; \
368	    rm /tmp/filelist)
369	df -ik ${MOUNT}
370	umount /dev/${FLOPPY}
371	fsck /dev/r${FLOPPY}
372	dd if=/dev/r${FLOPPY} of=${RELEASEDIR}/floppies/filesyst.flp \
373		bs=15b count=160
374	gzip --no-name -9 -c ${RELEASEDIR}/floppies/filesyst.flp \
375		>${RELEASEDIR}/floppies/filesyst.flp.gz
376
377cpio.flp:
378	disklabel -w -r ${FLOPPY} ${FLOPPY_TYPE} \
379		${DESTDIR}/usr/mdec/fdboot ${DESTDIR}/usr/mdec/bootfd
380	newfs -b 4096 -c 80 -f 512 -i 65536 -m 0 -o space \
381			r${FLOPPY}  ${FLOPPY_TYPE}
382	mount /dev/${FLOPPY} ${MOUNT}
383	chown ${BINOWN}.${BINGRP} ${MOUNT}/.
384	chmod 755 ${MOUNT}/.
385	(cd ${DESTDIR}/; \
386		ls ${CPIO_FILES} | cpio -pdamuv ${MOUNT})
387	(cd ${DESTDIR}/; \
388	    (find ${CPIO_CPIO}; ls -d ${CPIO_CPIO_DIRS}) | \
389		cpio -H newc --block-size=16 -oav | \
390		gzip -9 >${MOUNT}/inst2.cpio.gz)
391	install -c -o ${BINOWN} -g ${BINGRP} -m 755 \
392	    ${.CURDIR}/etc.i386/cpio.rc ${MOUNT}/rc
393	install -c -o ${BINOWN} -g ${BINGRP} -m 755 \
394	    ${.CURDIR}/etc.i386/cpio.install ${MOUNT}/install
395	install -c -o ${BINOWN} -g ${BINGRP} -m 755 \
396	    ${.CURDIR}/etc.i386/cpio.magic ${MOUNT}/magic
397	df -ik ${MOUNT}
398	umount /dev/${FLOPPY}
399	fsck /dev/r${FLOPPY}
400	dd if=/dev/r${FLOPPY} of=${RELEASEDIR}/floppies/cpio.flp \
401		bs=15b count=160
402	gzip --no-name -9 -c ${RELEASEDIR}/floppies/cpio.flp \
403		>${RELEASEDIR}/floppies/cpio.flp.gz
404
405bin-tarball:
406	(cd ${DESTDIR}; \
407		tar cf - . | \
408		gzip --no-name -9 -c | \
409		split -b 240640 - \
410		${RELEASEDIR}/tarballs/bindist/bin_tgz.)
411
412srcbase-tarball:
413	(cd ${DESTDIR}; \
414		tar -cf - usr/src/[A-Z]* | \
415		gzip --no-name -9 -c | \
416		split -b 240640 - \
417		${RELEASEDIR}/tarballs/srcdist/base.)
418
419srcbin-tarball:
420	(cd ${DESTDIR}; \
421		tar -cf - usr/src/bin | \
422		gzip --no-name -9 -c | \
423		split -b 240640 - \
424		${RELEASEDIR}/tarballs/srcdist/bin.)
425
426srccontrib-tarball:
427	(cd ${DESTDIR}; \
428		tar -cf - usr/src/contrib | \
429		gzip --no-name -9 -c | \
430		split -b 240640 - \
431		${RELEASEDIR}/tarballs/srcdist/contrib.)
432
433srcetc-tarball:
434	(cd ${DESTDIR}; \
435		tar -cf - usr/src/etc | \
436		gzip --no-name -9 -c | \
437		split -b 240640 - \
438		${RELEASEDIR}/tarballs/srcdist/etc.)
439
440srcgames-tarball:
441	(cd ${DESTDIR}; \
442		tar -cf - usr/src/games | \
443		gzip --no-name -9 -c | \
444		split -b 240640 - \
445		${RELEASEDIR}/tarballs/srcdist/games.)
446
447srcgnu-tarball:
448	(cd ${DESTDIR}; \
449		tar -cf - usr/src/gnu | \
450		gzip --no-name -9 -c | \
451		split -b 240640 - \
452		${RELEASEDIR}/tarballs/srcdist/gnu.)
453
454srcinclude-tarball:
455	(cd ${DESTDIR}; \
456		tar -cf - usr/src/include | \
457		gzip --no-name -9 -c | \
458		split -b 240640 - \
459		${RELEASEDIR}/tarballs/srcdist/include.)
460
461srclib-tarball:
462	(cd ${DESTDIR}; \
463		tar --exclude usr/src/${CRYPT_LIB} -cf - usr/src/lib | \
464		gzip --no-name -9 -c | \
465		split -b 240640 - \
466		${RELEASEDIR}/tarballs/srcdist/lib.)
467
468srclibcrypt-tarball:
469	(cd ${DESTDIR}; \
470		tar -cf - usr/src/${CRYPT_LIB} | \
471		gzip --no-name -9 -c | \
472		split -b 240640 - \
473		${RELEASEDIR}/tarballs/secrdist/libcrypt.)
474
475srclibexec-tarball:
476	(cd ${DESTDIR}; \
477		tar -cf - usr/src/libexec | \
478		gzip --no-name -9 -c | \
479		split -b 240640 - \
480		${RELEASEDIR}/tarballs/srcdist/libexec.)
481
482srcsbin-tarball:
483	(cd ${DESTDIR}; \
484		tar -cf - usr/src/sbin | \
485		gzip --no-name -9 -c | \
486		split -b 240640 - \
487		${RELEASEDIR}/tarballs/srcdist/sbin.)
488
489srcshare-tarball:
490	(cd ${DESTDIR}; \
491		tar -cf - usr/src/share | \
492		gzip --no-name -9 -c | \
493		split -b 240640 - \
494		${RELEASEDIR}/tarballs/srcdist/share.)
495
496srcsys-tarball:
497	(cd ${DESTDIR}; \
498		tar -cf - usr/src/sys | \
499		gzip --no-name -9 -c | \
500		split -b 240640 - \
501		${RELEASEDIR}/tarballs/srcdist/sys.)
502
503srcusrbin-tarball:
504	(cd ${DESTDIR}; \
505		tar -cf - usr/src/usr.bin | \
506		gzip --no-name -9 -c | \
507		split -b 240640 - \
508		${RELEASEDIR}/tarballs/srcdist/usrbin.)
509
510srcusrsbin-tarball:
511	(cd ${DESTDIR}; \
512		tar -cf - usr/src/usr.sbin | \
513		gzip --no-name -9 -c | \
514		split -b 240640 - \
515		${RELEASEDIR}/tarballs/srcdist/usrsbin.)
516
517src-tarball: srcbase-tarball srcbin-tarball srccontrib-tarball srcetc-tarball \
518	srcgames-tarball srcgnu-tarball srcinclude-tarball srclib-tarball \
519	srclibcrypt-tarball srclibexec-tarball srcsbin-tarball \
520	srcshare-tarball srcsys-tarball srcusrbin-tarball \
521	srcusrsbin-tarball
522
523des-tarball:
524	rm -rf ${RELEASEDIR}/tmpdes
525	mkdir ${RELEASEDIR}/tmpdes
526	for i in ${CRYPT_DIRS}; do \
527		cd ${RELEASEDIR}/tmpdes; \
528		mkdir $$i; \
529		chown ${BINOWN}.${GRPOWN} $$i; \
530		chmod 755 $$i; \
531	done
532	# This is ugly, it force installs a /usr/lib/libcrypt.a so
533	# that the other makes will be built with des.
534	#
535	(cd ${.CURDIR}/../${CRYPT_LIB}; \
536		unset NOCRYPT; \
537		DESTDIR=; export DESTDIR; \
538		${MAKE} cleandir obj depend all install; \
539		NOMAN=noman; export NOMAN; \
540		DESTDIR=${RELEASEDIR}/tmpdes; export DESTDIR; \
541		${MAKE} cleandir obj depend all install)
542	for i in ${CRYPT_SRCS}; do \
543		unset NOCRYPT; \
544		DESTDIR=${RELEASEDIR}/tmpdes; export DESTDIR; \
545		NOMAN=noman; export NOMAN; \
546		cd ${.CURDIR}/../$$i; \
547		${MAKE} cleandir obj depend all install; \
548	done
549	(cd ${RELEASEDIR}/tmpdes; \
550		tar cf - . | \
551			gzip --no-name -9 -c | \
552			split -b 240640 - \
553			${RELEASEDIR}/tarballs/secrdist/des_tgz.)
554	rm -rf ${RELEASEDIR}/tmpdes
555
556distrib-dirs:
557	mtree -u -f ${.CURDIR}/mtree/BSD.root.dist -p ${DESTDIR}/
558	mtree -u -f ${.CURDIR}/mtree/BSD.var.dist -p ${DESTDIR}/var
559	mtree -u -f ${.CURDIR}/mtree/BSD.usr.dist -p ${DESTDIR}/usr
560.if defined(CDROMDIST)
561	mtree -u -f ${.CURDIR}/mtree/BSD.local.dist -p ${DESTDIR}/usr/local
562.endif
563	cd ${DESTDIR}/; rm -f ${DESTDIR}/sys; ln -s usr/src/sys sys
564
565floppies:	kcopy_ah.flp kcopy_bt.flp filesyst.flp cpio.flp \
566		cdins_ah.flp cdins_bt.flp
567
568release:	release-dirs distribution crunch extract kcopy-kernels \
569		floppies bin-tarball des-tarball
570
571release-dirs:
572	rm -rf ${RELEASEDIR}/filesys
573	mkdir ${RELEASEDIR}/filesys
574	chown ${BINOWN}.${BINGRP} ${RELEASEDIR}/filesys
575	chmod 755 ${RELEASEDIR}/filesys
576	rm -rf ${RELEASEDIR}/tarballs
577	mkdir ${RELEASEDIR}/tarballs
578	mkdir ${RELEASEDIR}/tarballs/bindist
579	mkdir ${RELEASEDIR}/tarballs/objdist
580	mkdir ${RELEASEDIR}/tarballs/secrdist
581	mkdir ${RELEASEDIR}/tarballs/srcdist
582	chown -R ${BINOWN}.${BINGRP} ${RELEASEDIR}/tarballs
583	chmod -R 755 ${RELEASEDIR}/tarballs
584	rm -rf ${RELEASEDIR}/floppies
585	mkdir ${RELEASEDIR}/floppies
586	chown ${BINOWN}.${BINGRP} ${RELEASEDIR}/floppies
587	chmod 755 ${RELEASEDIR}/floppies
588
589.include <bsd.prog.mk>
590