Ubuntu Kernel Packaging for Overo
Shell Perl JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
configs
jenkins
scripts
README
mkkerneldeb

README

configs:
  Configuration files to run to setup env vars before running the package_kernel
  script in scripts.

  Naming convention:
    variant-socflavour-version.cfg

    The variant- field is optional, if empty then the kernel probably comes from
    linux-linaro. There are currently two variants, lt means the source is a landing
    team kernel.  A variant of llt means the source comes from linux-linaro-tracking.

    The socflavour is self explanatory however sometimes a board name is used as in
    the origen kernels.

    The version should be just two digits like 3.4, 3.5 etc however the kernel can be a
    release candidate (-rcN) or a stable kernel (3.4.47).

    At the time of the last update to this README the configs were:

      llt-omap-3.4.cfg
      llt-origen-3.4.cfg
      lt-omap-3.4.cfg
      lt-origen-3.5.cfg
      lt-vexpress-3.5.cfg
      origen-3.5.cfg
      vexpress-3.5.cfg

  Contents:
    Here is an example config for an origen 3.5 kernel using the samsung landing
    team tracking kernel when it was tracking 3.5. The comment lines are not in the
    actual file and are here to serve as annontaton.

      #!/bin/bash
      # Samsung LT git repo, tracking branch
      echo "export kernel_repo=git://git.linaro.org/landing-teams/working/samsung/kernel.git"
      echo "export kernel_branch=tracking"
      # Use the 3.5 packaging template
      echo "export linaro_ubuntu_packaging_repo=git://git.linaro.org/ubuntu/linux-linaro-quantal.git"
      echo "export linaro_ubuntu_packaging_branch=linaro-ubuntu-packaging-3.5"
      # SOCFLAVOUR ends up in source and binary package names to make them unique so they are
      # all standalone.  The other entries here end up going into descriptions in the debian
      # control file.
      echo "export SOCFLAVOUR=lt-origen"
      echo "export SOCVENDOR=Samsung"
      echo "export SOCFAMILY=ORIGEN"
      echo "export SAMPLEBOARDS=origen"
      # This is just to make cloning faster.
      echo "export nearby_git=~/reference-git"
      # This is used to pick a board conf from linaro/configs/BOARD.conf in case SOCFLAVOUR
      # is not the right thing to use.
      echo "export linaroconfigsboardflavour=origen"
      # What distro to put in the changelog header
      echo "export distribution=precise"
      # repo and branch for core and ubuntu config fragments
      echo "export ubuntu_and_base_config_repo=git://git.linaro.org/kernel/configs.git"
      echo "export ubuntu_and_base_config_branch=config-core-3.4"
      # repo and branch for board config fragment
      echo "export board_config_repo=git://git.linaro.org/kernel/configs.git"
      echo "export board_config_branch=config-boards-3.4"

scripts:
  package_kernel -- a script that will package a kernel using info from env vars likely
    setup by a script like those in configs
  filtersauce -- maintenance script for creating the linaro-ubuntu-packaging trees

usage:
  Create your own config using an existing one as an example or just use an existing one.  Then
  run it to set up some vars and the just run the package_kernel script:

  package_kernel --cfg lt-omap-3.4.cfg foo=bar foo1=bar1
  the var=value settings are used to overide settings in the .cfg file
  

It's just that easy (well it should be after all the bugs are worked out).  When the script 
completes there should be a directory called kernel_build.  Just cd into it and run fdr clean
(fakeroot ./debian/rules) and debuild:
  fdr clean
  time debuild --no-lintian -j8 -eCROSS_COMPILE=arm-linux-gnueabi- -us -uc -b -aarmel