Add support for the kfreebsd ports. Closes: #593629

This commit is contained in:
Steve McIntyre 2010-08-20 15:04:23 +00:00
parent c9bf78eeb6
commit 771f754516
17 changed files with 182 additions and 6 deletions

View File

@ -310,7 +310,7 @@ $(BDIR)/rawlist:
fi
$(Q)for ARCH in $(ARCHES_NOSRC); do \
ARCHDEFS="$$ARCHDEFS -D ARCH_$(subst -,_,$$ARCH)"; \
ARCHDEFS="$$ARCHDEFS -D ARCH_`echo $$ARCH | sed 's/-/_/'`"; \
ARCHUNDEFS="$$ARCHUNDEFS -U $$ARCH"; \
done; \
for VARIANT in $(VARIANTS); do \

View File

@ -40,7 +40,7 @@ if [ -z "$IMAGETARGET" ] ; then
IMAGETARGET="official_images"
fi
for ARCHES in i386 amd64 alpha arm hppa ia64 m68k mips mipsel powerpc s390 sparc source
for ARCHES in i386 amd64 alpha arm hppa ia64 m68k mips mipsel powerpc s390 sparc kfreebsd-amd64 kfreebsd-i386 source
do
export ARCHES
echo "Now we're going to build CD for $ARCHES !"

View File

@ -0,0 +1,26 @@
# These udebs build the d-i cdrom initrd. As such, there is no reason
# to keep another copy of them on the CD in udeb form.
#
acpi-modules-*
cdrom-modules-*
i2c-modules-*
isofs-modules-*
kernel-image-*
parport-modules-*
sata-modules-*
scsi-core-modules-*
scsi-extra-modules-*
scsi-modules-*
serial-modules-*
# Not yet support on GNU/kFreeBSD
partman-auto-crypto
partman-auto-lvm
partman-auto-raid
partman-crypto-dm
partman-crypto-loop
partman-ext3
partman-jfs
partman-lvm
partman-md
partman-multipath

View File

@ -0,0 +1,26 @@
# These udebs build the d-i cdrom initrd. As such, there is no reason
# to keep another copy of them on the CD in udeb form.
#
acpi-modules-*
cdrom-modules-*
i2c-modules-*
isofs-modules-*
kernel-image-*
parport-modules-*
sata-modules-*
scsi-core-modules-*
scsi-extra-modules-*
scsi-modules-*
serial-modules-*
# Not yet support on GNU/kFreeBSD
partman-auto-crypto
partman-auto-lvm
partman-auto-raid
partman-crypto-dm
partman-crypto-loop
partman-ext3
partman-jfs
partman-lvm
partman-md
partman-multipath

View File

@ -0,0 +1,2 @@
netcfg
ethdetect

View File

@ -0,0 +1,3 @@
choose-mirror
netcfg
ethdetect

View File

@ -0,0 +1,2 @@
netcfg
ethdetect

View File

@ -0,0 +1,3 @@
choose-mirror
netcfg
ethdetect

View File

@ -0,0 +1,2 @@
netcfg
ethdetect

View File

@ -0,0 +1,2 @@
netcfg
ethdetect

3
debian/changelog vendored
View File

@ -40,6 +40,9 @@ debian-cd (3.1.4) UNRELEASED; urgency=low
and replace with hard links.
* CONF.sh: Don't reset the value of $VARIANTS by default.
[ Aurelien Jarno ]
* Add support for the kfreebsd ports. Closes: #593629
-- Steve McIntyre <93sam@debian.org> Tue, 27 Feb 2010 12:24:29 +0100
debian-cd (3.1.3) unstable; urgency=low

View File

