# Template file for 'kernel26' pkgname=kernel26 version=2.6.27.3 wrksrc="linux-$version" distfiles="http://www.kernel.org/pub/linux/kernel/v2.6/linux-$version.tar.bz2" build_style=gnu_makefile make_build_target="bzImage modules" make_install_target="modules_install INSTALL_MOD_PATH=$XBPS_DESTDIR/$pkgname-$version" short_desc="The Linux kernel (2.6 branch)" maintainer="Juan RP " checksum=52d9526ea8df33c9fab3df4564b0147b1866c76b0fd31474b92592567384a02c long_desc=" This package provides the linux kernel image and kernel modules from the 2.6 branch." build_depends="perl-5.10.0 module-init-tools-3.5" pre_build() { # If there's a file called kernel26--dotconfig, use it to # configure the kernel; otherwise run the menuconfig target. local arch= if [ "$xbps_machine" != "x86_64" ]; then arch=i386 else arch=x86_64 fi if [ -f $XBPS_TEMPLATESDIR/kernel26-$arch-dotconfig ]; then echo "=> Detected a .config file for your arch, using it." cp -f $XBPS_TEMPLATESDIR/kernel26-$arch-dotconfig \ $wrksrc/.config make oldconfig else make menuconfig fi } post_install() { local destdir=$XBPS_DESTDIR/$pkgname-$version local incdirs="acpi asm-generic asm-x86 config linux math-emu media \ net pcmcia scsi sound video" local _archs="alpha arm arm26 avr32 blackfin cris frv h8300 ia64 m32r \ m68k* mips mn10300 parisc powerpc ppc s390 sh* sparc* \ um v850 xtensa" # # Install bzImage, vmlinux and copy necessary stuff to build packages # that require this. This is based off of kernel26 pkgbuild from # Archlinux. # install -d $destdir/lib $destdir/boot cd $wrksrc || exit 1 install -m 644 arch/x86/boot/bzImage $destdir/boot/vmlinuz-$version install -m 644 System.map $destdir/boot/System.map-$version install -D -m 644 Makefile $destdir/usr/src/linux-$version/Makefile install -D -m 644 kernel/Makefile \ $destdir/usr/src/linux-$version/kernel/Makefile install -D -m 644 .config $destdir/usr/src/linux-$version/.config for i in ${incdirs}; do cp -a include/$i $destdir/usr/src/linux-$version/include done install -D -m 644 Module.symvers \ $destdir/usr/src/linux-$version/Module.symvers cp -a scripts $destdir/usr/src/linux-$version mkdir -p $destdir/usr/src/linux-$version/arch/x86/kernel if [ "$xbps_machine" != "x86_64" ]; then install -D -m 644 arch/x86/Makefile_32.cpu \ $destdir/usr/src/linux-$version/arch/x86/Makefile_32.cpu fi cp arch/x86/kernel/asm-offsets.s \ $destdir/usr/src/linux-$version/arch/x86/kernel install -m 644 vmlinux $destdir/usr/src/linux-$version/vmlinux for i in $(find . -name "Kconfig*"); do mkdir -p $destdir/usr/src/linux-$version/$(echo $i | sed 's|/Kconfig.*||') cp $i $destdir/usr/src/linux-$version/$i done cd $destdir/usr/src/linux-$version/include && ln -s asm-x86 asm cd $destdir/usr/src && ln -s linux-$version linux for arch in ${_arch}; do rm -rf $destdir/usr/src/linux-$version/arch/$arch done }