IGNOREPATH=/etc:/home:/var:/dev:/boot:/root:/tmp:/usr/local:/bin:/sbin:/tmp:/mnt:/usr/src
STRIPLIB=n
STRIPBIN=n

VERSION=2.4.29
IBMPATCH=24
PROGNAME="Linux kernel $VERSION source"
DESC="\
kernel-modules (Linux kernel modules)                                  \n\
                                                                       \n\
A kernel module is a piece of object code that can be dynamically      \n\
loaded into the Linux kernel to provide new kernel functions.  Most of \n\
these modules provide support for devices such as CD-ROM drives, tape  \n\
drives, and ethernet cards.  You can choose which modules to load by   \n\
editing /etc/rc.d/rc.modules."

BUILD=2
MAINTAINER="Mark Post <mark.post@eds.com>"
SOURCE=ftp://ftp.us.kernel.org/pub/linux/kernel/v2.4
PKGNAME=kernel-modules-$VERSION-s390-$BUILD
TAG=REC

compile() {
   mkdir -p usr/src/
   cd usr/src/
   echo "Unpacking the tarball.  Please wait..."
   tar -xyf $CWD/../kernel-source/linux-$VERSION.tar.bz2

   chown -R root.root linux-$VERSION

   ( cd linux-$VERSION
echo ----- s390-linux-$VERSION-$IBMPATCH-june2003.diff.gz
     zcat $CWD/../kernel-source/s390-linux-$VERSION-$IBMPATCH-june2003.diff.gz | patch -p1
   )

   ## setup source tree
   ( cd linux-$VERSION
     make mrproper
     cp $CWD/../kernel-source/s390.default.$VERSION.config .config
     make oldconfig
     make dep
     make clean
     make -j3 modules
   )
}

install() {
   cd $TMP/usr/src
   ( cd linux-$VERSION
     make modules_install INSTALL_MOD_PATH=/package-kernel-modules
   )

   ( mkdir -p /package-kernel-modules/etc/rc.d/
     cd /package-kernel-modules/etc/rc.d/
     cp $CWD/rc.modules.new .
     cat $CWD/rc.modules.diff | patch -p0 --verbose
   )

#  ( cd /package-kernel-modules/lib/modules/$VERSION/kernel/drivers/s390/char/
#    tar -zxvf $CWD/tape3590-$VERSION-s390-june2003.tar.gz "*.o"
#    mv tape3590-$VERSION-s390-june2003.o tape3590.o
#  )

   (
     cd /package-kernel-modules/lib/modules/$VERSION
     rm -rf build ; ln -s /usr/src/linux-$VERSION build
     find . -type f -name "*.o" | xargs gzip -9
   )

   ( cd /package-kernel-modules
     tar -zxvf $CWD/../../../extra/cpint-1.1.6/cpint-1.1.6_${VERSION}-s390-1.tgz \
            lib/modules/$VERSION/misc/cpint.o.gz
     chown -R root.root lib/modules/
   )

   depmod -a -b /package-kernel-modules $VERSION
}

special() {
   cd $PKG
   mv package-kernel-modules/* ./
   rmdir package-kernel-modules

   cd $CTL
   cat $CWD/slack-desc > slack-desc

   sed -e 's%package-kernel-modules/%%g' doinst.sh > doinst.sh.new
   cat doinst.sh.new > doinst.sh
   rm doinst.sh.new

   cat $CWD/config.sh >> doinst.sh
   echo config etc/rc.d/rc.modules.new >> doinst.sh

   cat << EOF >> doinst.sh
# A good idea whenever kernel modules are added or changed:
if [ -x sbin/depmod ]; then
  chroot . /sbin/depmod -a $VERSION 1> /dev/null 2> /dev/null
fi
EOF
}

