Pactching kernel with fbsplash.patch (SOLVED)

Never patched a kernel before and i'm having problems!!
This what i've done so far (as root):
1. Installed kernel26-ck (2.6.22-ck) with pacman and rebooted into arch using that kernel
2. downloaded the fbsplash via (genpatches-2.6.22-1.extras.tar.bz2)
3. put the splash.patch file into /usr/src
4. made a symlink for current kernel in /usr/src; giving /usr/src/linux --> /usr/src/linux/linux-2.6.22-ck
5. cd /usr/src/linux
6. patch -p1 < ../splash.patch
# NOTE: looking into using the abs method of PKGBUILD'ing a custom kernel with patches - hopefully i'll do better!!
The best way to do this is by emulating the abs versions of the standard kernel as described in these forums
1. copy the abs version of the stock kernel26
2. adjust the PKGBUILD to include spock's patch (not gentoo's)
3. makepkg
4. pacman -U the new kernel
Then get on with fbsplash!
Last edited by Hongkongblue (2007-08-17 02:58:45)

mazu wrote:
I used to use kernel26-beyond kernel with fbsplash. Recently I found out that with this kernel any attempt to mount ntfs disk end with system hung. I switched back to standard kernel, but I want to still use fbsplash. I read the wiki several times but I can't figure out how to patch and compile kernel with fbsplash. Can anyone write step by step what shuld I do?
Thanks for any help in advice.
mazu
Not that it answers your question but I have been using the latest beyond kernel since it came out and have had no problem with mounting and using ntfs disks resulting in system hangs. Also I have recently been using ntfs-3g which allows safely writing to NTFS partitions. I am using it for backups on an external USB drive with an NTFS file system. Give ntf-3g a shot before patching the kernel.
Last edited by raymano (2007-04-14 14:01:35)

