← Back to team overview

documentation-packages team mailing list archive

[Bug 669886] Re: KernelCompile - incorrect instructions for usage of AUTOBUILD

 

Hi Vince, and thanks for your report!

Please note that the page in question is a wiki page which anybody can edit - including you. ;-)
https://help.ubuntu.com/community/WikiGuide
Since you seem to know how it should be changed, it would be great if you could fix it.

Due to the nature of the community help wiki, you can't request changes
to it in the form of bug reports.

** Changed in: ubuntu-docs (Ubuntu)
       Status: New => Invalid

-- 
You received this bug notification because you are a member of
Documentation Packages, which is subscribed to ubuntu-docs in Ubuntu.
https://bugs.launchpad.net/bugs/669886

Title:
  KernelCompile - incorrect instructions for usage of AUTOBUILD

Status in “ubuntu-docs” package in Ubuntu:
  Invalid

Bug description:
  Binary package hint: ubuntu-docs

  This is a report about  help.ubuntu.com/community/Kernel/Compile.
  I didn't just dive in and change it because I wanted to check I wasn't making things worse.  If you think I'm right let me know & I'll go fix the page.

  I think the information on this page regarding building ubuntu kernels
  from the ubuntu git repository has some errors. I may be doing some
  thing wrong but here is what I observe.

  I want to build a checkout somewhere between two tags 
  (eg revision 47309c6a6af8cce3586c735788fc978bbcd7249f.)

  Setting the AUTOBUILD variable is supposed to make the build process
  append a string to the ABI number. Instead of packages like linux-
  image-2.6.32-25-generic, I should get  linux-image-2.6.32-25-47349f-
  generic.

  To make this happen I have to run the build like this:
    fakeroot debian/rules clean AUTOBUILD=1
    fakeroot debian/rules binary-generic AUTOBUILD=1

  HOWEVER, doing it as described in the page
    fakeroot debian/rules clean
    AUTOBUILD=1 fakeroot debian/rules binary-generic
  does not work, for two reasons.
  1. if AUTOBUILD is not set when you run debian/rules clean, the ABI number is not given the extra suffix when debian/control is created. So the kernel build goes ahead but the packaging step fails with an error like this:
          dpkg-gencontrol: error: package linux-image-2.6.32-24-47349f-generic not in control info

  2. I find that placing the AUTOBUILD=1 before the 'fakeroot' does not work, neither this way:
       AUTOBUILD=1 fakeroot debian/rules ...
     nor this way
        export AUTOBUILD=1 ; fakeroot debian/rules ...
      Doing it with AUTOBUILD=1 given after the makefile name (debian/rules) does work.

  To reproduce:
   * check out the kernel git as per https://wiki.ubuntu.com/KernelTeam/KernelGitGuide
   * run the 'printenv' target of debian/rules with AUTOBUILD set or not set.

  Here are my results:
    $ git remote -v
    origin  git://kernel.ubuntu.com/ubuntu/ubuntu-lucid.git (fetch)
    origin  git://kernel.ubuntu.com/ubuntu/ubuntu-lucid.git (push)

    $ git show
    commit 47309c6a6af8cce3586c735788fc978bbcd7249f
    ...
    $ echo $SHELL
    /bin/bash
    $ fakeroot debian/rules printenv|grep abinum
    abinum            = 25
    $ AUTOBUILD=1 fakeroot debian/rules printenv|grep abinum
    abinum            = 25
    $ fakeroot debian/rules printenv AUTOBUILD=1 |grep abinum
    abinum            = 25-47349f

    $ cat /etc/lsb-release
    DISTRIB_ID=Ubuntu
    DISTRIB_RELEASE=10.04
    DISTRIB_CODENAME=lucid
    DISTRIB_DESCRIPTION="Ubuntu 10.04.1 LTS"

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-docs/+bug/669886/+subscriptions