wok-undigest annotate ovzkernel/receipt @ rev 988
ovzkernel: do not build Documentation/video4linux
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sat Apr 20 12:02:14 2013 +0200 (2013-04-20) |
parents | aba8de3b2965 |
children | d69a9ebd2ff0 |
rev | line source |
---|---|
erjo@218 | 1 # SliTaz package receipt. |
erjo@218 | 2 |
erjo@218 | 3 PACKAGE="ovzkernel" |
erjo@218 | 4 VERSION="2.6.32" |
pascal@736 | 5 CATEGORY="base-system" |
erjo@218 | 6 SHORT_DESC="Vanilla Linux Kernel for OpenVZ" |
erjo@218 | 7 MAINTAINER="erjo@slitaz.org" |
erjo@218 | 8 DEPENDS="depmod" |
pascal@943 | 9 BUILD_DEPENDS="slitaz-toolchain perl wget" |
erjo@218 | 10 SOURCE="linux" |
pascal@940 | 11 TARBALL="$SOURCE-$VERSION.tar.xz" |
erjo@218 | 12 WEB_SITE="http://www.kernel.org/" |
pascal@955 | 13 WGET_URL="https://www.kernel.org/pub/linux/kernel/v${VERSION:0:3}/$TARBALL" |
erjo@218 | 14 PROVIDE="linux" |
erjo@218 | 15 EXTRAVERSION="-i686" |
erjo@218 | 16 |
erjo@218 | 17 # Rules to configure and make the package. |
erjo@218 | 18 compile_rules() |
erjo@218 | 19 { |
erjo@218 | 20 LOCALVERSION="-ovz" ; export LOCALVERSION |
erjo@218 | 21 |
erjo@218 | 22 cd $src |
erjo@218 | 23 |
erjo@218 | 24 [ -d OpenVZ ] && rm -rf openvz || mkdir OpenVZ |
erjo@218 | 25 |
pascal@974 | 26 zcat $stuff/patch-dzhanibekov.1-combined.gz > OpenVZ/patch-dzhanibekov.1-combined.u |
pascal@974 | 27 cp $stuff/*.ovz OpenVZ |
pascal@974 | 28 cp $stuff/*.sh OpenVZ |
erjo@218 | 29 |
erjo@218 | 30 # Apply patches |
erjo@218 | 31 while read patch_file; do |
erjo@218 | 32 echo "$patch_file" >> OpenVZ/patches |
pascal@974 | 33 #~ cp $stuff/$patch_file OpenVZ |
erjo@218 | 34 if [ -f done.$patch_file ]; then |
erjo@218 | 35 echo "Skipping $patch_file" |
erjo@218 | 36 continue |
erjo@218 | 37 fi |
erjo@218 | 38 echo "Apply $patch_file" |
erjo@218 | 39 patch -p1 < OpenVZ/$patch_file || exit 1 |
erjo@218 | 40 touch done.$patch_file |
erjo@218 | 41 done <<EOT |
erjo@218 | 42 patch-dzhanibekov.1-combined.u |
erjo@218 | 43 EOT |
pascal@977 | 44 sed -i 's/m elf_x86_64/m64/;s/m elf_i386/m32/' arch/x86/vdso/Makefile |
pascal@988 | 45 sed -i 's|video4linux/ ||' Documentation/Makefile |
pascal@977 | 46 |
erjo@218 | 47 # Prepare to build |
erjo@218 | 48 make mrproper |
erjo@218 | 49 |
erjo@218 | 50 # Copy old kernel config |
erjo@218 | 51 cp OpenVZ/linux-2.6.32-i686.config.ovz .config |
erjo@218 | 52 |
erjo@218 | 53 # Add LOCALVERSION support |
erjo@218 | 54 sed -i s/CONFIG_LOCALVERSION_AUTO.*/CONFIG_LOCALVERSION_AUTO=y/ .config |
erjo@218 | 55 |
erjo@218 | 56 # Disable Source Versio Control detection |
erjo@218 | 57 [ -f scripts/setlocalversion ] && mv scripts/setlocalversion scripts/setlocalversion.disabled |
erjo@218 | 58 |
erjo@218 | 59 # Apply kernel config and build |
pascal@955 | 60 yes '' | make oldconfig && \ |
erjo@218 | 61 make LOCALVERSION=${LOCALVERSION} prepare |
pascal@977 | 62 make bzImage && |
pascal@977 | 63 make modules && |
erjo@218 | 64 |
erjo@218 | 65 # Install modules and headers |
pascal@977 | 66 make INSTALL_MOD_PATH=$PWD/_pkg modules_install && |
erjo@218 | 67 make INSTALL_HDR_PATH=$PWD/_pkg/usr headers_install |
erjo@218 | 68 |
erjo@218 | 69 # Get kernel release |
erjo@218 | 70 KERNELRELEASE=$( cat include/config/kernel.release 2> /dev/null) ; export KERNELRELEASE |
erjo@218 | 71 |
erjo@218 | 72 [ -s arch/x86/boot/bzImage ] || return 1 |
erjo@218 | 73 mkdir -p $PWD/_pkg/boot 2> /dev/null |
erjo@218 | 74 cp -a arch/x86/boot/bzImage $PWD/_pkg/boot/vmlinuz-${KERNELRELEASE} |
erjo@218 | 75 |
erjo@218 | 76 # Compress all modules. |
erjo@218 | 77 $WOK/$PACKAGE/stuff/gztazmod.sh $PWD/_pkg/lib/modules/${KERNELRELEASE} |
erjo@218 | 78 ln System.map System.map-modules |
erjo@218 | 79 ln Module.symvers Module.symvers-modules |
erjo@218 | 80 } |
erjo@218 | 81 |
erjo@218 | 82 # Rules to gen a SliTaz package suitable for Tazpkg. |
erjo@218 | 83 genpkg_rules() |
erjo@218 | 84 { |
erjo@218 | 85 local path |
erjo@218 | 86 KERNELRELEASE=$( cat $src/include/config/kernel.release 2> /dev/null) |
erjo@218 | 87 path=$fs/lib/modules/${KERNELRELEASE}/kernel |
erjo@218 | 88 |
erjo@218 | 89 mkdir -p $fs/lib \ |
erjo@218 | 90 $fs/boot \ |
erjo@218 | 91 $fs/lib/modules/${KERNELRELEASE} \ |
erjo@218 | 92 $path \ |
erjo@218 | 93 $fs/etc/ovzkernel |
erjo@218 | 94 |
erjo@218 | 95 #cp -a $_pkg/lib/modules $fs/lib |
erjo@218 | 96 cp -a $_pkg/lib/firmware $fs/lib |
erjo@218 | 97 cp -a $_pkg/boot $fs/ |
erjo@218 | 98 |
erjo@218 | 99 #~ # Get the base modules |
erjo@218 | 100 export src |
erjo@218 | 101 export _pkg |
erjo@218 | 102 |
erjo@218 | 103 cp -a $src/include/config/kernel.release $fs/etc/ovzkernel |
erjo@218 | 104 cp -a $_pkg/lib/modules/${KERNELRELEASE}/mo* \ |
erjo@218 | 105 $fs/lib/modules/${KERNELRELEASE} |
erjo@218 | 106 |
erjo@218 | 107 $src/OpenVZ/list_modules.sh ${KERNELRELEASE} \ |
pascal@974 | 108 $(cat $stuff/modules-$VERSION.list) > $src/modules.list |
erjo@218 | 109 while read module; do |
erjo@218 | 110 dir=$(dirname $module) |
erjo@218 | 111 [ -d $path/$dir ] || mkdir -p $path/$dir |
erjo@218 | 112 cp -a $_pkg/lib/modules/${KERNELRELEASE}/kernel/$module $path/$dir |
erjo@218 | 113 done < $src/modules.list |
erjo@218 | 114 |
erjo@218 | 115 # Remove unresolved links |
erjo@218 | 116 rm -f $fs/lib/modules/${KERNELRELEASE}/build |
erjo@218 | 117 rm -f $fs/lib/modules/${KERNELRELEASE}/source |
erjo@218 | 118 # Cook all packages with a kernel module |
erjo@218 | 119 #~ for i in $(cd $WOK ; ls -d ovzkernel-*; cd -) |
erjo@218 | 120 #~ do |
erjo@218 | 121 #~ tazwok cook ${i%/receipt} |
erjo@218 | 122 #~ done |
erjo@218 | 123 } |
erjo@218 | 124 |
erjo@218 | 125 # Pre and post install commands for Tazpkg. |
erjo@218 | 126 post_install() |
erjo@218 | 127 { |
erjo@218 | 128 echo "Processing post-install commands..." |
erjo@218 | 129 KERNELRELEASE=$(cat $1/etc/ovzkernel/kernel.release) |
erjo@218 | 130 |
erjo@218 | 131 chroot "$1/" depmod -a ${KERNELRELEASE} |
erjo@218 | 132 |
erjo@218 | 133 # GRUB stuff. |
erjo@218 | 134 if [ -f "$1/boot/grub/menu.lst" ]; then |
erjo@218 | 135 root_dev=`cat $1/boot/grub/menu.lst | grep root= | sed 's/.*root=\([^ ]*\).*/\1/' | head -n 1` |
erjo@218 | 136 grub_dev=`cat $1/boot/grub/menu.lst | grep "root (" | head -n 1` |
erjo@218 | 137 # Add new kernel entry in case of upgrade for installed system. |
erjo@218 | 138 if ! grep -q ${KERNELRELEASE} $1/boot/grub/menu.lst; then |
erjo@218 | 139 cat >> $1/boot/grub/menu.lst << EOT |
erjo@218 | 140 |
erjo@218 | 141 title SliTaz GNU/Linux (Kernel ${KERNELRELEASE}) |
erjo@218 | 142 $grub_dev |
erjo@218 | 143 kernel /boot/vmlinuz-${KERNELRELEASE} root=$root_dev |
erjo@218 | 144 EOT |
erjo@218 | 145 fi |
erjo@218 | 146 # Display information message. |
erjo@218 | 147 cat <<EOT |
erjo@218 | 148 ---- |
erjo@218 | 149 GRUB is installed, these tree lines must be in your /boot/grub/menu.lst: |
erjo@218 | 150 |
erjo@218 | 151 title SliTaz GNU/Linux (Kernel ${KERNELRELEASE}) |
erjo@218 | 152 $grub_dev |
erjo@218 | 153 kernel /boot/vmlinuz-${KERNELRELEASE} root=$root_dev |
erjo@218 | 154 ---- |
erjo@218 | 155 EOT |
erjo@218 | 156 fi |
erjo@218 | 157 } |
erjo@218 | 158 |
erjo@218 | 159 clean_wok() |
erjo@218 | 160 { |
erjo@218 | 161 [ -d ${SOURCE}-${VERSION} ] && rm -rf $SOURCE-$VERSION |
erjo@218 | 162 } |