Similar Messages

  • [Solved] kernel 2.6.28.1 compilation fails with reiser4 patch

    Hi,
    has anyone had problems compiling the latest kernel with the reiser4 patch?
    The patching process itself completes successfully apart from this part:
    patching file include/linux/fs.h
    Hunk #1 succeeded at 1372 (offset 3 lines).
    Hunk #2 succeeded at 1811 (offset 3 lines).
    patching file mm/filemap.c
    While the compilation fails here
    CC fs/reiser4/plugin/file/file_conversion.o
    fs/reiser4/plugin/file/file_conversion.c: In function 'reiser4_write_begin_careful':
    fs/reiser4/plugin/file/file_conversion.c:689: error: implicit declaration of function '__grab_cache_page'
    fs/reiser4/plugin/file/file_conversion.c:689: warning: assignment makes pointer from integer without a cast
    make[2]: *** [fs/reiser4/plugin/file/file_conversion.o] Error 1
    make[1]: *** [fs/reiser4] Error 2
    make: *** [fs] Error 2
    Or is it just me doing something wrong?
    Last edited by moz (2009-01-23 13:08:27)

    moz wrote:
    Hi,
    has anyone had problems compiling the latest kernel with the reiser4 patch?
    The patching process itself completes successfully apart from this part:
    patching file include/linux/fs.h
    Hunk #1 succeeded at 1372 (offset 3 lines).
    Hunk #2 succeeded at 1811 (offset 3 lines).
    patching file mm/filemap.c
    While the compilation fails here
    CC fs/reiser4/plugin/file/file_conversion.o
    fs/reiser4/plugin/file/file_conversion.c: In function 'reiser4_write_begin_careful':
    fs/reiser4/plugin/file/file_conversion.c:689: error: implicit declaration of function '__grab_cache_page'
    fs/reiser4/plugin/file/file_conversion.c:689: warning: assignment makes pointer from integer without a cast
    make[2]: *** [fs/reiser4/plugin/file/file_conversion.o] Error 1
    make[1]: *** [fs/reiser4] Error 2
    make: *** [fs] Error 2
    Or is it just me doing something wrong?
    It is a well known issue

  • [Solved] Compiling kernel with 'localmodcfg' - 'brcmsmac' missing

    Hi all,
    I want to compile my own optimized ck-kernel with localmodcfg="y" which works mostly.
    However there is a small problem.
    The module 'brcmsmac' for the WLAN card is never included although it is listed in my modprobed.db.
    Does someone have any clue what could be the cause?
    Thanks
    Radioactiveman
    Last edited by Radioactiveman (2012-01-13 16:36:15)

    A minor fix for the patch by Steven Rostedt solved my issue.
    I have compiled linux-ck 3.2.1-2 with localmodconfig today and brcmsmac is now included.
    Marking the thread as solved, thanks to Steve.
    Patch file:
    diff --git a/scripts/kconfig/streamline_config.pl b/scripts/kconfig/streamline_config.pl
    index ec7afce..bccf07d 100644
    --- a/scripts/kconfig/streamline_config.pl
    +++ b/scripts/kconfig/streamline_config.pl
    @@ -250,33 +250,61 @@ if ($kconfig) {
    read_kconfig($kconfig);
    +sub convert_vars {
    + my ($line, %vars) = @_;
    +
    + my $process = "";
    +
    + while ($line =~ s/^(.*?)(\$\((.*?)\))//) {
    + my $start = $1;
    + my $variable = $2;
    + my $var = $3;
    +
    + if (defined($vars{$var})) {
    + $process .= $start . $vars{$var};
    + } else {
    + $process .= $start . $variable;
    + }
    + }
    +
    + $process .= $line;
    +
    + return $process;
    +}
    +
    # Read all Makefiles to map the configs to the objects
    foreach my $makefile (@makefiles) {
    - my $cont = 0;
    + my $line = "";
    + my %make_vars;
    open(MIN,$makefile) || die "Can't open $makefile";
    while (<MIN>) {
    + # if this line ends with a backslash, continue
    + chomp;
    + if (/^(.*)\\$/) {
    + $line .= $1;
    + next;
    + }
    +
    + $line .= $_;
    + $_ = $line;
    + $line = "";
    +
    my $objs;
    - # is this a line after a line with a backslash?
    - if ($cont && /(\S.*)$/) {
    - $objs = $1;
    - $cont = 0;
    + $_ = convert_vars($_, %make_vars);
    # collect objects after obj-$(CONFIG_FOO_BAR)
    if (/obj-\$\((CONFIG_[^\)]*)\)\s*[+:]?=\s*(.*)/) {
    $var = $1;
    $objs = $2;
    +
    + # check if variables are set
    + } elsif (/^\s*(\S+)\s*[:]?=\s*(.*\S)/) {
    + $make_vars{$1} = $2;
    if (defined($objs)) {
    - # test if the line ends with a backslash
    - if ($objs =~ m,(.*)\\$,) {
    - $objs = $1;
    - $cont = 1;
    foreach my $obj (split /\s+/,$objs) {
    $obj =~ s/-/_/g;
    if ($obj =~ /(.*)\.o$/) {
    Last edited by Radioactiveman (2012-01-13 16:37:06)

  • Patching 2.6.10 with fbsplash

    Hi, this is my first post. I have just recently installed Arch on my PC having had Gentoo installed previously.
    I am trying to set up gensplash and having a bit of difficulty at the very first hurdle, patching the kernel. I only want to patch it with the fbsplash patch from spock's website but am getting nowhere.
    I notice that msg43 wrote, on Sat 09 July, that he patched his kernel using one of spock's patches. If you read this can you tell me what you had to do to accomplish this.
    The kernel I have is 2.6.10-ARCH and I am trying to apply patch tbsplash-0.9.1-r1-2.6.10.patch using the command
    patch -p6 -i
    When this executes it stops at a Diff line and prompts with:
    File to patch:
    I presume that this is because the patch was written for Gentoo and their file directory. I have rem'd out some of the lines in the patch, the ones for the documents, but the next one refers to keyboard.c. What is the equivalent file in Arch?
    As you can probably tell my knowledge of Linux is not great, I am on a big learning curve. This is why I installed Gentoo but for various reasons I decided to move over to AL. I did manage to get Gensplash worked with Gentoo.
    Thanks for any help you can give me.

    zimbo wrote:
    Here are the changes, in blue, that I think I need to make to kernel26 PKGBUILD. Can someone indicate if they are correct, or not.
    # Contributor: dibblethewrecker <dibblethewrecker.at.jiwe.org>
    pkgname=kernel26
    pkgver=2.6.12.3
    pkgrel=$LOCALVERSION
    leave that as one - the LOCALVERSION part will be added automatically
    zimbo wrote:
    pkgdesc="The Linux Kernel 2.6.12.3 with fbsplash"
    url="http://www.kernel.org"
    depends=('module-init-tools')
    install=kernel26.install
    ##### add any patch sources to this section
    source=(config ftp://ftp.kernel.org/pub/linux/kernel/v … er.tar.bz2; http://dev.gentoo.org/~spock/projects/g … -rc1.patch)
    # 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
      ##### Uncomment and apply any patches here
      patch -Np1 -i ../fbsplash-0.9.2-2.6.12-rc1.patch || return 1
      # get rid of the 'i' in i686
      carch=`echo $CARCH | sed 's|i||'`
      cat ../config | sed "s|#CARCH#|$carch|g" >./.config
      ##### Load config - uncomment your preferred config method
      #yes "" | make config
      #make oldconfig || return 1
      make menuconfig
      #make xconfig
      #make gconfig
    Have I got the patch source array correct I inserted a semi-colon between the two entries?
    No - all entries in the source array need to be separated by spaces with no new lines but you can use a  to escape a new line
    e.g.
    source=(config ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$pkgver.tar.bz2
    http://dev.gentoo.org/~spock/projects/gensplash/archive/fbsplash-0.9.2-2.6.12-rc1.patch)
    zimbo wrote:
    My further questions:
    1. If I am placing this PKGBUILD in /var/abs/local/kernel do I also need to created a src and src/linux-2.6.12.3 directory?
    No the PKGBUILD will do it all
    zimbo wrote:2. I also need to place the default Arch config file and kernel26.install file in /var/abs/local/kernel, is that correct?
    yes
    zimbo wrote:3. There are two other patches in /var/abs/kernels/kernel26; cdburning and ndevfs. I presume my default 2.6.10-ARCH kernel was patched with them. Do I therefore need to point to them and add them under the patches to be applied section? Or, move them to /var/abs/local/kernel and they will be patched automatically?
    move them to the /var/abs/local/kernel dir, include the patch names in the source array, then add the patch commands below the patch command you have included - you can copy the commands from the stock kernel PKGBUILD
    zimbo wrote:4. I presume I run makepkg -g >>PKGBUILD before makepkg?
    yup - to store the md5sums

  • How to create a custom kernel with initrd and ARCH patches

    Hi,
    I like the default kernel because everything seems to work well and I think the Arch kernel includes patches I need (such as the mactel patch). But some options that i would like to be enabled are not. in fact i would like to use powertop but i can't because it needs the CONFIG_TIMER_STATS option.
    What I would like is a kernel based on the arch kernel but with a different config file. Nothing more.
    if i look at the solution on the Wiki, I see that I have to add all patches the standard kernel have ... Moreover there is no initrd creation. i think i will need it if I use the Arch kernel configuration.
    And if i use the kernel26 PKGBUILD, I must change the package name in order to keep my current kernel. It's easy to do in the PKGBUILD but much more complicated to do it in the kernel26.install file beacuse I have to change the filenames in /boot and I do not want to replace the kernel26 files.
    So do you have any ideas how to compile my custom kernel ? Is there a better solution ?
    Thanks.
    Mildred.
    Last edited by mildred (2007-07-03 01:46:33)

    tomk wrote:It's possible I'm missing something here, but I don't understand what you're worried about. If I understand correctly, you now have a PKGBUILD and associated files for kernel26mildred (or whatever you've decided to call it). Why do you think you would have to change the files again when kernel26 is updated?
    don't the patches change from version to version?
    anyways, i was bored so i wrote a little script... edit the configuration variables at the top and it'll do the work for you. just put it in /var/abs/kernels or wherever you have the kernel26/ at, chmod +x scriptname, and run.
    if you're in /var/abs/kernels you'll probably have to run as root.
    from my testing, it seems to be all working (looking at resulting files and no errors so far from makepkg); but i'm still building my test kernel with it.
    #!/bin/bash
    # Author: kano <[email protected]>
    # Configuration #
    appendname="-custom1" # Name to append to kernel package
    BUILD=0 # Build package when done? No = 0; Yes = 1
    #MAKEPKGOPT="" # Uncomment if you're building after you make; Add any options you want passed to makepkg (can be nothing)
    # Work starts here; shouldn't have to edit anything below #
    mkdir kernel26${appendname}/
    cp kernel26/* kernel26${appendname}/
    regen_md5sum() {
    if [ ${file} != 'PKGBUILD' ]; then
    echo "Regenerating md5sum for ${file}"
    cat kernel26${appendname}/PKGBUILD \
    | sed "s/'`md5sum kernel26/${file} | awk '{ print $1 }'`'/'`md5sum kernel26${appendname}/${file} | awk '{ print $1 }'`'/;" \
    > PKGBUILD.tmp
    mv PKGBUILD.tmp kernel26${appendname}/PKGBUILD
    fi
    for file in "PKGBUILD" "kernel26.preset" "kernel26.install"; do
    echo "Editing ${file}"
    cat kernel26/${file} | \
    sed "s/kernel26/kernel26${appendname}/g" \
    | sed "s/vmlinuz26/vmlinuz26${appendname}/g" \
    | sed "s/kconfig26/kconfig26${appendname}/g" \
    | sed "s/System.map26/System.map26${appendname}/g" \
    > kernel26${appendname}/${file}
    # Regenerate md5sum
    regen_md5sum
    done
    for file in "config" "config.x86_64"; do
    echo "Editing ${file}"
    cat kernel26/${file} | \
    sed "s/CONFIG_LOCALVERSION=\"-ARCH\"/CONFIG_LOCALVERSION=\"-ARCH${appendname}\"/" \
    > kernel26${appendname}/${file}
    # Regenerate md5sum
    regen_md5sum
    done
    mv kernel26${appendname}/mkinitcpio-kernel26.conf kernel26${appendname}/mkinitcpio-kernel26${appendname}.conf
    mv kernel26${appendname}/kernel26.install kernel26${appendname}/kernel26${appendname}.install
    mv kernel26${appendname}/kernel26.preset kernel26${appendname}/kernel26${appendname}.preset
    # Add make menuconfig to PKGBUILD
    cat kernel26${appendname}/PKGBUILD | \
    sed 's/# load configuration/\n # configure kernel before build\n make menuconfig\n\n # load configuration/;' \
    > PKGBUILD.tmp
    mv PKGBUILD.tmp kernel26${appendname}/PKGBUILD
    echo "Custom kernel pkgbuild created."
    # To build or to not to build?
    if [ ${BUILD} -eq 1 ]; then
    cd kernel26${appendname}
    makepkg ${MAKEPKGOPT}
    fi

  • [Solved] Compiling a new kernel with ABS

    I've made it through the whole process outlined in the wiki, up to installing with pacman.  Pacman is telling me that the stock arch kernel is a conflicting package and wants to remove it.  I want to hang on to it in case I've messed something up.  What am I doing wrong?  I know you can have two kernels installed.  Using the traditional way I can get this, but I'd rather keep to doing things The Arch Way.
    Last edited by Morrvick (2011-11-17 00:40:30)

    I double checked what I was doing, and I have done that.  Here is my modified PKGBUILD:
    # $Id: PKGBUILD 130991 2011-07-09 12:23:51Z thomas $
    # Maintainer: Tobias Powalowski <[email protected]>
    # Maintainer: Thomas Baechler <[email protected]>
    pkgbase=linux
    #pkgname=('linux' 'linux-headers' 'linux-docs') # Build stock -ARCH kernel
    pkgname=('linux-morrvick' 'linux-headers-morrvick') # Build kernel with a different name
    _kernelname=${pkgname#linux}
    _basekernel=3.1
    pkgver=${_basekernel}.1
    pkgrel=1
    arch=('i686' 'x86_64')
    url="http://www.kernel.org/"
    license=('GPL2')
    makedepends=('xmlto' 'docbook-xsl')
    options=('!strip')
    source=("http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.1.tar.xz"
    "http://www.kernel.org/pub/linux/kernel/v3.x/patch-${pkgver}.xz"
    # the main kernel config files
    'config' 'config.x86_64'
    # standard config files for mkinitcpio ramdisk
    "${pkgname}.preset"
    'change-default-console-loglevel.patch'
    'i915-fix-ghost-tv-output.patch'
    'i915-fix-incorrect-error-message.patch'
    'usb-add-reset-resume-quirk-for-several-webcams.patch')
    md5sums=('edbdc798f23ae0f8045c82f6fa22c536'
    '2bf7eb28a58238e1a062fa7393bf7824'
    'cbaaa923f00c1935055273ccc1630144'
    '93687a4b7e1e6bcd4e7417d6e5079bc4'
    'eb14dcfd80c00852ef81ded6e826826a'
    '9d3c56a4b999c8bfbd4018089a62f662'
    '263725f20c0b9eb9c353040792d644e5'
    'a50c9076012cb2dda49952dc6ec3e9c1'
    '52d41fa61e80277ace2b994412a0c856')
    build() {
    cd "${srcdir}/linux-${_basekernel}"
    # add upstream patch
    patch -p1 -i "${srcdir}/patch-${pkgver}"
    # add latest fixes from stable queue, if needed
    # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git
    # Some chips detect a ghost TV output
    # mailing list discussion: http://lists.freedesktop.org/archives/intel-gfx/2011-April/010371.html
    # Arch Linux bug report: FS#19234
    # It is unclear why this patch wasn't merged upstream, it was accepted,
    # then dropped because the reasoning was unclear. However, it is clearly
    # needed.
    patch -Np1 -i "${srcdir}/i915-fix-ghost-tv-output.patch"
    # In 3.1.1, a DRM_DEBUG message is falsely declared as DRM_ERROR. This
    # worries users, as this message is displayed even at loglevel 4. Fix
    # this.
    patch -Np1 -i "${srcdir}/i915-fix-incorrect-error-message.patch"
    # Add the USB_QUIRK_RESET_RESUME for several webcams
    # FS#26528
    patch -Np1 -i "${srcdir}/usb-add-reset-resume-quirk-for-several-webcams.patch"
    # set DEFAULT_CONSOLE_LOGLEVEL to 4 (same value as the 'quiet' kernel param)
    # remove this when a Kconfig knob is made available by upstream
    # (relevant patch sent upstream: https://lkml.org/lkml/2011/7/26/227)
    patch -Np1 -i "${srcdir}/change-default-console-loglevel.patch"
    if [ "${CARCH}" = "x86_64" ]; then
    cat "${srcdir}/config.x86_64" > ./.config
    else
    cat "${srcdir}/config" > ./.config
    fi
    if [ "${_kernelname}" != "" ]; then
    sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config
    fi
    # set extraversion to pkgrel
    sed -ri "s|^(EXTRAVERSION =).*|\1 -${pkgrel}|" Makefile
    # 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 nconfig # new 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 ${MAKEFLAGS} bzImage modules
    package_linux-morrvick() {
    pkgdesc="The Linux Kernel and modules"
    groups=('base')
    depends=('coreutils' 'linux-firmware' 'module-init-tools>=3.16' 'mkinitcpio>=0.7')
    optdepends=('crda: to set the correct wireless channels of your country')
    provides=('kernel26')
    conflicts=('kernel26')
    replaces=('kernel26')
    backup=("etc/mkinitcpio.d/${pkgname}.preset")
    install=${pkgname}.install
    cd "${srcdir}/linux-${_basekernel}"
    KARCH=x86
    # get kernel version
    _kernver="$(make kernelrelease)"
    mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot}
    make INSTALL_MOD_PATH="${pkgdir}" modules_install
    cp arch/$KARCH/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgname}"
    # add vmlinux
    install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux"
    # install fallback mkinitcpio.conf file and preset file for kernel
    install -D -m644 "${srcdir}/${pkgname}.preset" "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset"
    # 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}/${pkgname}.install"
    sed \
    -e "s|ALL_kver=.*|ALL_kver=\"/boot/vmlinuz-${pkgname}\"|g" \
    -e "s|default_image=.*|default_image=\"/boot/initramfs-${pkgname}.img\"|g" \
    -e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgname}-fallback.img\"|g" \
    -i "${pkgdir}/etc/mkinitcpio.d/${pkgname}.preset"
    # remove build and source links
    rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build}
    # remove the firmware
    rm -rf "${pkgdir}/lib/firmware"
    # gzip -9 all modules to save 100MB of space
    find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \;
    # make room for external modules
    ln -s "../extramodules-${_basekernel}${_kernelname:--ARCH}" "${pkgdir}/lib/modules/${_kernver}/extramodules"
    # add real version for building modules and running depmod from post_install/upgrade
    mkdir -p "${pkgdir}/lib/modules/extramodules-${_basekernel}${_kernelname:--ARCH}"
    echo "${_kernver}" > "${pkgdir}/lib/modules/extramodules-${_basekernel}${_kernelname:--ARCH}/version"
    package_linux-headers-morrvick() {
    pkgdesc="Header files and scripts for building modules for linux kernel"
    provides=('kernel26-headers')
    conflicts=('kernel26-headers')
    replaces=('kernel26-headers')
    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 crypto drm generated linux math-emu \
    media net pcmcia scsi sound trace video xen; 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; do
    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/"
    # and...
    # 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 dvb headers
    # in reference to:
    # http://bugs.archlinux.org/task/20402
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb"
    cp drivers/media/dvb/dvb-usb/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/dvb-usb/"
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends"
    cp drivers/media/dvb/frontends/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/dvb/frontends/"
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners"
    cp drivers/media/common/tuners/*.h "${pkgdir}/usr/src/linux-${_kernver}/drivers/media/common/tuners/"
    # 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"
    # 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
    chown -R root.root "${pkgdir}/usr/src/linux-${_kernver}"
    find "${pkgdir}/usr/src/linux-${_kernver}" -type d -exec chmod 755 {} \;
    # strip scripts directory
    find "${pkgdir}/usr/src/linux-${_kernver}/scripts" -type f -perm -u+w 2>/dev/null | while read binary ; do
    case "$(file -bi "${binary}")" in
    *application/x-sharedlib*) # Libraries (.so)
    /usr/bin/strip ${STRIP_SHARED} "${binary}";;
    *application/x-archive*) # Libraries (.a)
    /usr/bin/strip ${STRIP_STATIC} "${binary}";;
    *application/x-executable*) # Binaries
    /usr/bin/strip ${STRIP_BINARIES} "${binary}";;
    esac
    done
    # 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}
    package_linux-docs() {
    pkgdesc="Kernel hackers manual - HTML documentation that comes with the Linux kernel."
    provides=('kernel26-docs')
    conflicts=('kernel26-docs')
    replaces=('kernel26-docs')
    cd "${srcdir}/linux-${_basekernel}"
    mkdir -p "${pkgdir}/usr/src/linux-${_kernver}"
    cp -al Documentation "${pkgdir}/usr/src/linux-${_kernver}"
    find "${pkgdir}" -type f -exec chmod 444 {} \;
    find "${pkgdir}" -type d -exec chmod 755 {} \;
    # remove a file already in linux package
    rm -f "${pkgdir}/usr/src/linux-${_kernver}/Documentation/DocBook/Makefile"
    After the compiling is finished:
    sudo pacman -U linux-morrvick-3.1.1-1-x86_64.pkg.tar.xz
    Password:
    resolving dependencies...
    looking for inter-conflicts...
    :: linux-morrvick and linux are in conflict (kernel26). Remove linux? [y/N] n
    error: unresolvable package conflicts detected
    error: failed to prepare transaction (conflicting dependencies)
    :: linux-morrvick and linux are in conflict (kernel26)
    Any thoughts?

  • How to patch kernel with this...

    How can I patch the kernel with this files?
    https://patchwork.kernel.org/patch/94542/
    Archwiki about kernel compilation is really poor...

    Given your apparent level of expertise, it is not reasonable to expect procedures like this to "just work" without putting some time and effort into them. In this case, I would strongly recommend learning about the patch command first, and then learning about ABS (Arch Build System) and PKGBUILDs. You are throwing yourself in at the deep end by attempting to modify the kernel PKGBUILD - people usually work their way up to that.
    In other news - the 2.6.36 kernel has been released, and it includes this patch. The package is currently in the testing repo, and will soon be available in core. If the recommended learning above is not to your liking, I suggest you be patient until that happens. You could enable the testing repo either - but that's a whole other story.

  • Kernel with archck and win4lin patches?

    I've tried to patch the kernel with archck and win4lin myself, but compilation fails :-( Without the win4lin patch compilation is successfull... but I need win4lin for some windows app.

    phrakture wrote:Yeah, it's the correct place, the problem is that you didn't ask anything
    I thought the subject of the posting was clear that I was looking for someone who is willing to build this kernel (or has a PKGBUILD for this kernel).
    If I was looking for someone to help me build this kernel, I would have post in "Kernel & Hardware Issues" and I would've put the error message and .config file in my posting... But I was just asking someone to build this kernel for me... hoping someone is willing to do this for me or maybe if the guy who made archck read my posting, he will include win4lin in future versions. Yeah, I know, that's lazy, but this is the place for this kind of favours.
    Maybe the body of my posting created the confusion, next time I'll be more clear, I should say something like: "I'm looking for 2.6.13+archck6.2+win4lin... anyone?" instead of: "I've tried to patch and compile but it fails..."
    phrakture wrote:For instance, if you post the exact error message you get, along with what patches you used and how you changed the configuration, if anything, someone here will probably be able to track the error down in very short time.  However, saying "it doesn't work" doesn't help us much 8)
    So, instead of saying "it doesn't work", I should have said "I want it, can you make it for me or give it to me?"
    Anyway, now that this thread has evolved this way, I'll post the .config and error message when I have access to my own computer (that's after the weekend).

  • SOLVED(8i): missing symbol nnflboot (with new patch)

    8i-EE with new patch (patch date 27 August) has a big problem:
    the created libclntsh.so is useless: missing symbol nnflboot,
    which doesn't exist anywhere.
    (And to the guy who wrote something that sounded like this isn't
    serious: not a single program that uses libclntsh, which is THE
    library every dynamically linked Oracle-client program uses, will
    run!)
    Reason: script bin/gennfgt creates the C-sources for nnfgt.o,
    which contains that undefined symbol (nnfgt.o is in libn8.a). The
    script checks what libs are available and also checks for and
    finds libldapclnt8.a. Now it adds a call to nnflboot to the
    C-file, because it has found LDAP-support - but the libnldap8.a,
    where this funtion is supposed to be defined, is size 0.
    Good solution: hey, Oracle, give us a libnldap8.a!
    Quick hack: remove the check for LDAP from gennfgt, and do
    gennfgt >temp.c
    gcc -c -o nnfgt.o temp.c
    rm temp.c
    ar r nnfgt.o libn8.a
    genclntsh
    relink all
    That was easy, wasn't it ;-) ?
    There are many more bugs left....
    null

    Hello Michael,
    thanks for the help, Oracle 8i on Suse 6.2 runs fine now. But I
    didn3t test it very well, perhaps there still many bugs.
    Just one quick hint:
    it3s
    ar r libn8.a nnfgt.o
    not
    ar r nnfgt.o libn8.a
    I3m looking forward to your patch, so we don3t have to hack all
    the 8i, to get it to work.
    Keep up with the good work,
    Ralph
    null

  • [SOLVED] Managing Kernels with rEFInd

    Hey fellows hope you're all doing great.
    I just have some questions regarding refind boot manager which I use to dual boot arch and windows on my laptop.
    Before I installed arch,I installed refind boot manager from windows 8 using the guide  on the rodsmith website.
    Then I went on and installed arch,and everything worked right away.
    On the arch system I mounted the efi partition to the
    boot folder using fstab.
    UUID="502D-3405" /boot/efi vfat defaults 0 1¬
    /dev/sda2: UUID="502D-3405" TYPE="vfat" PARTLABEL="EFI system partition" PARTUUID="85674c9f-2484-4b3b-bb97-2205e8d9da1c"
    so what resides now in my boot folder next to the efi folder,are the files (initramfs-linux.img, initramfs-linux-fallback.img
    and vmlinuz-linux)
    to make a long story short,I'm trying to create a custom entry in refind to boot into the kernel with modified parameters.
    I just added this stanza to the defualt refind.conf file in (/boot/efi/EFI/refind/)
    #Custom.Kernel Test
    menuentry "Arch Linux" {
    icon /EFI/refind/icons/os_arch.icns
    loader /boot/vmlinuz-linux
    initrd /boot/initramfs-linux.img
    options "root=PARTUUID=5b772462-68e1-463c-b22f-8ff22625ec21 rw rootfstype=ext4 pcie_aspm=force i915.i915_enable_rc6=1"
    blkid
    /dev/sdb1: LABEL="root" UUID="310f4bbc-0a2c-4667-a397-d020a7c94177" TYPE="ext4" PARTUUID="5b772462-68e1-463c-b22f-8ff22625ec21"
    The entry is there,but the the system won't boot.I also tried compiling a custom kernel the traditional way using the guide on the wiki,the kernel and the img are created another entry for the custom kernel which showed up on the refind menu,when I select it,error that the loader is not found while loading vmlinuz comes up although all the files are in the boot directory.
    Is there any thing I'm missing to make the new kernel bootable ?
    Last edited by Herbalist (2014-08-01 12:24:30)

    It seems as if you have two drives: one containing the efi-partition (sda2) and one containing your system (sdb)
    On which partition is your boot folder you put the kernel images in?
    If your kernel files are NOT on the efi partition you need to specify that using the 'volume' token as described here because the paths for 'loader' and such are relative to the efi partition or the specified volume.
    Last edited by dice (2014-07-31 15:59:24)

  • Kernel upgrade - 640 patch level 247 - subsequent patches needed

    Hi community,
    I recently upgraded the kernel of our system SAP ECC 5.0 to kernel release 640 patch level 247
    I used the the two files EXE and EXEDB as I usually do in this cases.
    Unfortunately this kernel is affected with the problem described in note 1239685, which is critical for us.
    To solve the problem SAP recommends upgrading kernel to patch level 252, which is not present in my files, but is present in the single disp+work package, which is level 273
    What is the correct procedure in this case? I have to unpack only the disp+work package or all the archives listed in the download place?
    Regards,
    Valerio

    Dear Valerio,
    The packages SAPEXE.SAR and SAPEXEDB.SAR contain a complete set of database independent (SAPEXE.SAR) and database dependent (SAPEXEDB.SAR) executables. A kernel patch is delivered as a dw.SAR package. It is sufficient to extract the content of the dw.SAR into DIR_EXECUTABLE (normally /usr/sap/<SID>/SYS/exe/run for a 6.xx system on UNIX). Of course, this should be done while the system is down.
    Best Regards,
    Tim

  • Rtorrent with DHT patch

    Hey guys, I've been using rtorrent recently. The only thing I missed was DHT to get more peers when seeds were low.
    Fortunately I discovered a patch on rtorrent's trac website that adds DHT capability to rtorrent. I've tested it and it's been working well for me.
    It's quite a substantial patch, written by Josef Drexler. It's available with description here: http://tk.ttdpatch.net/~jdrexler/dht/.
    It appears that Josef updates the patch quite regularly, it applies cleanly to recent rtorrent svn versions.
    The patch contains patches for both rtorrent, and the libtorrent library, so it needs to be split as we build those separately on arch.
    If anyone wants to use rtorrent with DHT, just make packages from the following PKGBUILDs:
    edit: I've edited this post to address the problems fwojciec had. I've now added the complete working PKGBUILDs.
    The easiest solution to compile problems is to use revision 992 of libtorrent and revision 995 of rtorrent which is what the PKGBUILDs below do, so they should work no problem.
    I believe I found the original PKGBUILDs elsewhere on the forum, apparently contributed by swogs, and just modified them to apply the DHT patch.
    If you're curious, the sed lines grab the needed part of the patch for each PKGBUILD.
    libtorrent PKGBUILD:
    # Contributor: swogs <hugin0>
    pkgname=libtorrent-svn
    pkgver=992
    pkgrel=1
    pkgdesc=""
    arch=('i686')
    url="http://libtorrent.rakshasa.no/"
    depends=('libsigc++2.0' 'openssl')
    makedepends=('subversion')
    conflicts=('libtorrent')
    provides=('libtorrent')
    source=(http://tk.ttdpatch.net/~jdrexler/dht/dht.diff)
    md5sums=(9f6195e58846e3284aac6be135f6910d)
    _svntrunk=svn://rakshasa.no/libtorrent/trunk/libtorrent
    _svnmod=libtorrent
    build() {
    cd $startdir/src
    svn co $_svntrunk -r $pkgver
    sed -n '/Index: libtorrent/,$p' dht.diff | patch -Np0 || return 1 # Apply DHT patch
    cd $_svnmod
    ./autogen.sh
    msg "SVN checkout done or server timeout"
    msg "Starting make..."
    ./configure --prefix=/usr
    make || return 1
    make DESTDIR=$startdir/pkg/ install
    # vim:syntax=sh
    rtorrent PKGBUILD:
    # Contributor: swogs <hugin0>
    pkgname=rtorrent-svn
    pkgver=995
    pkgrel=1
    pkgdesc=""
    arch=('i686')
    url="http://libtorrent.rakshasa.no/"
    depends=('libtorrent-svn' 'curl')
    makedepends=('subversion')
    conflicts=('rtorrent')
    provides=('rtorrent')
    source=('dhtrt.diff')
    md5sums=('b85fb1533070c437a117eb577102a7c6')
    _svntrunk=svn://rakshasa.no/libtorrent/trunk/rtorrent
    _svnmod=rtorrent
    build() {
    cd $startdir/src
    svn co $_svntrunk -r $pkgver
    patch -Np0 -i dhtrt.diff || return 1 # DHT patch
    cd $_svnmod
    ./autogen.sh
    msg "SVN checkout done or server timeout"
    msg "Starting make..."
    ./configure --prefix=/usr
    make || return 1
    make DESTDIR=$startdir/pkg/ install
    # vim:syntax=sh
    The modified PKGBUILDs will generate packages with DHT support. One thing you can consider doing is
    to eliminate the md5sums so the PKGBUILD will still work if Josef updates the patch. Right now, if the patch is changed
    the package will fail to build since the checksum won't match.
    Also, although the patch works on rtorrent-svn version 995, it only works on libtorrent-svn version 992.
    So use makepkg to build the libtorrent PKGBUILD; versionpkg will try to build version 995 and fail.
    After installing the packages, add this to your ~/.rtorrent.rc:
    # Enable DHT support for trackerless torrents or when all trackers are down.
    # May be set to "disable" (completely disable DHT), "off" (do not start DHT),
    # "auto" (start and stop DHT as needed), or "on" (start DHT immediately).
    # The default is "off". For DHT to work, a session directory must be defined.
    dht = auto
    # UDP port to use for DHT.
    dht_port = 6881
    I have DHT set to auto, and changed the dht_port to coincide with my forwarded ports.
    There are explanations of how DHT works with rtorrent in the link to the patch I provided above.
    When you start up rtorrent you'll see a message like this at the bottom:
    (19:23:50) Starting DHT server on port 30010
    and periodically under active torrents:
    Tracker[2:2]: Connecting to dht:// [Announcing: 5/8 nodes replied]
    Okay, so hope someone finds this useful, let me know if there are (any more) problems.
    Last edited by veek (2007-10-28 16:27:27)

    Hey fwojciec, thanks for pointing out those issues.
    I forgot I didn't find the original PKGBUILDs in AUR, and as you discovered they were on the forum.
    In addition, I forgot that I had to make a patch (besides the DHT patch) to get revision 992 of rtorrent  to compile.
    The patch solved some issues with includes related to sigc++.
    In any case, rtorrent 995 builds no problem.
    I've updated my original post to include the entire PKGBUILDs for both libtorrent and rtorrent. They should both build no problem.
    Sorry to make you do all that unnecessary work
    Last edited by veek (2007-10-28 16:30:09)

  • Kernel Release 700 Patch Number 83

    Hi,
    I need help!!!
    We load the kernel last night and the Instance won't start then re-applied the old kernel we have the same result.  DO you guy have any ideas SAP ask me to IPL the system and don't have any luck.
    We are on Kernel Release 700 patch number 80 for 2 weeks after the upgrade.
    I received this message on the STARTSAP job and looking for the upgrade directory.
    Message . . . . :   collectSystemInfo: could not open
    profile directory "/usr/sap/putr3/DEV/SYS/profile".
    Ramon Mora

    Hi Ramon,
    as discussed with you, this problem occured because of your RMVSAP before. Therefore the IGS was deleted.
    As you didn't implement note 937000 before, it was still deleted after APYSAP and therefore SAP was "unhappy" and stopped immediately after trying to start :-((
    As the IGS in R3 systems is very RARELY used, a common workaround is to patch the start-profile that way, that IGS is no longer started.
    Regards
    Volker Gueldenpfennig, consolut.gmbh
    http://www.consolut.de - http://www.4soi.de - http://www.easymarketplace.de

  • Recompile a compiled kernel with ABS

    I had been compiling my own kernel with the traditional method for ages. Sometimes ago, I decided to try the ABS method, modifying properly a PKGBUILD for the kernels provided by arch. I now appreciate the provided automation and the ease in combining arch patches with the patches I need or like.
    After a deep personalization of the PKGBUILD, there is now only a feature of the old method I continue to miss. It is when I decide to change something in the configuration of a kernel I have already compiled, and I want to recompile it. If I do so with the traditional method, the previous compilation is somewaht "cached"  and only what is actually different is compiled again: thus, the recompilation time is apparently shorter than the time needed by the first compilation.
    I am not able to do the same with the ABS method. It seems that the directory with the kernel source into src/ is rewritten every time (i.e., the kernel package is untarred also when is already there). Moreover, I also need to delete completely src/ or part of his content, otherwise makepkg complains about patches already being there. Is there a way to avoid this behaviour, so to shorten the recompilation time?

    Yes, ccache drastically reduces recompilation times (for my kernel, from 30 min to 5 min). However, when you change just a couple of peripheric things in config, 5 minutes are too much. Anyway, thanks a lot.

  • Problem building kernel with makepkg

    I tried several times building a custom 2.6.8.1 kernel with makepkg and the PKGBUILD file obtained from http://wiki.archlinux.org/index.php/Ker … with%20ABS. Unfortionately, the process allways ends with the following error:
    ln: when making multiple links, last argument must be a directory
    make: *** [_modinst_] Error 1
    ==> ERROR: Build Failed.  Aborting...
    Is there something wrong with the build file posted on the wiki or am I doing something stupid?

    Err... I might have done a small mistake in my previous post.
    I didn't try to build the kernel using the Wiki page above.
    I've used http://wiki.archlinux.org/index.php/Bui … with%20ABS
    You can find below the revised PKGBUILD for that page. It might look weird, but it's very functional. It should also work with the stock kernels.
    This PKGBUILD includes kernel version/revision autodetection. This helps when you apply patches which change those variables (such as ck, mm etc.). The changes I've made automatically change the package details (pkgname, pkgver, pkgdesc) to reflect the kernel changes.
    Please test because I've made some cosmetic changes lately which might have scrambled something around there. If you find it working, please post here and I'll put it in the Wiki page above. Maybe it could also be used as a base for building kernels with the ABS.
    Any feedback is welcomed. Enjoy.
    # ChangeLog
    # v0.3 2004/08/19 - Mircea Ionut Bardac (IceRAM)
    # Updated the PKGBUILD for autodetection of the kernel version and kernel revision
    # v0.2 2004/07/23 - Wojciech Szlachta
    # Modified from official PKGBUILD for kernel26-scsi by judd <[email protected]>
    # and from custom PKGBUILD to support multiple installed kernels by jea.
    # you can leave kerrev empty if you don't want to name the kernel in any way
    kerrev=
    pkgname=kernel26
    pkgver=2.6.7
    pkgrel=1
    pkgdesc="Custom Linux Kernel and modules"
    url="http://www.kernel.org"
    depends=('module-init-tools')
    source=(ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$pkgver.tar.bz2
    config
    md5sums=('a74671ea68b0e3c609e8785ed8497c14'
    '4da09ca74deafb3c6769b8de895e089b'
    getvar() {
    old=$(cat Makefile | grep "^$1")
    echo $(echo ${old/"$1 ="/} | sed -e "s/[ ]*(.*)[ ]*/1/g")
    return 0
    build() {
    cd $startdir/src/linux-$pkgver
    # apply patches here
    # patch -p1 < ../patch1
    # get rid of the 'i' in i686
    carch=`echo $CARCH | sed 's|i||'`
    cat ../config | sed "s|#CARCH#|$carch|g" >./.config
    # make changes in kernel configuration
    make oldconfig || return 1
    cp ./.config ../../config.new
    #use the following line instead of the 2 lines above for default config
    #yes "" | make config || return 1
    # set EXTRAVERSION to create unique /lib/modules/ subdirectories
    _ker_extraversion=$(getvar "EXTRAVERSION")
    # update EXTRAVERSION in the Makefile
    _oldline=$(cat Makefile | grep "^EXTRAVERSION")
    if [ $kerrev != "" ]; then
    _ker_extraversion="$_ker_extraversion-$kerrev"
    cat Makefile | sed "s|$_oldline|EXTRAVERSION = $_ker_extraversion|" > tmpMake
    mv tmpMake Makefile
    fi
    kerrev=$_ker_extraversion
    kerver=$(getvar "VERSION").$(getvar "PATCHLEVEL").$(getvar "SUBLEVEL")
    # update the package information from the kernel Makefile
    pkgver=$kerver$(echo $_ker_extraversion | sed -e 's/-/./g')
    # removing patches versions from the revision string
    _n1=$(expr match $kerrev '([.][0-9]*)')
    _n21=$(expr match $q '[.][0-9]*(.*)')
    _n2=$(echo $_n21 | sed -e "s/[0-9]*-/-/g")
    pkgname=kernel26$_n1$_n2
    pkgdesc="Custom Linux Kernel ($kerver) and modules - revision $kerrev / package version: $pkgver build: $pkgrel"
    echo "- Package information ----------------"
    echo " Package name: $pkgname"
    echo " Package version: $pkgver"
    echo " Package release: $pkgrel"
    echo " Kernel version: $kerver"
    echo " Kernel revision: $kerrev"
    echo "--------------------------------------"
    make clean bzImage modules || return 1
    mkdir -p $startdir/pkg/{lib/modules,boot}
    make INSTALL_MOD_PATH=$startdir/pkg modules_install || return 1
    # create unique names in /boot/
    cp System.map $startdir/pkg/boot/System.map26$kerrev
    cp arch/i386/boot/bzImage $startdir/pkg/boot/vmlinuz26$kerrev
    install -D -m644 Makefile $startdir/pkg/usr/src/linux-$kerver/Makefile
    install -D -m644 .config $startdir/pkg/usr/src/linux-$kerver/.config
    install -D -m644 .config $startdir/pkg/boot/kconfig26$kerrev
    mkdir -p $startdir/pkg/usr/src/linux-$kerver/include
    mkdir -p $startdir/pkg/usr/src/linux-$kerver/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-$kerver/include/
    done
    # copy files necessary for later builds, like nvidia and vmware
    cp -a scripts $startdir/pkg/usr/src/linux-$kerver/
    mkdir -p $startdir/pkg/usr/src/linux-$kerver/.tmp_versions
    cp arch/i386/Makefile $startdir/pkg/usr/src/linux-$kerver/arch/i386/
    cp arch/i386/kernel/asm-offsets.s $startdir/pkg/usr/src/linux-$kerver/arch/i386/kernel/
    # copy in Kconfig files
    for i in `find . -name "Kconfig*"`; do
    mkdir -p $startdir/pkg/usr/src/linux-$kerver/`echo $i | sed 's|/Kconfig.*||'`
    cp $i $startdir/pkg/usr/src/linux-$kerver/$i
    done
    cd $startdir/pkg/usr/src/linux-$kerver/include && ln -s asm-i386 asm
    chown -R root.root $startdir/pkg/usr/src/linux-$kerver
    # create a unique subdirectory under /usr/src/
    cd $startdir/pkg/usr/src
    mv linux-$kerver linux-$kerver$kerrev
    cd $startdir/pkg/lib/modules/$kerver$kerrev &&
    (rm -f build; ln -sf /usr/src/linux-$kerver$kerrev build)

Maybe you are looking for

  • ERROR in executing triggers...

    Hi, please help me to solve this, I ve searched the web but could not find any good answer. I see this errors during oracle 10g shutdown, and startup. It is a pretty new installed oracle. Did I miss something during the installation ??? Please advice

  • Table : Production Order in the sales order

    Hi, When can we found in the tables of the sales order the link to the PO numer. And, In which field screen in the sales order document we can find the order number. Thanks for yur quick answer.

  • How do I rid my Mac of viruses and malware?

    i am experiencing lots of malware pop ups and annoying websites coming up saying I have viruses and telling me that I have to call an 800 number to get rid of this.  how do I fix this?

  • Making Call from Service (XML) and (JTAPI)

    We have a Cisco IP Phone Service for survey's process, when the user accessed the service sends him a phone number to do the survey, we want to make the call and continue with the survey questions but when we do the connection the service closes and

  • IDOC segment for VBKD-BSTKD_E

    Hi, I am using ORDERS04 as basic type for order creation from iDOC. For one of my requirment I need the iDOC segment for VBKD-BSTKD_E field. The field is in purchase order data at header > Ship to party view > Purchase order no. Thanks Sanjay