@ -0,0 +1,90 @@
# This script gets sourced from boot-kfreebsd-i386 and boot-kfreebsd-amd64.
#
# Do install stuff for kfreebsd, including making bootable CDs
# Works with debian-installer
#
# $1 is the CD number
# $2 is the temporary CD build dir
. $BASEDIR/tools/boot/$DI_CODENAME/common.sh
. $BASEDIR/tools/boot/$DI_CODENAME/x86-desktop.sh
set -e
#set -x
N=$1
CDDIR=$2
BOOTDIR=
if [ "$DI_WWW_HOME" = "default" ];then
DI_WWW_HOME="http://d-i.debian.org/daily-images/$ARCH/daily"
if [ -n "$DI_DIR" ];then
DI_DIR="$DI_DIR/${DI_WWW_HOME#*http://}"
DI_WWW_HOME=""
echo "Using images from $DI_DIR"
fi
fi
if [ ! "$DI_DIST" ]; then
DI_DIST="$DI_CODENAME"
fi
cd $CDDIR/..
# Only disc 1 bootable
if [ $N != 1 ]; then
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-J -joliet-long"
exit 0
fi
# Download boot images.
BOOT_IMAGES="cdrom/debian-cd_info.tar.gz cdrom/kfreebsd.gz cdrom/initrd.gz"
for image in $BOOT_IMAGES; do
if [ ! -e "$image" ]; then
dir=$(dirname $image)
mkdir -p $dir
if [ ! "$DI_WWW_HOME" ];then
if [ ! "$DI_DIR" ];then
DI_DIR="$MIRROR/dists/$DI_DIST/main/installer-$ARCH/current/images"
fi
cp "$DI_DIR/$image" $image
else
wget "$DI_WWW_HOME/$image" -O $image
fi
fi
done
# Install kernel and initrd
mkdir -p $CDDIR/boot/kernel/
cp "cdrom/kfreebsd.gz" "$CDDIR/boot/kernel/kfreebsd.gz"
cp "cdrom/initrd.gz" "$CDDIR/boot/mfsroot.gz"
# Install bootloader
tar -C $CDDIR -zxf cdrom/debian-cd_info.tar.gz
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-J -joliet-long"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-b boot/grub/grub_eltorito"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-c boot/boot.cat"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-no-emul-boot"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-boot-load-size 4"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-boot-info-table"
add_mkisofs_opt $CDDIR/../$N.mkisofs_opts "-cache-inodes"
# Add autorun
if [ -f $CDDIR/README.html ]; then
todos > $CDDIR/autorun.inf <<EOF
[autorun]
open=autorun.bat
EOF
todos > $CDDIR/autorun.bat <<EOF
@echo Starting "README.html"...
@start README.html
@exit
EOF
fi
# Install languages
install_languages $CDDIR
# Cleanup
rm -rf cdrom
# done

View File

@ -0,0 +1,2 @@
#!/bin/bash
. $BASEDIR/tools/boot/$DI_CODENAME/boot-kfreebsd

View File

@ -0,0 +1,2 @@
#!/bin/bash
. $BASEDIR/tools/boot/$DI_CODENAME/boot-kfreebsd

View File

@ -287,4 +287,17 @@ loop-aes-modules-2.6-powerpc64
loop-aes-modules-2.6-prep
#endif
#ifdef ARCH_kfreebsd_amd64
kfreebsd-image-8-amd64
grub-pc
#endif
#ifdef ARCH_kfreebsd_i386
kfreebsd-image-8-486
kfreebsd-image-8-686
kfreebsd-image-8-686-smp
grub-pc
libc0.1-i686
#endif
EOF

View File

@ -12,9 +12,9 @@ exit 0 if $ENV{ARCHES} =~ /^\s*source\s*$/;
my @ARCHES;
if ( $ENV{ARCHES} ) {
push @ARCHES, 'i386' if $ENV{ARCHES} =~ /i386/;
push @ARCHES, 'amd64' if $ENV{ARCHES} =~ /amd64/;
push @ARCHES, grep { !/source|i386|amd64/ } split /\s+/, $ENV{ARCHES};
push @ARCHES, 'i386' if $ENV{ARCHES} =~ /[^\s]i386[\s\$]/;
push @ARCHES, 'amd64' if $ENV{ARCHES} =~ /[^\s]amd64[\s\$]/;
push @ARCHES, grep { !/^(source|i386|amd64)$/ } split /\s+/, $ENV{ARCHES};
}
@ARCHES = qw{i386 amd64} unless @ARCHES;

View File

@ -49,7 +49,7 @@ do
DIR = ""
}' | sort | uniq >> $OUT
;;
alpha|amd64|arm|armel|hppa|i386|ia64|m68k|mips|mipsel|powerpc|s390|sparc)
alpha|amd64|arm|armel|hppa|i386|ia64|m68k|mips|mipsel|powerpc|s390|sparc|kfreebsd-amd64|kfreebsd-i386)
FILES=`find $LOCATIONS -name Packages.gz | grep binary-$ARCH`
echo "Using MD5 sums from Packages files:"
echo $FILES