You are not logged in.
works fine
the only difference is the substitution of 24 for 26 where necessary and adding "dep" to the make commands.
that was it - works perfectly
with the patches - should i post my efforts on the wiki and then we can collectively edit it?
Offline
http://wiki.archlinux.org/index.php/Ker … %20ABS-2.4
My efforts are here and some people have been editing them - anyone know who?
Offline
I've recently seen some SPAM beeing added to the Wiki (same thing happened to my Wiki). The last revisions are from removing spam, the others - I don't know.
:: / my web presence
Offline
does the current custom PKGBUILD on the wiki cater for the new 2.6.9?
I tried to use my modified version last night and got some screwy results - largely due to this in the config, i think:
CONFIG_LOCALVERSION="-ARCH"
This is new isn't it? How does this affect this custom PKGBUILD - i'd love to know cos i have lots of kernels to compile, please!
Offline
The PKGBUILD in the Wikipage does not work with the current version, as I have recently changed my computer & compiled myself 2.6.9-nitro3 with a roughly modified version of that PKGBUILD.
Problems indeed come from the recent use of LOCAL_VERSION="-ARCH".
I'm trying to update http://wiki2.archlinux.org/index.php/Ke … with%20ABS to make use of that variable, but I'm currently in the middle of my exams (I've got one tomorrow).
I'll try to find some time and upload a new version soon.
Hmm...
Lots of pages about the Kernel in the Wiki... looks a little bit like a mess...
:: / my web presence
Offline
i modified my own from the stock kernel - how is this for starters?
# $Id: PKGBUILD,v 1.36 2004/12/07 08:59:32 judd Exp $
# Maintainer: judd <jvinet@zeroflux.org>
pkgname=kernel26
pkgver=2.6.9
pkgrel=1
pkgdesc="The Linux Kernel and modules (IDE support)"
url="http://www.kernel.org"
backup=('boot/kconfig26')
depends=('module-init-tools')
install=kernel26.install
source=(ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$pkgver.tar.)
md5sums=()
build() {
cd $startdir/src/linux-$pkgver
# Create build stats
echo "Build started at `date +%c`" > $startdir/buildstats
# Start build
#Apply patches
patch -Np1 -i ../cdburning.patch || return 1
patch -Np1 -i ../acpi-20041015-26-latest-release.diff || return 1
# A nasty bug that caused kswapd to get stuck consuming heaps of cpu
# which was in mainline 2.6.9, fixed by this patch
patch -Np1 -i ../vm-pages_scanned-active_list.patch || return 1
# Arch logo!
#cp ../logo_linux_clut224.ppm drivers/video/logo/
# get rid of the 'i' in i686
carch=`echo $CARCH | sed 's|i||'`
cat ../config | sed "s|#CARCH#|$carch|g" >./.config
# build the full kernel version to use in pathnames
. ./.config
_kernver="${pkgver}${CONFIG_LOCALVERSION}"
_kerncust="${CONFIG_LOCALVERSION}"
pkgname="${pkgname}${_kerncust}"
# load configuration
yes "" | make config
#make oldconfig || return 1
#make menuconfig
#make xconfig
#make gconfig
# save the configuration with today's date
cp ./.config $startdir/config-$(date +%b%d)
# build!
make clean bzImage modules || return 1
mkdir -p $startdir/pkg/{lib/modules,boot}
make INSTALL_MOD_PATH=$startdir/pkg modules_install || return 1
cp System.map $startdir/pkg/boot/System.map26${_kerncust}
cp arch/i386/boot/bzImage $startdir/pkg/boot/vmlinuz26${_kerncust}
install -D -m644 Makefile
$startdir/pkg/usr/src/linux-${_kernver}/Makefile
install -D -m644 .config
$startdir/pkg/usr/src/linux-${_kernver}/.config
install -D -m644 .config $startdir/pkg/boot/kconfig26${_kerncust}
mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/include
mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/arch/i386/kernel
for i in acpi asm-generic asm-i386 config linux math-emu net pcmcia scsi video; do
cp -a include/$i $startdir/pkg/usr/src/linux-${_kernver}/include/
done
# copy files necessary for later builds, like nvidia and vmware
cp -a scripts $startdir/pkg/usr/src/linux-${_kernver}
mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/.tmp_versions
cp arch/i386/Makefile $startdir/pkg/usr/src/linux-${_kernver}/arch/i386/
cp arch/i386/kernel/asm-offsets.s
$startdir/pkg/usr/src/linux-${_kernver}/arch/i386/kernel/
# copy in Kconfig files
for i in `find . -name "Kconfig*"`; do
mkdir -p $startdir/pkg/usr/src/linux-${_kernver}/`echo $i | sed 's|/Kconfig.*||'`
cp $i $startdir/pkg/usr/src/linux-${_kernver}/$i
done
cd $startdir/pkg/usr/src/linux-${_kernver}/include && ln -s asm-i386 asm
chown -R root.root $startdir/pkg/usr/src/linux-${_kernver}
cd $startdir/pkg/lib/modules/${_kernver} &&
(rm -f source build; ln -sf /usr/src/linux-${_kernver} build)
# Finalize build stats
echo "Package name: $pkgname" >> $startdir/buildstats
echo "Package ver: $pkgver" >> $startdir/buildstats
echo "Package desc: $pkgdesc" >> $startdir/buildstats
echo "Build finished at `date +%c`" >> $startdir/buildstats
mv $startdir/buildstats $startdir/buildstats-$(date +%b%d)
}
Offline
ok - the above does not work with patches that add their own EXTRAVERSION info as this is automatically used in the name of the modules dir - this build works perfectly - you just have to remeber/check not to include any patchset EXTRAVERSION in your LOCALVERSION setting!
i have done several builds with this
i added in the buildstats file to help me quickly keep track of what options i had used and the time it took to build - clearly these are easily removed or edited to output to the term instead
# $Id: PKGBUILD,v 1.36 2004/12/07 08:59:32 judd Exp $
# Maintainer: judd <jvinet@zeroflux.org>
pkgname=kernel26
pkgver=2.6.9
pkgrel=1
pkgdesc="The Linux 2.6.9 Kernel 2.6.9 and modules (IDE support), built with nitro patchset (-nitro4)"
url="http://www.kernel.org"
backup=('boot/kconfig26')
depends=('module-init-tools')
install=kernel26.install
source=(config http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/patches/release/$pkgver/acpi-20041015-26-latest-release.diff.bz2
ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$pkgver.tar.bz2 )
md5sums=()
# Function to grab var from src
getvar() {
old=$(cat Makefile | grep "^$1")
echo $(echo ${old/"$1 ="/} | sed -e "s/[ ]*(.*)[ ]*/1/g")
return 0
}
build() {
cd $startdir/src/linux-$pkgver
# Create build stats
echo "Build started at `date +%c`" > $startdir/buildstats
# Start build
# apply patches
# patch -Np1 -i ../acpi-20041015-26-latest-release.diff || return 1
# A nasty bug that caused kswapd to get stuck consuming heaps of cpu
# which was in mainline 2.6.9, fixed by this patch
# get rid of the 'i' in i686
carch=`echo $CARCH | sed 's|i||'`
cat ../config | sed "s|#CARCH#|$carch|g" >./.config
# load configuration
#yes "" | make config
#make oldconfig || return 1
#make menuconfig
#make xconfig
make gconfig
# save the configuration with today's date
cp ./.config $startdir/config-$(date +%b%d)
# get EXTRAVERSION to correctly name /lib/modules/ subdirectories
_kernextra=$(getvar "EXTRAVERSION")
# build the full kernel version to use in pathnames
. ./.config
# Kernel release var will be the same as Makefile
_kernrel="${pkgver}${_kernextra}${CONFIG_LOCALVERSION}"
# Kernel custom - to create a unique pkgname (see below) and
# unique /boot files
_kerncust="${_kernextra}${CONFIG_LOCALVERSION}"
pkgname="${pkgname}${_kerncust}"
# Add more build stats
echo >> $startdir/buildstats
echo "Package Info" >> $startdir/buildstats
echo " Package name: $pkgname" >> $startdir/buildstats
echo " Package ver: $pkgver" >> $startdir/buildstats
echo " Package desc: $pkgdesc" >> $startdir/buildstats
echo >> $startdir/buildstats
echo " Kernel EXTRAVERSION: $_kernextra" >> $startdir/buildstats
echo " Kernel LOCALVERSION: ${CONFIG_LOCALVERSION}"
>> $startdir/buildstats
echo " Kernel RELEASE: $_kernrel" >> $startdir/buildstats
# build!
make clean bzImage modules || return 1
mkdir -p $startdir/pkg/{lib/modules,boot}
make INSTALL_MOD_PATH=$startdir/pkg modules_install || return 1
cp System.map $startdir/pkg/boot/System.map26${_kerncust}
cp arch/i386/boot/bzImage $startdir/pkg/boot/vmlinuz26${_kerncust}
install -D -m644 Makefile
$startdir/pkg/usr/src/linux-${_kernrel}/Makefile
install -D -m644 .config
$startdir/pkg/usr/src/linux-${_kernrel}/.config
install -D -m644 .config $startdir/pkg/boot/kconfig26${_kerncust}
mkdir -p $startdir/pkg/usr/src/linux-${_kernrel}/include
mkdir -p $startdir/pkg/usr/src/linux-${_kernrel}/arch/i386/kernel
for i in acpi asm-generic asm-i386 config linux math-emu net pcmcia scsi video; do
cp -a include/$i $startdir/pkg/usr/src/linux-${_kernrel}/include/
done
# copy files necessary for later builds, like nvidia and vmware
cp -a scripts $startdir/pkg/usr/src/linux-${_kernrel}
mkdir -p $startdir/pkg/usr/src/linux-${_kernrel}/.tmp_versions
cp arch/i386/Makefile $startdir/pkg/usr/src/linux-${_kernrel}/arch/i386/
cp arch/i386/kernel/asm-offsets.s
$startdir/pkg/usr/src/linux-${_kernrel}/arch/i386/kernel/
# copy in Kconfig files
for i in `find . -name "Kconfig*"`; do
mkdir -p $startdir/pkg/usr/src/linux-${_kernrel}/`echo $i | sed 's|/Kconfig.*||'`
cp $i $startdir/pkg/usr/src/linux-${_kernrel}/$i
done
cd $startdir/pkg/usr/src/linux-${_kernrel}/include && ln -s asm-i386 asm
chown -R root.root $startdir/pkg/usr/src/linux-${_kernrel}
cd $startdir/pkg/lib/modules/${_kernrel} &&
(rm -f source build; ln -sf /usr/src/linux-${_kernrel} build)
# Finalize build stats
echo >> $startdir/buildstats
echo "Build finished at `date +%c`" >> $startdir/buildstats
mv $startdir/buildstats $startdir/buildstats-$(date +%b%d)
}
Offline