1 # $Id: Makefile,v 1.61 1994/12/01 20:01:37 jkh Exp $
7 # Evil floppies are, of course, 1.2MB floppies.
8 .if defined(EVIL_FLOPPY)
20 CPIO1= basename cat chmod cksum cp cu date dd df dmesg echo ed expr hostname
21 CPIO1+= kill ln ls mkdir mt mv rcp rm rmdir sh sleep stty sync tar test tip [
22 CPIO1+= -sh badsect chown clri disklabel dump dmesg fdisk fsck getopt ifconfig
23 CPIO1+= init mknod mount mount_cd9660 mount_msdos mount_nfs ncftp newfs ping pwd
24 CPIO1+= reboot restore slattach swapon umount route
25 CPIO1+= rdump rrestore halt ft
26 CPIO1+= ftp rsh sed telnet rlogin grep
28 CPIO2= etc/services etc/protocols
30 # bininst MUST be the last file on the cpio floppy. It's used to detect
31 # a successful extraction.
32 CPIO3= miscfuncs.sh instdist.sh netinst.sh adduser.sh bininst
34 CPIO4= /usr/sbin/tzsetup
37 # Somewhat on the rough side...
38 CLEANFILES+= *.o *.c *.cache *.mk *.lo ${CPIO1} *.flp *.gz
39 CLEANFILES+= boot_flp cpio_flp_1
41 MTREE_DIR= ${.CURDIR}/../etc/mtree
43 ZIPNSPLIT= gzip --no-name -9 -c | split -b 240640 -
46 mtree -deU -f ${MTREE_DIR}/BSD.root.dist -p ${DESTDIR}/
47 mtree -deU -f ${MTREE_DIR}/BSD.var.dist -p ${DESTDIR}/var
48 mtree -deU -f ${MTREE_DIR}/BSD.usr.dist -p ${DESTDIR}/usr
49 .if defined(MAKE_LOCAL)
50 mtree -deU -f ${MTREE_DIR}/BSD.local.dist -p ${DESTDIR}/usr/local
53 ln -s usr/src/sys ${DESTDIR}/sys
55 kernel: ${.CURDIR}/../sys/i386/conf/GENERIC
56 (cd ${.CURDIR}/../sys/i386/conf; config GENERIC)
57 (cd ${.CURDIR}/../sys/compile/GENERIC; ${MAKE} depend; ${MAKE} all; )
60 (cd ${.CURDIR}; EVIL_FLOPPY=yes ${MAKE} boot.flp)
61 mv boot.flp boot_12.flp
62 gzip -9 -c < boot_12.flp > boot_12.flp.gz
65 (cd ${.CURDIR}; ${MAKE} boot.flp)
66 mv boot.flp boot_144.flp
67 gzip -9 -c < boot_144.flp > boot_144.flp.gz
70 crunchgen ${.CURDIR}/boot_flp.conf
71 ${MAKE} -f boot_flp.mk objs exe
73 -umount /dev/${FLOPPY}
74 # echo y | fdformat ${FLOPPY}
76 -b ${DESTDIR}/usr/mdec/fdboot -s ${DESTDIR}/usr/mdec/bootfd \
77 /dev/r${FLOPPY} ${FDLABEL}
78 newfs -c 80 -b 4096 -f 512 -i 8192 -m 0 -o space /dev/r${FLOPPY}
79 mount -o async /dev/${FLOPPY} ${MNT}
80 mkdir ${MNT}/dev ${MNT}/stand ${MNT}/mnt
81 strip -x ${.CURDIR}/../sys/compile/GENERIC/kernel
82 cp ${.CURDIR}/../sys/compile/GENERIC/kernel ${MNT}/kernel
83 cp ${DESTDIR}/usr/mdec/sdboot ${DESTDIR}/usr/mdec/bootsd ${MNT}/stand
84 ( cd ${DESTDIR}/dev ; \
85 ls console tty ttyv1 null zero \
86 sd[0123][a-h] wd[0123][a-h] fd[01] \
87 rsd[0123][a-h] rwd[0123][a-h] rfd[01] \
88 | cpio -dumpv ${MNT}/dev \
90 gzip -9 < boot_flp > ${MNT}/stand/sysinstall
91 chmod 755 ${MNT}/stand/sysinstall
92 ln ${MNT}/stand/sysinstall ${MNT}/stand/newfs
93 ln ${MNT}/stand/sysinstall ${MNT}/stand/gzip
94 ln ${MNT}/stand/sysinstall ${MNT}/stand/fsck
95 .if !defined(EVIL_FLOPPY)
96 install -m 400 -c ${.CURDIR}/../COPYRIGHT ${MNT}/COPYRIGHT
97 install -m 400 -c ${.CURDIR}/../share/FAQ/DISKSPACE.FAQ \
99 install -m 400 -c ${.CURDIR}/../share/FAQ/RELNOTES.FreeBSD \
100 ${MNT}/RELNOTES.FreeBSD
102 install -m 400 -c ${.CURDIR}/../share/FAQ/TROUBLESHOOTING \
103 ${MNT}/TROUBLESHOOTING
104 install -m 400 -c ${.CURDIR}/../share/FAQ/README-2.0 ${MNT}/README
105 touch ${MNT}/this_is_boot_flp
108 dd if=/dev/r${FLOPPY} bs=${DDBS} count=${DDCOUNT} of=boot.flp
109 df -k /dev/r${FLOPPY}
112 crunchgen ${.CURDIR}/cpio_flp_1.conf
113 ${MAKE} -f cpio_flp_1.mk objs exe
114 for i in ${CPIO1} ; do rm -f ./$$i ; ln cpio_flp_1 ./$$i ; done
115 ( cd /${DESTDIR} ; ls ${CPIO2} | cpio -H newc -oa ) | cpio -ivd
116 ( cd ${.CURDIR} ; ls ${CPIO3} | cpio -H newc -oa ) | cpio -ivd
118 ls ${CPIO1} ${CPIO2} ${CPIO3} ${CPIO4B} | \
119 cpio -H newc -oa | gzip -9 | \
120 dd conv=osync > cpio.flp
121 gzip -9 -v < cpio.flp > cpio.flp.gz
125 crunchgen ${.CURDIR}/boot_flp.conf
126 ${MAKE} -f boot_flp.mk objs exe
127 crunchgen ${.CURDIR}/cpio_flp_1.conf
128 ${MAKE} -f cpio_flp_1.mk objs exe
130 floppies: crunch boot_144.flp boot_12.flp cpio.flp
133 ( cd ${.CURDIR} ; ${MAKE} clean)
135 chflags -R noschg ${RELEASEDIR}/.
136 rm -rf ${RELEASEDIR}/*
137 ( cd ${.CURDIR}/.. ; \
138 ${MAKE} world NOCRYPT=yes)
139 ( cd ${.CURDIR}/../etc ; \
140 ${MAKE} release-dirs )
141 ( cd ${.CURDIR} ; ${MAKE} obj)
143 ${MAKE} kernel DESTDIR=${RELEASEDIR}/filesys )
144 install ${COPY} -m 644 ${.CURDIR}/../sys/compile/GENERIC/kernel \
145 ${RELEASEDIR}/filesys/kernel
147 ${MAKE} hierarchy DESTDIR=${RELEASEDIR}/filesys )
148 ( cd ${.CURDIR}/../etc ; \
149 ${MAKE} distribution DESTDIR=${RELEASEDIR}/filesys \
150 NOCRYPT=yes SHARED=copies)
151 ( cd ${RELEASEDIR}/filesys; \
153 ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/bindist/bindist.)
154 cp ${.CURDIR}/extract.sh ${RELEASEDIR}/tarballs/bindist
155 ( cd ${RELEASEDIR}/tarballs/bindist; ${.CURDIR}/mkchecksums.sh )
159 ( cd ${.CURDIR}/../etc ; \
160 ${MAKE} srcebones-tarball \
161 DESTDIR=${RELEASEDIR}/filesys \
162 NOCRYPT=yes SHARED=copies )
165 ( cd ${.CURDIR}/../etc ; \
166 ${MAKE} des-tarball \
167 DESTDIR=${RELEASEDIR}/filesys \
170 EXTRADISTRIBUTIONS= secrdist games manpages proflibs dict krb srcdist
171 DISTRIBUTIONS= bindist ${EXTRADISTRIBUTIONS}
172 MTREEFILES= ${.CURDIR}/../etc/mtree
173 SECRSRC= src/secure src/eBones
177 chflags -R noschg ${RELEASEDIR}/.
178 rm -rf ${RELEASEDIR}/*
179 for i in ${DISTRIBUTIONS} ; \
181 mkdir ${RELEASEDIR}/$$i ; \
182 mtree -deU -f ${MTREEFILES}/BSD.root.dist -p ${RELEASEDIR}/$$i/ ; \
183 mtree -deU -f ${MTREEFILES}/BSD.var.dist -p ${RELEASEDIR}/$$i/var ; \
184 mtree -deU -f ${MTREEFILES}/BSD.usr.dist -p ${RELEASEDIR}/$$i/usr ; \
187 ${MAKE} kernel DESTDIR=${RELEASEDIR}/filesys )
188 install ${COPY} -m 644 ${.CURDIR}/../sys/compile/GENERIC/kernel \
189 ${RELEASEDIR}/bindist/kernel
192 rm -rf ${RELEASEDIR}/manpages/usr/share/man
193 mv ${RELEASEDIR}/bindist/usr/share/man \
194 ${RELEASEDIR}/manpages/usr/share/man
195 rm -rf ${RELEASEDIR}/games/usr/games
196 mv ${RELEASEDIR}/bindist/usr/games \
197 ${RELEASEDIR}/games/usr/games
198 rm -rf ${RELEASEDIR}/games/usr/share/games
199 mv ${RELEASEDIR}/bindist/usr/share/games \
200 ${RELEASEDIR}/games/usr/share/games
201 rm -rf ${RELEASEDIR}/dict/usr/share/dict
202 mv ${RELEASEDIR}/bindist/usr/share/dict \
203 ${RELEASEDIR}/dict/usr/share/dict
204 mv ${RELEASEDIR}/bindist/usr/lib/*_p.a \
205 ${RELEASEDIR}/proflibs/usr/lib
206 -cd ${RELEASEDIR} ; \
207 find ${EXTRADISTRIBUTIONS} -depth -type d -print | xargs rmdir
208 cd ${RELEASEDIR}/secrdist/usr ; cvs export -r ${RELEASETAG} ${SECRSRC}
209 cd ${RELEASEDIR}/srcdist/usr ; cvs export -r ${RELEASETAG} src
210 cd ${RELEASEDIR}/srcdist/usr/src ; rm -rf secure kerberosIV eBones
213 rm -rf ${RELEASEDIR}/tarballs
214 mkdir ${RELEASEDIR}/tarballs
215 for i in ${DISTRIBUTIONS} ; \
217 mkdir ${RELEASEDIR}/tarballs/$${i} ; \
218 ( cd ${RELEASEDIR}/$${i}; \
220 ${ZIPNSPLIT} ${RELEASEDIR}/tarballs/$$i/$${i}.) ; \
221 ( cd ${RELEASEDIR}/tarballs/$${i}; sh -e ${.CURDIR}/mkchecksums.sh ) ; \
222 cp ${.CURDIR}/extract.sh ${RELEASEDIR}/tarballs/$${i} ;\
225 .include <bsd.prog.mk>