]> git.pld-linux.org Git - packages/anaconda.git/blobdiff - anaconda-mk-images
- no more
[packages/anaconda.git] / anaconda-mk-images
index db0a704d41d9d5e1279b52d4b7a2e47fd9819775..369feb7c08555fbbf36a083733921dd73a201235 100644 (file)
@@ -2,7 +2,7 @@
 LANG=C
 
 PATH=$PATH:/sbin:/usr/sbin
-IMAGEUUID=$(date +%Y%m%d%H%M)
+IMAGEUUID=$(date +%Y%m%d%H%M).$(uname -i)
 
 usage () {
        echo "usage: mk-images <pkgsrc> <toplevel> <template> <imgdir> <buildarch> <productname> <version> [<productpath>]"
@@ -28,9 +28,22 @@ TOPDIR=$(echo $0 | sed "s,/[^/]*$,,")
 if [ $TOPDIR = $0 ]; then
     $TOPDIR="."
 fi
-
 TOPDIR=$(cd $TOPDIR; pwd)
 
+# modules that are needed.  this is the generic "needed for every arch" stuff
+COMMONMODS="fat vfat nfs sunrpc lockd floppy cramfs loop edd pcspkr squashfs"
+USBMODS="ohci-hcd uhci-hcd ehci-hcd hid mousedev usb-storage sd_mod sr_mod ub"
+FIREWIREMODS="ieee1394 ohci1394 sbp2"
+IDEMODS="ide-cd"
+SCSIMODS="sr_mod sg st sd_mod scsi_mod iscsi_tcp"
+FSMODS="fat msdos vfat ext3 reiserfs jfs xfs"
+LVMMODS="dm-mod dm-zero dm-snapshot dm-mirror"
+RAIDMODS="md raid0 raid1 raid5 raid6"
+SECSTAGE="$RAIDMODS $LVMMODS $FSMODS $IDEMODS $SCSIMODS"
+BTERMMODS="vga16fb"
+PCMCIASOCKMODS="yenta_socket i82365 tcic pcmcia"
+INITRDMODS="$USBMODS $FIREWIREMODS $IDEMODS $SCSIMODS $FSMODS $LVMMODS $RAIDMODS $BTERMMODS $COMMONMODS $PCMCIASOCKMODS =scsi =net"
+
 # Set, verify, and create paths
     KERNELPATH=$1
     TOPDESTPATH=$2
@@ -42,8 +55,7 @@ TOPDIR=$(cd $TOPDIR; pwd)
     IMGPATH=$4
     KERNELBASE=/tmp/updboot.kernel.$$
     MODDEPS=$KERNELBASE/moddeps
-    MODMAPS=$KERNELBASE/modules.pcimap
-    USBMAPS=$KERNELBASE/modules.usbmap
+    MODALIAS=$KERNELBASE/modules.alias
     BUILDARCH=$5
 
     KERNELNAME=vmlinuz
@@ -70,18 +82,17 @@ TOPDIR=$(cd $TOPDIR; pwd)
        CRAMBS=""
     fi
 
-    if [ ! -d "$1" ]; then
-       LATEST="rsh porkchop latest --arch $BUILDARCH"
-    else
-       LATEST=findPackage
-    fi
-
     if [ $BUILDARCH = x86_64 -o $BUILDARCH = s390x ]; then
        LIBDIR=lib64
     else
        LIBDIR=lib
     fi
 
+       FONTARCH=${BASEARCH}
+       if [ $FONTARCH = i686 ]; then
+               FONTARCH=i386
+       fi
+
     rm -rf $IMAGEPATH
     rm -rf $FULLMODPATH
     rm -rf $FINALFULLMODPATH
@@ -92,16 +103,9 @@ TOPDIR=$(cd $TOPDIR; pwd)
     mkdir -p $KERNELBASE
     mkdir -p $INSTIMGPATH
 
-    FONTARCH=${BASEARCH}
-    if [ $FONTARCH = i686 ]
-    then
-           FONTARCH=i386
-    fi
 # Stuff that we need
-    TRIMPCITABLE=$IMGPATH/usr/lib/anaconda-runtime/trimpcitable
-    TRIMMODMAP=$IMGPATH/usr/lib/anaconda-runtime/trimmodmap
+    TRIMMODALIAS=$IMGPATH/usr/lib/anaconda-runtime/trimmodalias
     TRIMPCIIDS=$IMGPATH/usr/lib/anaconda-runtime/trimpciids
-    TRIMUSBMAP=$IMGPATH/usr/lib/anaconda-runtime/trimusbmap
     GETKEYMAPS=$IMGPATH/usr/lib/anaconda-runtime/getkeymaps
     KEYMAPS=/tmp/keymaps-$BUILDARCH.$$
     SCREENFONT=$IMGPATH/usr/lib/anaconda-runtime/screenfont-${FONTARCH}.gz
@@ -112,15 +116,16 @@ TOPDIR=$(cd $TOPDIR; pwd)
     LOADERBINDIR=$IMGPATH/usr/lib/anaconda-runtime/loader
     BOOTDISKDIR=$IMGPATH/usr/lib/anaconda-runtime/boot
     LANGTABLE=$IMGPATH/usr/lib/anaconda/lang-table
-    PCITABLE=$IMGPATH/usr/share/hwdata/pcitable
     PCIIDS=$IMGPATH/usr/share/hwdata/pci.ids
+    XDRIVERS=$IMGPATH/usr/share/hwdata/videoaliases
+    XDRIVERDESCS=$IMGPATH/usr/share/hwdata/videodrivers
     CACHE=$KERNELBASE/.cache
     MODULESUSED=$KERNELBASE/modules-used
 
     touch $MODULESUSED
 
-    REQUIREMENTS="$TRIMPCITABLE $TRIMMODMAP $TRIMPCIIDS $PCITABLE $PCIIDS $GETMODDEPS $MODINFO
-                 $FILTERMODDEPS $LANGTABLE $GETKEYMAPS $TRIMUSBMAP"
+    REQUIREMENTS="$TRIMMODALIAS $TRIMPCIIDS $PCIIDS $XDRIVERDESCS $GETMODDEPS $MODINFO
+                 $FILTERMODDEPS $LANGTABLE $GETKEYMAPS"
 
     dieLater=
     for n in $REQUIREMENTS; do
@@ -186,8 +191,7 @@ rundepmod () {
 
     $FAKEARCH /sbin/depmod -a -F $KERNELROOT/boot/System.map-$version \
             -b $KERNELROOT $version
-    mv $KERNELROOT/lib/modules/$version/modules.pcimap $MODMAPS
-    mv $KERNELROOT/lib/modules/$version/modules.usbmap $USBMAPS
+    mv $KERNELROOT/lib/modules/$version/modules.alias $MODALIAS
 
     cat $KERNELROOT/lib/modules/$version/modules.dep | $FILTERMODDEPS > $final 
 }
@@ -203,15 +207,6 @@ getmoddeps () {
     mv $final.foo $final
 }
 
-padfile () {
-    PS_FILE=$1
-    PS_SIZE=$2
-
-    size=`cat $PS_FILE | wc -c`
-    filler=`expr $PS_SIZE "*" 1024 - $size`
-    dd if=/dev/zero bs=$filler count=1 >> $PS_FILE 2> /dev/null
-}
-
 intcopymodules () {
     dir=$2
 
@@ -305,7 +300,7 @@ makemoduleball() {
     MMB_DIR=$1
     MMB_MODULESET=$(resdeps $2)
 
-    rm -rf $MMB_DIR/modules $MMB_DIR/$MMB_NAME $MMB_DIR/modules.dep \
+    rm -rf $MMB_DIR/modules $MMB_DIR/$MMB_NAME $MMB_DIR/modules.dep $MMB_DIR/modules.alias \
           $MMB_DIR/modules.pcimap $MMB_DIR/pcitable $MMB_DIR/$MMB_MODINFO \
           $MMB_DIR/pci.ids
     mkdir -p $MMB_DIR/modules
@@ -319,21 +314,12 @@ makemoduleball() {
 
     getmoddeps "$(find . -name *.ko)" ../modules.dep
 
-    # create the pcitable
-    $TRIMPCITABLE ignore $(find . -name *.ko -exec basename {} \;) < $PCITABLE > ../pcitable
+    # create the modules.alias file
+    $TRIMMODALIAS $(find . -name *.ko -exec basename {} \;) < $MODALIAS > ../modules.alias
     
-    # create the modules.pcimap
-    $TRIMMODMAP $PCITABLE $(find . -name *.ko -exec basename {} \;) < $MODMAPS > ../modules.pcimap
-
-    # create the modules.usbmap
-    $TRIMUSBMAP $(find . -name *.ko -exec basename {} \;) < $USBMAPS > ../modules.usbmap
-    # remove a zero-byte modules.usbmap
-    if [ "$(ls -s ../modules.usbmap |cut -f 1 -d ' ')" = "0" ]; then
-       rm -f ../modules.usbmap
-    fi
-    # create the pci.ids
+    # create the pci.ids, from modules.alias and the X driver aliases
     awk '!/^(\t\t|#)/ { print ;if ($0 == "ffff  Illegal Vendor ID") nextfile; }' < $PCIIDS | \
-      $TRIMPCIIDS ../pcitable ../modules.pcimap > ../pci.ids
+      $TRIMPCIIDS ../modules.alias $XDRIVERS/* > ../pci.ids
 
     if [ -n "$MMB_DD" ]; then
        echo $MMB_DD > $MMB_DIR/rhdd
@@ -346,26 +332,6 @@ makemoduleball() {
     popd  > /dev/null
 }
 
-makemainmodules() {
-    modlist=`expandModuleSet "$1"`
-
-    if [ -n "$2" ]; then
-       extraargs="--name $2"
-    fi
-
-    rm -rf $FULLMODPATH
-    rm -rf $FINALFULLMODPATH
-
-    if [ "$BUILDARCH" = "s390" -o "$BUILDARCH" = "s390x" ]; then
-       mkdir -p $KERNELROOT/lib/modules/misc
-       find $KERNELROOT/lib/modules/*/kernel/drivers/s390/ -name "*.ko" \
-          -exec cp -f {} $KERNELROOT/lib/modules/misc \;
-    fi
-    makemoduleball $extraargs $FULLMODPATH "$modlist"
-    cp -ar $FULLMODPATH $FINALFULLMODPATH
-    rm -rf $FULLMODPATH
-}
-
 makeproductfile() {
     root=$1
 
@@ -474,12 +440,12 @@ EOF
     chmod 600 $MBD_DIR/etc/ssh/sshd_config
 
     # copy in the binaries
-    cp -f $IMGPATH/usr/bin/login $MBD_DIR/sbin/login
+    cp -f $IMGPATH/bin/login $MBD_DIR/sbin/login
     cp -f $IMGPATH/usr/sbin/sshd $MBD_DIR/sbin/sshd
     cp -f $IMGPATH/usr/sbin/xinetd $MBD_DIR/sbin/xinetd
     cp -f $IMGPATH/usr/sbin/in.telnetd $MBD_DIR/sbin/in.telnetd
-    cp -f $IMGPATH/usr/bin/bash $MBD_DIR/sbin/bash
-    cp -f $IMGPATH/usr/bin/busybox $MBD_DIR/sbin/busybox
+    cp -f $IMGPATH/bin/bash $MBD_DIR/sbin/bash
+    cp -f $IMGPATH/bin/busybox $MBD_DIR/sbin/busybox
     
     # make some symlinks
     ln -sf bash $MBD_DIR/bin/sh
@@ -547,7 +513,6 @@ EOF
 
 makeinitrd() {
     EXTRAINITRDPATH=""
-    PCMCIA=""
     INITRDSIZE=""
     KEEP=""
     PADSIZE=""
@@ -556,16 +521,11 @@ makeinitrd() {
     MODULEBALLNAME="modules.cgz"
     MYLANGTABLE=$LANGTABLE
     MYLOADERTR=loader.tr
-    BOGL=yes
     while [ x$(echo $1 | cut -c1-2) = x"--" ]; do
        if [ $1 = "--initrdto" ]; then
            EXTRAINITRDPATH=$2
            shift; shift
            continue
-       elif [ $1 = "--pcmcia" ]; then
-           PCMCIA=yes
-           shift
-           continue
        elif [ $1 = "--keep" ]; then
            KEEP=yes
            shift
@@ -586,10 +546,6 @@ makeinitrd() {
            MODULEBALLNAME=$2
            shift; shift
            continue
-       elif [ $1 = "--nobogl" ]; then
-           BOGL=""
-           shift
-           continue
        fi
        echo "Unknown option passed to makeinitrd"
        exit 1
@@ -651,8 +607,10 @@ EOF
     echo $arch > $MBD_DIR/etc/arch
 
     install -s -m 755 $LOADERBINDIR/$LOADERBIN $MBD_DIR/sbin/loader
+    strip $MBD_DIR/sbin/loader
     if [ "$BUILDARCH" != "s390" -a "$BUILDARCH" != "s390x" ]; then
        install -s -m 755 $LOADERBINDIR/init $MBD_DIR/sbin
+       strip $MBD_DIR/sbin/init
        ln -s ./init $MBD_DIR/sbin/shutdown
        ln -s ./init $MBD_DIR/sbin/halt
        ln -s ./init $MBD_DIR/sbin/poweroff
@@ -676,15 +634,6 @@ EOF
 
     makeproductfile $MBD_DIR
 
-    if [ -n "$BOGL" ]; then
-       install -m 644 $LOADERBINDIR/font.bgf.gz $MBD_DIR/etc
-    fi
-
-    if [ -n "$PCMCIA" ]; then
-       mkdir -p $MBD_BOOTTREE/etc
-       cp -a $KERNELROOT/etc/pcmcia $MBD_DIR/etc
-    fi
-
     for n in insmod rmmod modprobe; do
        ln -s loader $MBD_DIR/sbin/$n
     done
@@ -693,6 +642,8 @@ EOF
     ln -s /sbin/init $MBD_DIR/init
     ln -s /proc/mounts $MBD_DIR/etc/mtab
     ln -s sbin $MBD_DIR/bin
+    mkdir -p $MBD_DIR/var/lib
+    ln -s ../../tmp $MBD_DIR/var/lib/xkb
 
     # s390/s390x need sshd/telnet setup
     if [ "$BUILDARCH" = "s390" -o "$BUILDARCH" = "s390x" ]; then
@@ -721,78 +672,9 @@ EOF
     fi
 }
 
-makebootdisk() {
-    BOOTDISKSIZE=""
-    EXTRAKERNELPATH=""
-    INITRDFLAGS=""
-    MBD_FILENAME=""
-    INITRDFILE=""
-    while [ x$(echo $1 | cut -c1-2) = x"--" ]; do
-       if [ $1 = "--bootdisksize" ]; then
-            BOOTDISKSIZE=$2
-            shift; shift
-            continue
-       elif [ $1 = "--kernelto" ]; then
-           EXTRAKERNELPATH=$2
-           shift; shift
-           continue
-       elif [ $1 = "--initrdflags" ]; then
-           INITRDFLAGS=$2
-           shift; shift
-           continue
-       elif [ $1 = "--initrd" ]; then
-           INITRDFILE=$2
-           shift; shift
-           continue
-       elif [ $1 = "--imagename" ]; then
-           MBD_FILENAME=$IMAGEPATH/$2
-           shift; shift
-           continue
-       fi
-       echo "Unknown option passed to makebootdisk"
-       exit 1
-    done
-
-    if [ -z "$MBD_FILENAME" ]; then
-       echo "No imagename passed"
-       exit 1
-    fi
-
-    if [ -n "$INITRDFILE" ]; then
-       MBD_FSIMAGE="$INITRDFILE"
-    elif [ -n "$INITRDFLAGS" ]; then
-       eval makeinitrd --keep $INITRDFLAGS
-    fi
-
-    mkdir -p $MBD_BOOTTREE
-
-    # provided by the mk-image.$ARCH file
-    prepareBootImage
-
-    left=$(df $MBD_BOOTTREE | tail +2)
-    left=$(echo $left | awk '{print $4'})
-
-    umount $MBD_BOOTTREE
-
-    if [ -n "$EXTRAKERNELPATH" ]; then
-       mkdir -p `dirname $EXTRAKERNELPATH`
-       cp -f $KERNELROOT/$KERNELDIR/${KERNELNAME}-* $EXTRAKERNELPATH
-    fi
-
-    mkdir -p `dirname $MBD_FILENAME`
-    rm -f $MBD_FILENAME
-    mv -f $MBD_TMPIMAGE $MBD_FILENAME
-    rm -rf $MBD_TMPIMAGE $MBD_MNTPOINT $MBD_BOOTTREE
-    if [ -z "$INITRDFILE" ]; then
-       rm -f $MBD_FSIMAGE
-    fi
-
-    echo "Wrote $MBD_FILENAME (${left}k free)"
-}
-
 makeinstimage () {
     imagename=$1
-    modlist=$(expandModuleSet "$2")
+    type=$2
     tmpdir=/tmp/instimage.dir.$$
 
     rm -rf $tmpimage $tmpdir
@@ -800,16 +682,16 @@ makeinstimage () {
 
     mkdir -p $tmpdir
     (cd $INSTIMGTEMPLATE; find . | cpio --quiet -p $tmpdir)
-    if [ "$BUILDARCH" = "s390" -o "$BUILDARCH" = "s390x" ]; then
-       mkdir -p $KERNELROOT/lib/modules/misc
-       find $KERNELROOT/lib/modules/*/kernel/drivers/s390/ -name "*.ko" \
-         -exec cp -f {} $KERNELROOT/lib/modules/misc \;
-    fi
-    makemoduleball $tmpdir/modules "$modlist"
     makeproductfile $tmpdir
 
-    echo "Running mkcramfs $CRAMBS $tmpdir $INSTIMGPATH/${imagename}2.img"
-    mkcramfs $CRAMBS $tmpdir /tmp/${imagename}2.img.$$
+    if [ -z "$type" -o "$type" = "cramfs" ]; then 
+        echo "Running mkcramfs $CRAMBS $tmpdir $INSTIMGPATH/${imagename}2.img"
+        mkfs.cramfs $CRAMBS $tmpdir /tmp/${imagename}2.img.$$
+    elif [ "$type" = "squashfs" ]; then
+        echo "Running mksquashfs $tmpdir /tmp/${imagename}2.img -all-root"
+        mksquashfs $tmpdir /tmp/${imagename}2.img.$$ -all-root
+        chmod 0644 /tmp/${imagename}2.img.$$
+    fi
     cp /tmp/${imagename}2.img.$$ $INSTIMGPATH/${imagename}2.img
     size=$(ls -l $INSTIMGPATH/${imagename}2.img | awk '{print $5}')
     size=$(expr $size / 1024)
@@ -817,18 +699,6 @@ makeinstimage () {
     rm -rf $tmpdir
 }
 
-findloopdevice () {
-    if [ -z "$1" ]; then
-       echo "usage: findloopdevice image"
-       exit 1
-    fi
-
-    for devnum in 0 1 2 3 4 5 6 7 8; do
-        if losetup /dev/loop$devnum $1 2>/dev/null ; then break; fi
-    done
-    echo /dev/loop$devnum
-}
-
 makemainimage () {
     imagename=$1
     type=$2
@@ -854,10 +724,16 @@ makemainimage () {
         makeproductfile $mmi_mntpoint
         umount $mmi_mntpoint
         rmdir $mmi_mntpoint
+    elif [ $type = "squashfs" ]; then
+        makeproductfile $IMGPATH
+        echo "Running mksquashfs $IMGPATH $mmi_tmpimage -all-root"
+        mksquashfs $IMGPATH $mmi_tmpimage -all-root
+        chmod 0644 $mmi_tmpimage
+        SIZE=$(expr `cat $mmi_tmpimage | wc -c` / 1024)
     elif [ $type = "cramfs" ]; then
         makeproductfile $IMGPATH
         echo "Running mkcramfs $CRAMBS $IMGPATH $mmi_tmpimage"
-        mkcramfs $CRAMBS $IMGPATH $mmi_tmpimage
+        mkfs.cramfs $CRAMBS $IMGPATH $mmi_tmpimage
         SIZE=$(expr `cat $mmi_tmpimage | wc -c` / 1024)
     fi
     
@@ -869,71 +745,17 @@ makemainimage () {
     rm $mmi_tmpimage
 }
 
-makedriverdisk () {
-    PADSIZE=""
-
-    while [ x$(echo $1 | cut -c1-2) = x"--" ]; do
-       if [ $1 = "--padsize" ]; then
-           PADSIZE=$2
-           shift; shift
-           continue
-       fi
-
-       echo "Unknown option passed to makedriverdisk"
-       exit 1
-    done
-
-    modlabel=$1
-    diskname=$2
-    modlist=$(expandModuleSet "$3")
-    diskpath=/tmp/makedriverdisk.$$
-
-    rm -rf $diskpath
-    mkdir -p $diskpath
-
-    makemoduleball --dd "$modlabel" $diskpath "$modlist"
-
-    size=$(expr 60 + $(du -sk $diskpath | awk '{print $1}'))
-    if [ $size -lt 57 ]; then
-       size=64
-    fi
-
-    dd if=/dev/zero of=/tmp/$diskname.img bs=1k count=$size 2> /dev/null
-    /sbin/mke2fs -q -F -i 4096 /tmp/$diskname.img  > /dev/null 2>/dev/null
-    /sbin/tune2fs -c0 -i0 /tmp/$diskname.img >/dev/null
-    mkdir -p /tmp/mkdd.$$
-    mount -t ext2 -o loop /tmp/$diskname.img /tmp/mkdd.$$
-    rmdir /tmp/mkdd.$$/lost+found
-    (cd $diskpath; tar cSpf - .) | (cd /tmp/mkdd.$$; tar xSpf -)
-    DIE=""
-    diff -upr $diskpath /tmp/mkdd.$$ > /dev/null 2>&1
-    if [ $? != 0 ]; then
-       echo copy to disk image failed
-       ls -l /tmp/mkdd.$$
-       echo "disk size: $size"
-       ls -l $diskpath
-       DIE=1
-    fi
-    umount /tmp/mkdd.$$
-    rm -rf /tmp/mkdd.$$
-
-    if [ -n "$DIE" ]; then
-       kill -9 $$
-    fi
-
-    cp /tmp/${diskname}.img $IMAGEPATH/${diskname}.img
-    rm /tmp/${diskname}.img
-    rm -rf $diskpath
-
-    size=$(ls -l $IMAGEPATH/${diskname}.img | awk '{ print $5 }')
-    size=$(expr $size / 1024)
-
-    echo "Wrote $IMAGEPATH/${diskname}.img (${size}k)"
-    echo "${diskname}.img - ${modlabel}" >> $IMAGEPATH/README
+makeSecondStage() {
+    echo "Building minstg.img"
+    makeinstimage "minstg" "squashfs"
+    [ $? = 0 ] || exit 1
+    echo "Building stage2.img"
+    makemainimage "stage2" "squashfs"
+    [ $? = 0 ] || exit 1
+}
 
-    if [ -n "$PADSIZE" ]; then
-       padfile $IMAGEPATH/${diskname}.img $PADSIZE
-    fi
+doPostImages() {
+   /bin/true
 }
 
 # source the architecture specific mk-images file so we can call functions
@@ -942,71 +764,52 @@ if [ ${BUILDARCH} = s390x ]; then
     # FIXME: this is a bad hack for s390, but better than copying for now
     source $TOPDIR/mk-images.s390
 elif [ ${BUILDARCH} = i686 ]; then
-    source $TOPDIR/mk-images.i386
+       source $TOPDIR/mk-images.i386
 else
     source $TOPDIR/mk-images.${BUILDARCH}
 fi
 
 # Find the kernel, unpack it, and verify it
-vertag="BOOT"
+kerneltags="kernel"
 if [ "$BUILDARCH" = "ppc" -o "$BUILDARCH" = "ppc64" ]; then
     arches="ppc64pseries ppc64 ppc64iseries ppc"
 elif [ "$BUILDARCH" = "i686" ]; then
     arches="i386 i586 i686"
+    kerneltags="kernel kernel-xenU"
+elif [ "$BUILDARCH" = "x86_64" ]; then
+    arches="x86_64"
+    kerneltags="kernel kernel-xenU"
 else
     arches="$BUILDARCH"
 fi
+
 foundakernel=""
 for KERNELARCH in $arches; do
-  for kernelvers in $vertag; do
-    kpackage=$($LATEST $KERNELPATH kernel-$kernelvers)
-    if [ ! -f "$kpackage" ]; then
-       echo "kernel-$kernelvers does not exist for $KERNELARCH -- using kernel package"
-       kpackage=$($LATEST $KERNELPATH kernel)
-       kernelvers=""
-    fi
-
+  for kernelvers in $kerneltags; do
+    kpackage=$(findPackage $KERNELPATH $kernelvers)
     if [ "$KERNELARCH" = "i586" -a ! -f "$kpackage" ]; then
        echo "No i586 kernel, trying i686..."
        KERNELARCH="i686"
-       kpackage=$($LATEST $KERNELPATH kernel)
+       kpackage=$(findPackage $KERNELPATH $kernelvers)
     fi
 
     if [ ! -f "$kpackage" ]; then
-       echo "kernel doesn't exist for $KERNELARCH.  skipping arch"
+       echo "kernel ($kernelvers) doesn't exist for $KERNELARCH.  skipping"
        continue
     fi
 
     KERNELROOT=$KERNELBASE/$KERNELARCH
-    mkdir -p $KERNELROOT
+    mkdir -p $KERNELROOT/lib/modules/misc
 
     foundakernel="yes"
 
-    ppackage=$($LATEST $KERNELPATH hwdata)
-    if [ ! -f "$ppackage" ]; then
-       ppackage=""
-    fi
+    if [ "${kernelvers}" = "kernel-xenU" ]; then kerneltag="xenU" ; fi
 
-    version=$(rpm --nodigest --nosignature --qf '%{VERSION}-%{RELEASE}' -qp $kpackage)${kernelvers}
+    version=$(rpm --nodigest --nosignature --qf '%{VERSION}-%{RELEASE}' -qp $kpackage)${kerneltag}
     arch=$(rpm --nodigest --nosignature --qf '%{ARCH}\n' -qp $kpackage)
     echo "unpacking $kpackage.$arch"
 
     rpm2cpio $kpackage | (cd $KERNELROOT; cpio --quiet -iumd)
-#    mv -f $KERNELROOT/usr/lib/bootdisk/lib $KERNELROOT/
-#    mv -f $KERNELROOT/usr/lib/bootdisk/boot $KERNELROOT/
-#    rm -rf $KERNELROOT/usr/lib/bootdisk
-    mkdir -p $KERNELROOT/lib/modules/misc
-    for kaddpackage in pcmcia
-    do
-        thepackage=$($LATEST $KERNELPATH kernel-${kaddpackage})
-        if [ -f $thepackage ]; then 
-            echo "unpacking $thepackage.$arch"
-           rpm2cpio $thepackage | (cd $KERNELROOT; cpio --quiet -iumd)
-        fi
-    done
-    if [ ! -z $ppackage ]; then 
-       rpm2cpio $ppackage | (cd $KERNELROOT; cpio --quiet -iumd etc/pcmcia/* ./etc/pcmcia/*)
-    fi
 
     if [ ! -d "$KERNELROOT/lib/modules/$version" ]; then
        echo "$KERNELROOT/lib/modules/$version is not a valid modules directory" 2>&1
@@ -1018,12 +821,6 @@ for KERNELARCH in $arches; do
        exit 1
     fi
 
-    if [ -f $KERNELROOT/etc/pcmcia/config ]; then
-       # This gets everything mentioned in /etc/pcmcia/config.  We probably
-       # want to do some module-info stuff here too
-       PCMCIAMODULES=$((perl -e 'while (<>) { s/^.*class.*(network|scsi|ide).*module +"// || next; s/[" ]//g; s/,/\n/g; print }' $KERNELROOT/etc/pcmcia/config | sed 's/\.ko//g') | sort -u)
-    fi
-
     allmods=$(find $KERNELROOT/lib/modules/$version -name *.ko)
 
     rundepmod "$allmods" $MODDEPS
@@ -1034,6 +831,8 @@ for KERNELARCH in $arches; do
   done
 done
 
+doPostImages
+
 # do some clean up before making the cramfs of the second stage
 rm -rf $INSTIMGTEMPLATE/usr/lib/anaconda-runtime $INSTIMGTEMPLATE/usr/lib/syslinux $IMGPATH/usr/lib/syslinux
 
This page took 0.100714 seconds and 4 git commands to generate.