Commit fda33eac authored by Phil's avatar Phil

add kernel26-lts & modules

parent 1d4fea82
#
# Core Packages for Chakra, part of chakra-project.org
#
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
# include global config
source ../_buildscripts/${current_repo}-${_arch}-cfg.conf
_kernver=2.6.35-CHAKRA-LTS
pkgname=acpi_call-lts
pkgver=20101109
pkgrel=1
pkgdesc="A kernel module that enables you to call parameterless ACPI methods by writing the method name to /proc/acpi/call, e.g. to turn off discrete graphics card in a dual graphics environment (like NVIDIA Optimus)."
arch=('i686' 'x86_64')
url=("http://github.com/mkottman/acpi_call")
license=('GPL')
depends=('kernel26-lts' 'kernel26-lts-headers')
groups=("kernel26-lts-modules")
makedepends=('git')
install=acpi_call.install
source=(http://chakra-project.org/sources/acpi_call/acpi_call-${pkgver}.tar.xz)
md5sums=('79e7a95ebeff1df29201cae22067921f')
# create tarball: source PKGBUILD && mksource
mksource() {
git clone http://github.com/mkottman/acpi_call.git
pushd acpi_call
popd
tar -cvJf ${pkgname}-${pkgver}.tar.xz acpi_call/*
md5sum ${pkgname}-${pkgver}.tar.xz
}
build() {
cd ${srcdir}
## Build
rm -rf ${srcdir}/$pkgname-build
cp -r ${srcdir}/acpi_call ${srcdir}/$pkgname-build
cd ${srcdir}/$pkgname-build
make
}
package() {
cd ${srcdir}/$pkgname-build
install -d ${pkgdir}/usr/share/$pkgname || return 1
install -d ${pkgdir}/usr/bin || return 1
install -d ${pkgdir}/usr/share/$pkgname/doc || return 1
cp -a ${srcdir}/$pkgname-build/test_off.sh \
${pkgdir}/usr/share/$pkgname || return 1
ln -s /usr/share/$pkgname/test_off.sh \
${pkgdir}/usr/bin/test_off-lts.sh || return 1
install -Dm644 README \
${pkgdir}/usr/share/$pkgname/README
msg2 "Building module for $_kernver..."
# KDIR is necessary even when cleaning
make KDIR=/usr/src/linux-${_kernver} clean
make KDIR=/usr/src/linux-${_kernver}
install -D -m644 acpi_call.ko ${pkgdir}/lib/modules/${_kernver}/kernel/drivers/acpi/acpi_call.ko
sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" $startdir/acpi_call.install
}
post_install() {
KERNEL_VERSION='2.6.35-CHAKRA-LTS'
depmod $KERNEL_VERSION > /dev/null 2>&1
echo ""
echo "[+] modprobe acpi_call"
echo ">>> run /usr/bin/test_off.sh to test/view different acpi_call functions to see if it disables your secondary/hybrid video card"
}
post_upgrade() {
KERNEL_VERSION='2.6.35-CHAKRA-LTS'
depmod $KERNEL_VERSION > /dev/null 2>&1
echo ""
echo "[+] modprobe acpi_call"
echo ">>> run /usr/bin/test_off.sh to test/view different acpi_call functions to see if it disables your secondary/hybrid video card"
}
post_remove() {
KERNEL_VERSION='2.6.35-CHAKRA-LTS'
depmod $KERNEL_VERSION > /dev/null 2>&1
}
op=$1
shift
$op $*
#
# Chakra Packages for Chakra, part of chakra-project.org
#
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
# use ../fakeuname -r 2.6.35-CHAKRA-LTS ../makepkg
_kernver=`uname -r`
pkgname=broadcom-wl-lts
pkgver=5.100.82.38
pkgrel=1
pkgdesc='Broadcom 802.11abgn hybrid Linux networking device driver'
arch=('i686' 'x86_64')
url='http://www.broadcom.com/support/802.11/linux_sta.php'
license=('custom')
depends=('kernel26-lts')
makedepends=('kernel26-lts-headers')
groups=("kernel26-lts-modules")
[ "$CARCH" = 'x86_64' ] && ARCH=x86_64 || ARCH=x86_32
source=("http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_${ARCH}-v${pkgver//./_}.tar.gz"
'license.patch'
'semaphore.patch'
'mutex-sema.patch')
sha1sums=('3062830f86c5f1f41d8a4b26d6e0072dc989c7ba'
'ea7b67982ddc0f56fd3becb9914fd4458fe7d373'
'105f8e1d48ebe1f25d53859e5ab9326a27435c66'
'adf0138194ae204ad70ce44e98b2dc18ead4ae2a')
[ "$CARCH" = 'x86_64' ] && sha1sums[0]='6076de3bd8206b3e7b8bfc2eadbe3a97eec4e735'
install=install
build() {
cd "$srcdir"
patch -p1 < license.patch
patch -p1 < semaphore.patch
patch -p1 < mutex-sema.patch
make -C /lib/modules/$_kernver/build M=`pwd`
}
package() {
cd "$srcdir"
install -D -m 755 wl.ko "$pkgdir/lib/modules/$_kernver/kernel/drivers/net/wireless/wl.ko"
install -D -m 644 lib/LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" $startdir/*.install
}
post_install() {
KERNEL_VERSION=`pacman -Qf kernel26 | cut -c10-15 | sed 's/kernel26 //g'`-CHAKRA
#KERNEL_VERSION=$(uname -r)
depmod $KERNEL_VERSION
echo ""
echo "==> NOTE:"
echo "==> If the modules do not load at boot, remember add in your rc.conf:"
echo "==> MODULES=(lib80211 wl !b43 !ssb ...)"
echo ""
echo "==> And if you have problems with interfaces swapped, read the wiki:"
echo "==> http://wiki.archlinux.org/index.php/Broadcom_BCM4312#Interfaces_swapped_every_time"
}
post_upgrade() {
post_install
}
post_upgrade() {
KERNEL_VERSION='2.6.35-CHAKRA-LTS'
depmod -ae $KERNEL_VERSION > /dev/null 2>&1
}
post_install() {
cat <<EOF
==> If the modules do not load at boot, add to your /etc/rc.conf:
==> MODULES=(lib80211 wl !b43 !ssb ...)
==>
==> If you have problems with interfaces swapped, read:
==> http://wiki.archlinux.org/index.php/Broadcom_BCM4312#Interfaces_swapped_every_time
EOF
post_upgrade
}
diff -aur old/src/wl/sys/wl_linux.c new/src/wl/sys/wl_linux.c
--- old/src/wl/sys/wl_linux.c 2010-12-15 02:58:07.000000000 +0100
+++ new/src/wl/sys/wl_linux.c 2010-12-25 18:15:43.356676382 +0100
@@ -240,6 +240,7 @@
static int nompc = 0;
module_param(nompc, int, 0);
+MODULE_LICENSE("Mixed/Proprietary");
#ifdef quote_str
#undef quote_str
diff -aur old/src/wl/sys/wl_linux.c new/src/wl/sys/wl_linux.c
--- old/src/wl/sys/wl_linux.c 2010-12-25 18:17:33.333343048 +0100
+++ new/src/wl/sys/wl_linux.c 2010-12-25 18:21:05.856676376 +0100
@@ -483,7 +483,7 @@
#ifdef WL_ALL_PASSIVE
spin_lock_init(&wl->txq_lock);
#endif
- init_MUTEX(&wl->sem);
+ sema_init(&wl->sem, 1);
}
if (!(wl->wlc = wlc_attach((void *) wl, vendor, device, unit, wl->piomode,
diff -aur old/src/wl/sys/wl_iw.h new/src/wl/sys/wl_iw.h
--- old/src/wl/sys/wl_iw.h 2010-12-15 02:58:07.000000000 +0100
+++ new/src/wl/sys/wl_iw.h 2010-12-25 18:17:01.826676379 +0100
@@ -15,6 +15,7 @@
#ifndef _wl_iw_h_
#define _wl_iw_h_
+#include <linux/semaphore.h>
#include <linux/wireless.h>
#include <typedefs.h>
#
# Chakra Packages for Chakra, part of chakra-project.org
#
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
# include global config
source ../_buildscripts/${current_repo}-${_arch}-cfg.conf
pkgbase="kernel26-lts"
pkgname=('kernel26-lts' 'kernel26-lts-headers') # 'kernel26-lts-firmware' - Build stock -CHAKRA-LTS kernel
_kernelname=${pkgname#kernel26}
_basekernel=2.6.35
pkgver=${_basekernel}.11
pkgrel=1
_patchname="patch-${pkgver}-${pkgrel}-CHAKRA-LTS"
arch=(i686 x86_64)
license=('GPL2')
url="http://www.kernel.org"
source=(ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$_basekernel.tar.bz2
http://chakra-project.org/sources/kernel26/${_patchname}.bz2
# the main kernel config files
config config.x86_64
# standard config files for mkinitcpio ramdisk
${pkgname}.preset)
md5sums=('091abeb4684ce03d1d936851618687b6'
'1da72a2ded1e22b4e4badc47396173f4'
'580530a17a53664d12a70fb372a88264'
'7d0b483fc7fab1405bae16ba2275360a'
'a69bba023ee617a2b8f32296d7d46d0f')
build() {
cd ${srcdir}/linux-$_basekernel
# fix setlocalversion
sed -i 's|echo "+"|# echo "+"|g' ./scripts/setlocalversion
# Add -CHAKRA patches
patch -Np1 -i ${srcdir}/${_patchname} || return 1
if [ "$CARCH" = "x86_64" ]; then
cat ../config.x86_64 >./.config
else
cat ../config >./.config
fi
# hack to prevent output kernel from being marked as dirty or git
echo "" > ${srcdir}/linux-${_basekernel}/.scmversion
# get kernel version
make prepare
# load configuration
# Configure the kernel. Replace the line below with one of your choice.
#make menuconfig # CLI menu for configuration
#make xconfig # X-based configuration
#make oldconfig # using old config from previous kernel version
# ... or manually edit .config
####################
# stop here
# this is useful to configure the kernel
#msg "Stopping build"
#return 1
####################
yes "" | make config
# build!
make bzImage modules || return 1
}
package_kernel26-lts() {
pkgdesc="The Linux Longterm Support Kernel and modules"
backup=(etc/mkinitcpio.d/kernel26-lts.preset)
depends=('coreutils' "kernel26-firmware>=${pkgver}" 'module-init-tools' 'mkinitcpio>=0.6.3')
# pwc, ieee80211 and hostap-driver26 modules are included in kernel26-lts now
# nforce package support was abandoned by nvidia, kernel modules should cover everything now.
# kernel24 support is dropped since glibc24
replaces=('kernel24' 'kernel24-scsi' 'kernel26-lts-scsi'
'alsa-driver' 'ieee80211' 'hostap-driver26'
'pwc' 'nforce' 'squashfs' 'unionfs' 'ivtv'
'zd1211' 'kvm-modules' 'iwlwifi' 'rt2x00-cvs'
'gspcav1' 'atl2' 'wlan-ng26' 'rt2500' 'kernel26-lts'
'aufs2')
provides=('aufs2' "kernel26=${pkgver}")
install=kernel26-lts.install
optdepends=('crda: to set the correct wireless channels of your country')
KARCH=x86
cd ${srcdir}/linux-$_basekernel
_kernver="$(make kernelrelease)"
mkdir -p ${pkgdir}/{lib/modules,boot}
make INSTALL_MOD_PATH=${pkgdir} modules_install || return 1
cp System.map ${pkgdir}/boot/System.map26${_kernelname}
cp arch/$KARCH/boot/bzImage ${pkgdir}/boot/vmlinuz26${_kernelname}
# # add vmlinux
install -m644 -D vmlinux ${pkgdir}/usr/src/linux-${_kernver}/vmlinux
# install fallback mkinitcpio.conf file and preset file for kernel
install -m644 -D ${srcdir}/kernel26-lts.preset ${pkgdir}/etc/mkinitcpio.d/kernel26-lts.preset || return 1
# set correct depmod command for install
sed \
-e "s/KERNEL_NAME=.*/KERNEL_NAME=${_kernelname}/g" \
-e "s/KERNEL_VERSION=.*/KERNEL_VERSION=${_kernver}/g" \
-i $startdir/kernel26-lts.install
sed \
-e "s|source .*|source /etc/mkinitcpio.d/kernel26${_kernelname}.kver|g" \
-e "s|default_image=.*|default_image=\"/boot/${pkgname}.img\"|g" \
-e "s|fallback_image=.*|fallback_image=\"/boot/${pkgname}-fallback.img\"|g" \
-i ${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset
echo -e "# DO NOT EDIT THIS FILE\nALL_kver='${_kernver}'" > ${pkgdir}/etc/mkinitcpio.d/${pkgname}.kver
# remove build and source links
rm -f ${pkgdir}/lib/modules/${_kernver}/{source,build}
# remove the firmware
rm -rf ${pkgdir}/lib/firmware
}
package_kernel26-lts-headers() {
pkgdesc="Header files and scripts for building modules for kernel26-lts"
provides="kernel26-headers=${pkgver}"
cd ${srcdir}/linux-${_basekernel}/
make oldconfig && make prepare || return 1
mkdir -p ${pkgdir}/lib/modules/${_kernver}
cd ${pkgdir}/lib/modules/${_kernver}
ln -sf ../../../usr/src/linux-${_kernver} build
cd ${srcdir}/linux-$_basekernel
install -D -m644 Makefile \
${pkgdir}/usr/src/linux-${_kernver}/Makefile
install -D -m644 kernel/Makefile \
${pkgdir}/usr/src/linux-${_kernver}/kernel/Makefile
install -D -m644 .config \
${pkgdir}/usr/src/linux-${_kernver}/.config
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/include
for i in acpi asm-generic config generated linux math-emu media net pcmcia scsi sound trace video; do
cp -a include/$i ${pkgdir}/usr/src/linux-${_kernver}/include/
done
# copy arch includes for external modules
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/x86
cp -a arch/x86/include ${pkgdir}/usr/src/linux-${_kernver}/arch/x86/
# copy files necessary for later builds, like nvidia and vmware
cp Module.symvers ${pkgdir}/usr/src/linux-${_kernver}
cp -a scripts ${pkgdir}/usr/src/linux-${_kernver}
# fix permissions on scripts dir
chmod og-w -R ${pkgdir}/usr/src/linux-${_kernver}/scripts
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/.tmp_versions
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/kernel
cp arch/$KARCH/Makefile ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/
if [ "$CARCH" = "i686" ]; then
cp arch/$KARCH/Makefile_32.cpu ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/
fi
cp arch/$KARCH/kernel/asm-offsets.s ${pkgdir}/usr/src/linux-${_kernver}/arch/$KARCH/kernel/
# add headers for lirc package
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video
cp drivers/media/video/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/
for i in bt8xx cpia2 cx25840 cx88 em28xx et61x251 pwc saa7134 sn9c102 usbvideo; do # zc0301 - damaged
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/$i
cp -a drivers/media/video/$i/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/video/$i
done
# add docbook makefile
install -D -m644 Documentation/DocBook/Makefile \
${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile
# add dm headers
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/md
cp drivers/md/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/md
# add inotify.h
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/include/linux
cp include/linux/inotify.h ${pkgdir}/usr/src/linux-${_kernver}/include/linux/
# add wireless headers
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/
cp net/mac80211/*.h ${pkgdir}/usr/src/linux-${_kernver}/net/mac80211/
# add dvb headers for external modules
# in reference to:
# http://bugs.archlinux.org/task/9912
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core
cp drivers/media/dvb/dvb-core/*.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-core/
# add dvb headers for external modules
# in reference to:
# http://bugs.archlinux.org/task/11194
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/
cp include/config/dvb/*.h ${pkgdir}/usr/src/linux-${_kernver}/include/config/dvb/
# add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new
# in reference to:
# http://bugs.archlinux.org/task/13146
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/
cp drivers/media/dvb/frontends/lgdt330x.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/
cp drivers/media/video/msp3400-driver.h ${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/
# add xfs and shmem for aufs building
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/fs/xfs
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/mm
cp fs/xfs/xfs_sb.h ${pkgdir}/usr/src/linux-${_kernver}/fs/xfs/xfs_sb.h
# add headers for virtualbox
# in reference to:
# http://bugs.archlinux.org/task/14568
cp -a include/drm $pkgdir/usr/src/linux-${_kernver}/include/
# add headers for broadcom wl
# in reference to:
# http://bugs.archlinux.org/task/14568
cp -a include/trace $pkgdir/usr/src/linux-${_kernver}/include/
# copy in Kconfig files
for i in `find . -name "Kconfig*"`; do
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/`echo $i | sed 's|/Kconfig.*||'`
cp $i ${pkgdir}/usr/src/linux-${_kernver}/$i
done
#cd ${pkgdir}/usr/src/linux-${_kernver}/include && ln -s asm-$KARCH asm
# add header for aufs2-util
#mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/include/asm
#cp -a ${srcdir}/linux-$_basekernel/include/asm-generic/bitsperlong.h ${pkgdir}/usr/src/linux-${_kernver}/include/asm/
chown -R root.root ${pkgdir}/usr/src/linux-${_kernver}
find ${pkgdir}/usr/src/linux-${_kernver} -type d -exec chmod 755 {} \;
# remove unneeded architectures
rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa}
# fix aufs
# rm -rf ${pkgdir}/usr/src/linux-${_kernver}/include/linux/aufs_type.h
}
package_kernel26-lts-firmware() {
pkgdesc="The included firmware files of the Linux Longterm Support Kernel"
provides="kernel26-firmware=${pkgver}"
conflicts="kernel26-firmware"
cd ${srcdir}/linux-$_basekernel
make firmware || return 1
make INSTALL_MOD_PATH=${pkgdir} firmware_install || return 1
}
This diff is collapsed.
This diff is collapsed.
# arg 1: the new package version
# arg 2: the old package version
KERNEL_NAME=-lts
KERNEL_VERSION=2.6.35-CHAKRA-LTS
post_install () {
# updating module dependencies
echo ">>> Updating module dependencies. Please wait ..."
depmod $KERNEL_VERSION
# generate init ramdisks
echo ">>> MKINITCPIO SETUP"
echo ">>> ----------------"
echo ">>> If you use LVM2, Encrypted root or software RAID,"
echo ">>> Ensure you enable support in /etc/mkinitcpio.conf ."
echo ">>> More information about mkinitcpio setup can be found here:"
echo ">>> http://chakra-project.org/wiki/index.php/Mkinitcpio"
echo ""
echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..."
/sbin/mkinitcpio -p kernel26${KERNEL_NAME}
}
post_upgrade() {
pacman -Q grub &>/dev/null
hasgrub=$?
pacman -Q grub2 &>/dev/null
hasgrub2=$?
pacman -Q lilo &>/dev/null
haslilo=$?
# reminder notices
if [ $haslilo -eq 0 ]; then
echo ">>>"
if [ $hasgrub -eq 0 -o $hasgrub2 -eq 0 ]; then
echo ">>> If you use the LILO bootloader, you should run 'lilo' before rebooting."
else
echo ">>> You appear to be using the LILO bootloader. You should run"
echo ">>> 'lilo' before rebooting."
fi
echo ">>>"
fi
if grep "^[^#]*/boot" /etc/fstab 2>&1 >/dev/null; then
if ! grep "/boot" /etc/mtab 2>&1 >/dev/null; then
echo "WARNING: /boot appears to be a seperate partition but is not mounted"
echo " This is most likely not what you want. Please mount your /boot"
echo " partition and reinstall the kernel unless you are sure this is OK"
fi
fi
echo ">>> Updating module dependencies. Please wait ..."
depmod $KERNEL_VERSION
# generate init ramdisks
echo ">>> MKINITCPIO SETUP"
echo ">>> ----------------"
echo ">>> If you use LVM2, Encrypted root or software RAID,"
echo ">>> Ensure you enable support in /etc/mkinitcpio.conf ."
echo ">>> More information about mkinitcpio setup can be found here:"
echo ">>> http://chakra-project.org/wiki/index.php/Mkinitcpio"
echo ""
echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..."
/sbin/mkinitcpio -p kernel26${KERNEL_NAME}
}
# mkinitcpio preset file for kernel26-lts
########################################
# DO NOT EDIT THIS LINE:
source /etc/mkinitcpio.d/kernel26-lts.kver
########################################
ALL_config="/etc/mkinitcpio.conf"
PRESETS=('default' 'fallback')
#default_config="/etc/mkinitcpio.conf"
default_image="/boot/kernel26-lts.img"
#default_options=""
#fallback_config="/etc/mkinitcpio.conf"
fallback_image="/boot/kernel26-lts-fallback.img"
fallback_options="-S autodetect"
\ No newline at end of file
# Kernel source file
SRC="ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.35.tar.bz2"
# Original source directory
SRCORIG="linux-2.6.35"
# Our source directory
SRCNAME="linux-2.6.35-CHAKRA-LTS"
# Patches:
# URL%patchlevel
# or
# filename%patchlevel (file must be in patches/ subdirectory)
PATCHES=(
# add upstream patch from 2.6.35 series
http://www.kernel.org/pub/linux/kernel/v2.6/longterm/v2.6.35/patch-2.6.35.11.bz2%1
# add latest fixes from stable queue, if needed
# http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git
# add aufs2 support, in reference to:
# http://aufs.sourceforge.net
http://chakra-project.org/sources/kernel26/patches/35/aufs2/aufs2-base-35.patch%1
http://chakra-project.org/sources/kernel26/patches/35/aufs2/aufs2-standalone-35.patch%1
http://chakra-project.org/sources/kernel26/patches/35/aufs2/aufs2-kbuild-35.patch%1
http://chakra-project.org/sources/kernel26/patches/35/aufs2/aufs2.1-standalone.tree-35-20110221.patch.bz2%1
# squashfs with lzma
http://chakra-project.org/sources/kernel26/patches/35/squash-lzma/001-squashfs-lzma-add-support-for-lzma-compressed-filesystems.patch%1
http://chakra-project.org/sources/kernel26/patches/35/squash-lzma/002-squashfs-lzma-make-lzma-available-to-non-initramfs-initrd-code.patch%1
http://chakra-project.org/sources/kernel26/patches/35/squash-lzma/003-squashfs-lzma-select-decompress-lzma-needed.patch%1
http://chakra-project.org/sources/kernel26/patches/35/squash-lzma/004-squashfs-lzma-make-lzma-reentrant.patch%1
http://chakra-project.org/sources/kernel26/patches/35/squash-lzma/005-squashfs-lzma-force-lzma-wrapper-to-be-retained.patch%1
http://chakra-project.org/sources/kernel26/patches/35/squash-lzma/006-squashfs-lzma-add-missing-slab.h-include-in-lzma-wrapper.patch%1
# sched_autogroup
http://chakra-project.org/sources/kernel26/patches/35/autogroup/2.6.35-sched-automated-per-tty-task-groups.patch%1
)
# Name of the resulting patch (will be bzipped afterwards)
PATCHNAME="patch-2.6.35.11-1-CHAKRA-LTS"
# Run this before applying patches
pre_apply() {
:
}
# Run this after applying patches
post_apply() {
# remove the extraversion from Makefile
# this ensures our kernel version is always 2.6.XX-CHAKRA
# this way, minor kernel updates will not break external modules
sed -i 's|^EXTRAVERSION = .*$|EXTRAVERSION = |g' Makefile
# Kill some files
find . -name '*~' -exec rm -f {} \; 2>/dev/null
}
README - 2010-03-04
To generate a kernel-patch change in your chakra-buildsys with:
cd ~/DEV/KDEmod
./enter* chakra-i686 or ./enter* chakra-x86_64
check if aufs2 and linux-2.6-ARCH/patches has same DATE
cd ../linux-2.6-ARCH
rm -Rv src
rm -v patch-2.6*
./gen_kernel_patch
copy generated patch archive to kernel26 folder in same repo
update kernel26 PKGBUILD
update svn with new changes of aufs2, kernel26 and linux-2.6-ARCH
\ No newline at end of file
#!/bin/bash
# clone the aufs repository to the local disk
git clone http://git.c3sl.ufpr.br/pub/scm/aufs/aufs2-standalone.git aufs2-standalone.git
cd aufs2-standalone.git
git branch -r
git checkout origin/aufs2.1-35
# modify what you want
# and after
# create the patch with the directories: fs, include and Documentation
rm -v $(find . -type f -name '*.orig')
grep -qse 'EXPORT_SYMBOL(' aufs2-standalone.patch && \
sed -i-old -e 's|EXPORT_SYMBOL(|EXPORT_SYMBOL_GPL(|' aufs2-standalone.patch
rm -rf /tmp/linux-2.6
mkdir /tmp/linux-2.6
cp -a fs /tmp/linux-2.6
cp -a include /tmp/linux-2.6
cp -a Documentation /tmp/linux-2.6
echo "test"
rm /tmp/linux-2.6/include/linux/Kbuild
cd /tmp
diff -Naur null linux-2.6 | filterdiff | \
sed -e 's|null\(/include/linux/Kbuild\)|linux-2.6-old\1|;s|^--- null.*|--- /dev/null|;\|linux-2.6/include/linux/Kbuild|,${\|@@ -0,0 +1 @@|,$d}' \
| bzip2 > aufs$(sed -ne 's|#define.*AUFS_VERSION.*"\(.*\)"|\1|p' linux-2.6/include/linux/aufs_type.h).patch.bz2
cd $OLDPWD
# the patch is created in /tmp
# the other patches needed to compile are in the base directory
\ No newline at end of file