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