diff options
Diffstat (limited to 'distrib/sparc64/ramdisk')
-rw-r--r-- | distrib/sparc64/ramdisk/Makefile | 95 | ||||
-rw-r--r-- | distrib/sparc64/ramdisk/Makefile.inc | 11 | ||||
-rw-r--r-- | distrib/sparc64/ramdisk/dot.profile | 92 | ||||
-rw-r--r-- | distrib/sparc64/ramdisk/instbin.conf | 33 | ||||
-rw-r--r-- | distrib/sparc64/ramdisk/list | 39 | ||||
-rw-r--r-- | distrib/sparc64/ramdisk/mtree.conf | 90 |
6 files changed, 360 insertions, 0 deletions
diff --git a/distrib/sparc64/ramdisk/Makefile b/distrib/sparc64/ramdisk/Makefile new file mode 100644 index 00000000000..136b48a829f --- /dev/null +++ b/distrib/sparc64/ramdisk/Makefile @@ -0,0 +1,95 @@ +# $OpenBSD: Makefile,v 1.1 2001/09/18 14:27:32 jason Exp $ + +TOP= ${.CURDIR}/.. + +.include "${TOP}/Makefile.inc" +BSD_RD= bsd.rd +IMAGE= mr.fs +CBIN?= instbin +LISTS= ${.CURDIR}/list +UTILS?= ${.CURDIR}/../../miniroot + +MOUNT_POINT= /mnt +MTREE= ${.CURDIR}/mtree.conf + +VND?= svnd0 +VND_DEV= /dev/${VND}a +VND_RDEV= /dev/r${VND}a +VND_CRDEV= /dev/r${VND}c +PID!= echo $$$$ + + +DISKTYPE= rdroot +NBLKS= 8192 +# minfree, opt, b/i trks, sects, cpg +NEWFSARGS= -m 0 -o space -c 16 -i 4096 + +.ifndef DESTDIR +all ${IMAGE}: + @echo setenv DESTDIR before making a ramdisk! + @false +.else + +# mix config is not needed. +all: ${BSD_RD} + +${BSD_RD}: ${CBIN} ${IMAGE} bsd rdsetroot + cp bsd ${BSD_RD} + ${.OBJDIR}/rdsetroot ${BSD_RD} < ${IMAGE} + +${IMAGE}: rd_setup do_files rd_teardown + +.endif + +bsd: + cd ${TOP}/../../sys/arch/sparc64/conf && config RAMDISK + cd ${TOP}/../../sys/arch/sparc64/compile/RAMDISK && \ + make clean && make depend && make + cp ${TOP}/../../sys/arch/sparc64/compile/RAMDISK/bsd bsd + +rd_setup: + dd if=/dev/zero of=${IMAGE} bs=512 count=${NBLKS} + vnconfig -v -c ${VND} ${IMAGE} + disklabel -w -r ${VND} ${DISKTYPE} + newfs ${NEWFSARGS} ${VND_RDEV} + fsck ${VND_RDEV} + mount ${VND_DEV} ${MOUNT_POINT} + +rd_teardown: + @df -i ${MOUNT_POINT} + -umount ${MOUNT_POINT} + -vnconfig -u ${VND} + +rdsetroot: ${TOP}/common/rdsetroot.c + ${HOSTCC} -DDEBUG -o rdsetroot ${TOP}/common/rdsetroot.c + +unconfig: + -umount -f ${MOUNT_POINT} + -vnconfig -u ${VND} + +.PRECIOUS: ${IMAGE} + +install: + cp ${BSD_RD} cd${REV}.fs ${DESTDIR}/snapshot/ + +${CBIN}.mk ${CBIN}.cache ${CBIN}.c: ${CBIN}.conf + crunchgen -E -D ${.CURDIR}/../../.. -L ${DESTDIR}/usr/lib ${.ALLSRC} + +${CBIN}: ${CBIN}.mk ${CBIN}.cache ${CBIN}.c + make -f ${CBIN}.mk all + +do_files: + mtree -def ${MTREE} -p ${MOUNT_POINT}/ -u + TOPDIR=${TOP} CURDIR=${.CURDIR} OBJDIR=${.OBJDIR} \ + REV=${REV} TARGDIR=${MOUNT_POINT} sh ${TOP}/runlist.sh -d ${LISTS} + +clean cleandir: + /bin/rm -f core ${IMAGE} ${CBIN} ${CBIN}.mk ${CBIN}.cache \ + *.o *.lo *.c bsd ${BSD_RD} \ + rdsetroot + +beforeinstall: + cp ${BSD.RD} cd${REV}.fs ${DESTDIR}/snapshot + +.include <bsd.obj.mk> +.include <bsd.subdir.mk> diff --git a/distrib/sparc64/ramdisk/Makefile.inc b/distrib/sparc64/ramdisk/Makefile.inc new file mode 100644 index 00000000000..7b5b0b5b19a --- /dev/null +++ b/distrib/sparc64/ramdisk/Makefile.inc @@ -0,0 +1,11 @@ +# $OpenBSD: Makefile.inc,v 1.1 2001/09/18 14:27:32 jason Exp $ +# $OpenBSD: Makefile.inc,v 1.1 2001/09/18 14:27:32 jason Exp $ + +IMAGESIZE?= 5352 +GZIP?= gzip +GZIPFLAGS?= -9v +GZIPEXT?= .gz +MAKEFLOPPY= 1 +RAWLABEL= +BOOT= ${DESTDIR}/usr/mdec/boot +INSTALLBOOT= ${DESTDIR}/usr/mdec/installboot diff --git a/distrib/sparc64/ramdisk/dot.profile b/distrib/sparc64/ramdisk/dot.profile new file mode 100644 index 00000000000..64e5a962020 --- /dev/null +++ b/distrib/sparc64/ramdisk/dot.profile @@ -0,0 +1,92 @@ +# $OpenBSD: dot.profile,v 1.1 2001/09/18 14:27:32 jason Exp $ +# $NetBSD: dot.profile,v 1.1 1995/12/18 22:54:43 pk Exp $ +# +# Copyright (c) 1995 Jason R. Thorpe +# Copyright (c) 1994 Christopher G. Demetriou +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. All advertising materials mentioning features or use of this software +# must display the following acknowledgement: +# This product includes software developed by Christopher G. Demetriou. +# 4. The name of the author may not be used to endorse or promote products +# derived from this software without specific prior written permission +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +export PATH=/sbin:/bin:/usr/bin:/usr/sbin:/ +export HISTFILE=/.sh_history + +umask 022 + +set -o emacs # emacs-style command line editing + +# XXX +# the TERM/EDITOR stuff is really well enough parameterized to be moved +# into install.sub where it could use the routines there and be invoked +# from the various (semi) MI install and upgrade scripts + +# terminals believed to be in termcap, default TERM +TERMS="sun vt* pcvt* pc3 dumb" +TERM=sun + +if [ "X${DONEPROFILE}" = "X" ]; then + DONEPROFILE=YES + + mount_ffs -o update /dev/rd0a / + + # set up some sane defaults + echo 'erase ^?, werase ^W, kill ^U, intr ^C, status ^T' + stty newcrt werase ^W intr ^C kill ^U erase ^? status ^T 9600 + + # get the terminal type + _forceloop="" + while [ "X$_forceloop" = X"" ]; do + echo "Supported terminals are: $TERMS" + eval `tset -s -m ":?$TERM"` + if [ "X$TERM" != X"unknown" ]; then + _forceloop="done" + fi + done + export TERM + + # Installing or upgrading? + _forceloop="" + while [ "X$_forceloop" = X"" ]; do + echo -n '(I)nstall, (U)pgrade, or (S)hell? ' + read _forceloop + case "$_forceloop" in + i*|I*) + /install + ;; + + u*|U*) + /upgrade + ;; + + s*|S*) + ;; + + *) + _forceloop="" + ;; + esac + done +fi diff --git a/distrib/sparc64/ramdisk/instbin.conf b/distrib/sparc64/ramdisk/instbin.conf new file mode 100644 index 00000000000..b63322cbc60 --- /dev/null +++ b/distrib/sparc64/ramdisk/instbin.conf @@ -0,0 +1,33 @@ +# $OpenBSD: instbin.conf,v 1.1 2001/09/18 14:27:32 jason Exp $ +# +# instbin.conf - unified binary for the inst/upgr floppies +# + +srcdirs distrib/special +srcdirs usr.bin bin sbin usr.sbin gnu/usr.bin + +progs dd mount_cd9660 df dhclient mount sync restore newfs_msdos +progs stty ln disklabel pax ping cat ifconfig dmesg ls +progs less mount_nfs grep umount mount_msdos rsh fsck +progs scsi mknod route ftp mount_ffs reboot ed +progs cp gzip chmod fsck_ffs sort init newfs +progs tip rm mt mkdir sed ksh sleep +progs mv expr test hostname +progs mg + +ln mt eject +ln chmod chgrp +ln chmod chown +ln pax tar +ln pax cpio +ln less more +ln grep fgrep +ln grep egrep +ln reboot halt +ln gzip gunzip +ln gzip gzcat +ln ksh sh +ln ksh -sh +ln test [ + +libs -ledit -lutil -lcurses -ll -lm -lkvm -lz -lkrb -ldes diff --git a/distrib/sparc64/ramdisk/list b/distrib/sparc64/ramdisk/list new file mode 100644 index 00000000000..fbc0ce4044d --- /dev/null +++ b/distrib/sparc64/ramdisk/list @@ -0,0 +1,39 @@ +# $OpenBSD: list,v 1.1 2001/09/18 14:27:32 jason Exp $ +# $NetBSD: list,v 1.2.4.2 1996/06/26 19:25:00 pk Exp $ + +# Sparc extra's +LINK instbin sbin/disklabel + +SYMLINK ../../instbin usr/bin/basename +SYMLINK ../../instbin usr/bin/grep usr/bin/egrep usr/bin/fgrep +SYMLINK ../../instbin usr/bin/rsh +SYMLINK ../../instbin usr/bin/tset usr/bin/reset +SYMLINK ../../instbin usr/bin/less usr/bin/more +SYMLINK ../../instbin usr/sbin/installboot + +SRCDIRS sys/arch/sparc/stand + +# Minimize use of MFS +SYMLINK /tmp var/tmp + +# copy the MAKEDEV script and make some devices +COPY ${DESTDIR}/dev/MAKEDEV dev/MAKEDEV +SPECIAL cd dev; sh MAKEDEV ramdisk + +# we need the contents of /usr/mdec (but not boot or binstall) +COPYDIR ${DESTDIR}/usr/mdec usr/mdec +SPECIAL rm -f usr/mdec/binstall usr/mdec/installboot + +# and a few useful bits of the termcap file (512K and still growing 8-) +SPECIAL tic -C ${CURDIR}/../../../share/termtypes/termtypes.master | sed -n -e 's,/usr/share/lib/tabset,/usr/share/tabset,g' -e 's,/usr/lib/tabset,/usr/share/tabset,g' -e '/^dumb|/,/:[ ]*$/p' -e '/^unknown|/,/:[ ]*$/p' -e '/^sun.*|/,/:[ ]*$/p' -e '/^vt.*|/,/:[ ]*$/p' -e '/^pc3|/,/:[ ]*$/p' -e '/^pcvt.*|/,/:[ ]*$/p' > usr/share/misc/termcap + +# various files that we need in /etc for the install +COPY ${DESTDIR}/etc/disktab etc/disktab.shadow +SYMLINK /tmp/disktab.shadow etc/disktab +SYMLINK /tmp/fstab.shadow etc/fstab +SYMLINK /tmp/resolv.conf.shadow etc/resolv.conf +SYMLINK /tmp/hosts etc/hosts + +# and the installation tools +COPY ${ARCHDIR}/../ramdisk/dot.profile .profile +SPECIAL sed -e '/^#[ ].*$/d' -e "s/^ARCH=ARCH$/ARCH=`arch -s`/" < ${ARCHDIR}/../install.md > install.md diff --git a/distrib/sparc64/ramdisk/mtree.conf b/distrib/sparc64/ramdisk/mtree.conf new file mode 100644 index 00000000000..a56bed09a51 --- /dev/null +++ b/distrib/sparc64/ramdisk/mtree.conf @@ -0,0 +1,90 @@ +# $OpenBSD: mtree.conf,v 1.1 2001/09/18 14:27:32 jason Exp $ + +/set type=dir uname=root gname=wheel mode=0755 +# . +. + +# ./bin +bin +# ./bin +.. + +# ./dev +dev +# ./dev +.. + +# ./etc +etc + +# ./etc +.. + +# ./mnt +mnt +# ./mnt +.. + +# ./mnt2 +mnt2 +# ./mnt2 +.. + +# ./sbin +sbin +# ./sbin +.. + +# ./tmp +tmp mode=01777 +# ./tmp +.. + +# ./usr +usr + +# ./usr/bin +bin +# ./usr/bin +.. + +# ./usr/mdec +mdec +# ./usr/mdec +.. + +# ./usr/sbin +sbin +# ./usr/sbin +.. + +# ./usr/share +share + +# ./usr/share/misc +misc +# ./usr/share/misc +.. + +# ./usr/share +.. + +# ./usr +.. + +# ./var +var + +# ./var/tmp +tmp mode=0177 + +# ./var/tmp +.. + +# ./var/db +db +# ./var/db +.. + +# ./var +.. |