Hack small and big fs into a single image. Must now set BIG or SMALL label.

This commit is contained in:
Ben Gras 2006-03-10 14:11:19 +00:00
parent 525af3c6b2
commit 6fe89cfbe8
5 changed files with 14 additions and 21 deletions

View file

@ -614,7 +614,7 @@ mount /dev/$usr /mnt >/dev/null || exit
# Make bootable.
installboot -d /dev/$root /usr/mdec/bootblock /boot/boot >/dev/null || exit
edparams /dev/$root "rootdev=$root; ramimagedev=$root; $disable; minix(1,Start MINIX 3 (requires at least 16 MB RAM)) { unset image; boot; }; smallminix(2,Start Small MINIX 3 (intended for 8 MB RAM systems)) { image=/boot/image_small; ramsize=0; boot; }; main() { echo By default, MINIX 3 will automatically load in 3 seconds.; echo Press ESC to enter the monitor for special configuration.; trap 3000 boot; menu; }; save" || exit
edparams /dev/$root "rootdev=$root; ramimagedev=$root; $disable; minix(1,Start MINIX 3 (requires at least 16 MB RAM)) { label=BIG; boot; }; smallminix(2,Start Small MINIX 3 (intended for 8 MB RAM systems)) { label=SMALL; ramsize=0; boot; }; main() { echo By default, MINIX 3 will automatically load in 3 seconds.; echo Press ESC to enter the monitor for special configuration.; trap 3000 boot; menu; }; save" || exit
pfile="/mnt/src/tools/fdbootparams"
echo "rootdev=$root; ramimagedev=$root; $disable; save" >$pfile
# Save name of CD drive

View file

@ -19,16 +19,11 @@ OBJ = main.o open.o read.o write.o pipe.o dmap.o \
lock.o misc.o utility.o select.o timers.o table.o
# build local binary
all build: $(SERVER)
install all build: $(SERVER)
$(SERVER): $(OBJ)
$(CC) -o $@ $(LDFLAGS) $(OBJ) $(LIBS)
install -S 512w $@
# install with other servers
install: /usr/sbin/$(SERVER)
/usr/sbin/$(SERVER): $(SERVER)
install -o root -cs $? $@
# clean up local files
clean:
rm -f $(SERVER) *.o *.bak
@ -38,4 +33,3 @@ depend:
# Include generated dependencies.
include .depend

View file

@ -4,7 +4,7 @@ u=/usr
CC= exec cc
CFLAGS= -O -D_MINIX -D_POSIX_SOURCE
MDEC= /usr/mdec
MAKE= exec make -$(MAKEFLAGS)
MAKE= make -$(MAKEFLAGS)
# Specify the programs that are part of the system image.
# Multiple boot medium drivers can be included in the image,
@ -12,7 +12,8 @@ MAKE= exec make -$(MAKEFLAGS)
# determined by the 'label=...' boot monitor parameter.
PROGRAMS= ../kernel/kernel \
../servers/pm/pm \
../servers/fs/fs \
BIG:../servers/fs/fs \
SMALL:../servers/fs/smallfs \
../servers/rs/rs \
../servers/ds/ds \
../drivers/tty/tty \
@ -53,16 +54,12 @@ all: services image
image: includes
cd ../kernel && $(MAKE)
cd ../servers/fs && $(MAKE) EXTRA_OPTS=-D_MINIX_SMALL=1 clean fs && \
mv fs smallfs && make clean
cd ../servers && $(MAKE) image
cd ../drivers && $(MAKE) image
installboot -image $@ $(PROGRAMS)
image_small: includes
cd ../kernel && $(MAKE)
cd ../servers && $(MAKE) EXTRA_OPTS=-D_MINIX_SMALL=1 image
cd ../drivers && $(MAKE) EXTRA_OPTS=$(EXTRA_OPTS) image
installboot -image $@ $(PROGRAMS)
# rebuild the program or system libraries
includes:
cd ../include && $(MAKE) install
@ -100,5 +97,5 @@ clean:
cd ../kernel && $(MAKE) $@
cd ../servers && $(MAKE) $@
cd ../drivers && $(MAKE) $@
rm -rf *.bak image image_small *.iso *.iso.gz cdfdimage rootimage src
rm -rf *.bak image *.iso *.iso.gz cdfdimage rootimage src

View file

@ -182,11 +182,11 @@ cdfdboot)
mkdir /mnt/boot
mkdir /mnt/boot/image
( cd /mnt/dev && sh /usr/src/commands/scripts/MAKEDEV.sh std )
cp -p image image_* /mnt/boot/image || exit 1
cp -p image /mnt/boot/image || exit 1
cp -p ../boot/boot /mnt/boot/boot || exit 1
umount $dev || exit 1
installboot -d $dev ../boot/bootblock boot/boot || exit 1
edparams $dev 'unset bootopts; unset servers; disable=inet; image=/boot/image/image_big; bootbig(1, Regular MINIX 3 (requires at least 16 MB RAM)) { image=/boot/image/image ; boot } bootsmall(2, Small MINIX 3 (intended for 8 MB systems)) { image=/boot/image/image_small ; boot } cdproberoot=1; unset rootdev; unset leader; leader() { echo \n--- Welcome to MINIX 3. This is the boot monitor. ---\n\nChoose an option from the menu or press ESC if you need to do anything special.\nOtherwise I will boot with my defaults in 10 seconds.\n\n }; bootcd=1; main(){trap 10000 boot; menu; }; save' || exit
edparams $dev 'unset bootopts; unset servers; disable=inet; image=/boot/image/image; bootbig(1, Regular MINIX 3 (requires at least 16 MB RAM)) { label=BIG ; boot } bootsmall(2, Small MINIX 3 (intended for 8 MB systems)) { label=SMALL ; boot } cdproberoot=1; unset rootdev; unset leader; leader() { echo \n--- Welcome to MINIX 3. This is the boot monitor. ---\n\nChoose an option from the menu or press ESC if you need to do anything special.\nOtherwise I will boot with my defaults in 10 seconds.\n\n }; bootcd=1; main(){trap 10000 boot; menu; }; save' || exit
# copy image
dd if=$dev of=cdfdimage bs=8192 count=180

View file

@ -38,11 +38,13 @@ hdemu_root_changes()
$RELEASEDIR/usr/bin/installboot -d $TMPDISK3 \
$RELEASEDIR/usr/mdec/bootblock boot/boot
echo \
'label=BIOS
bootcd=2
'bootcd=2
disable=inet
bios_remap_first=1
ramimagedev=c0d7p0s0
bootbig(1, Regular MINIX 3) { label=BIG; boot }
bootsmall(2, Small MINIX 3 (<16MB)) {label=SMALL; boot }
main() { trap 10000 boot ; menu; }
save' | $RELEASEDIR/usr/bin/edparams $TMPDISK3
echo \