diff options
author | Rod Whitby <rod@whitby.id.au> | 2006-01-14 19:28:53 +0000 |
---|---|---|
committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2006-01-14 19:28:53 +0000 |
commit | 6d6f449a77592d066856c916b660cd52c54f5147 (patch) | |
tree | c098328810309bb06764798829c08941149ba4c3 /packages/linux/nas100d-kernel.inc | |
parent | a2726d6983f8f5e80d81fea082b1674bbab017ba (diff) |
nas100d-kernel: subsumed into ixp4xx-kernel for LudeOS.
Diffstat (limited to 'packages/linux/nas100d-kernel.inc')
-rw-r--r-- | packages/linux/nas100d-kernel.inc | 243 |
1 files changed, 0 insertions, 243 deletions
diff --git a/packages/linux/nas100d-kernel.inc b/packages/linux/nas100d-kernel.inc deleted file mode 100644 index 69e9f4d285..0000000000 --- a/packages/linux/nas100d-kernel.inc +++ /dev/null @@ -1,243 +0,0 @@ -# nas100d-kernel.inc -# -# Standard definitions for any NAS 100d Linux kernel. -# Include this file in a .bb which specifies, at least, -# PN,PV,PR for the desired kernel -# -# Define the following *before* including this file as -# required: -# -# N1K_FILES - kernel-tree path of files to install -# N1K_PATCHES - full list of patches to apply -# -# N1K_SUFFIX - the suffix to add after 'zImage-' in the -# deploy/images directory - defaults to "ludeos" -# -# -------------------------------------------------------------- -# -# Within this file bitbake variables local to the file are -# named N1K_FOO -# -SECTION = "kernel" -DESCRIPTION = "Linux kernel for the Iomega NAS 100d device" -LICENSE = "GPL" -MAINTAINER = "John Bowler <jbowler@acm.org>" - -DEPENDS += "devio-native" - -# Linux kernel source has the general form linux-X.Y.Z-patchP, -# X.Y is the major version number, Z (which may have multiple -# parts) is a sub-version and 'patch' is something like 'mm' or -# 'ac' with a patch version. The original bz2 archive will be -# in a directory/file vX.Y/linux-X.Y.Z.tar.bz2. The unpacked -# source will be in the directory linux-X.Y.Z and this directory -# name corresponds to the module directory (in /lib/modules). -# -# The corresponding .bb file should be called: -# -# package_X.Y.Z-patchP -# -# Giving PN=package PV=X.Y.Z-patchP (and PR is set in the .bb -# file). Files, including the all important defconfig, are -# searched for in the following directories (last one first): -# -# ludeos-kernel-2.6.11.2 -# nas100d-kernel/files -# nas100d-kernel/X.Y -# nas100d-kernel/X.Y.Z -# nas100d-kernel/X.Y.Z-patch -# nas100d-kernel/X.Y.Z-patchP -# package-X.Y.Z-patchP -# -# This allows sharing of patch files and other useful source! -# To share a file or patch with an earlier version put it in -# the shared directory - e.g. to use foo.patch on 2.6.11.2 and -# 2.6.11.4 it should be in directory nas100d-kernel/2.6.11. -# -# Note that when there are multiple patches the X.Y.Z-patch form -# uses base-patch (e.g. 2.6.12-mm) whereas X.Y.Z-patchP has the -# full form, for example 2.6.12-rc3-mm1 (in the same case). - -#PN=package-name -#PV=package-version (full) - -# The patch has the general form (rcN|preN|acN|mmN|bkN)* with the -# separate patch items being separated by '-' characters. The -# rc patch is first and has the important property that it -# requires the *preceding* kernel base version and that this -# will be the source directory name. -python () { - # The patches list may be empty. This code starts with the base - # kernel version and steps through the patches. Because the rc and - # pre patches actually require the *preceding* kernel version the code - # fixes that up appropriately. - pv = bb.data.getVar("PV",d,1).split('-') - kernel = pv[0].split('.') - base = pv[0] - name = [base] - major = '.'.join(name[0].split('.')[0:2]) - minor = '.'.join(name[0].split('.')[0:3]) - patch_uri = [ None ] - filedir = "${FILE_DIRNAME}/nas100d-kernel/%s" - # This entry will become the last one (everything is inserted before it) - filepath = [ filedir % "files" ] - pref = 10 - mmac = 0 - for patch in pv[1:]: - name.append(patch) - pname = '-'.join(name) - if patch[0:2] == "rc" or patch[0:3] == "pre": - patch_uri.append("ftp://ftp.kernel.org/pub/linux/kernel/v%s/testing/patch-%s.bz2;patch=1;pname=%s" % (major, pname, pname)) - kernel[-1] = str(int(kernel[-1]) - 1) - if patch[0:2] == "rc" and pref == 10: - pref = 6 - filepath[0:0] = [ filedir % name[0] ] - filepath[0:0] = [ filedir % (name[0] + "-rc") ] - else: - pref = 2 - elif patch[0:2] == "bk" or patch[0:3] == "git": - patch_uri.append("ftp://ftp.kernel.org/pub/linux/kernel/v%s/snapshots/patch-%s.bz2;patch=1;pname=%s" % (major, pname, pname)) - pref = 2 - elif patch[0:2] == "ac": - patch_uri.append("ftp://ftp.kernel.org/pub/linux/kernel/people/alan/linux-%s/%s/patch-%s" % (major, base, pname)) - mmac = 2 - filepath[0:0] = [ filedir % (name[0] + "-ac") ] - elif patch[0:2] == "mm": - patch_uri.append("ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/%s/%s/%s/%s.bz2;patch=1;pname=%s" % (major, base, pname, pname, pname)) - mmac = 2 - filepath[0:0] = [ filedir % (name[0] + "-mm") ] - else: - raise bb.build.FuncFailed("nas100d-kernel: patch %s not recognized in %s" % (patch, '-'.join(pv))) - filepath[0:0] = [ filedir % pname ] - base = pname - - base = '.'.join(kernel) - patch_uri[0] = "ftp://ftp.kernel.org/pub/linux/kernel/v%s/linux-%s.tar.bz2" % (major, base) - filepath[-1:-1] = [ filedir % base ] - if base != minor: - filepath[-1:-1] = [ filedir % minor ] - filepath[-1:-1] = [ filedir % major ] - - bb.data.setVar("N1K_SRCMAJ", major, d) - # bb.note("N1K_SRCMAJ := %s" % major) - bb.data.setVar("N1K_SRCVER", base, d) - # bb.note("N1K_SRCVER := %s" % base) - bb.data.setVar("N1K_SRCURI", ' '.join(patch_uri), d) - # bb.note("N1K_SRCURI := %s" % ' '.join(patch_uri)) - bb.data.setVar("N1K_FILESPATH", ':'.join(filepath), d) - # bb.note("N1K_FILESPATH := %s" % ' '.join(filepath)) - bb.data.setVar("DEFAULT_PREFERENCE", pref-mmac, d) - # bb.note("DEFAULT_PREFERENCE := %s" % (pref-mmac)) -} - -# FILESPATH: this list is in order last-searched-first, therefore -# the first entry is the *latest* and/or most specific -FILESPATH = "${N1K_FILESPATH}:${FILE_DIRNAME}/nas100d-kernel/" - -# The working directory will be the 'base' version (which may not be the -# same as implied by the PV variable because it corresponds to the prior -# minor version for rc and pre patched versions). -S = "${WORKDIR}/linux-${N1K_SRCVER}" - -# N1K_FILES is a list of additional files added to the source, these are -# put in place before the patches, so may themselves be patched. The list -# gives the path name relative to the base of the kernel source tree, the -# base file name is used to *find* the file. -N1K_FILES ?= "" - -N1K_SRCFILES = "${@( ' '.join([ ("file://" + n2k_file.split('/')[-1]) for n2k_file in bb.data.getVar("N1K_FILES",d,1).split(None) ]) )}" - -# N1K_PATCHES is a list of additional patches, the list specified -# here comes from the ludeos-2.6.11.2 kernel, typically extra -# patches will be required and very often patches will need to -# be removed (i.e. the default is typically not very useful!) -N1K_PATCHES ?= "" - -N1K_SUFFIX ?= "ludeos" - -SRC_URI = "${N1K_SRCURI}" -SRC_URI += "${N1K_SRCFILES}" -SRC_URI += "${N1K_PATCHES}" -SRC_URI += "file://defconfig" - -COMPATIBLE_HOST = 'arm.*-linux' - -inherit kernel - -ARCH = "arm" -KERNEL_IMAGETYPE = "zImage" -# To specify the console set KERNEL_CONSOLE in the .bb file. -# CMDLINE_ROOT contains the boot options, CMDLINE_KERNEL_OPTIONS -# contains the things for a specific kernel. -# CMDLINE_KERNEL_OPTIONS ?= "reboot=s" -CMDLINE_KERNEL_OPTIONS ?= -CMDLINE_ROOT = "root=/dev/mtdblock2 rw rootfstype=jffs2 mem=64M@0x00000000 init=/linuxrc" -CMDLINE_DEBUG = -CMDLINE = "${CMDLINE_ROOT} ${CMDLINE_KERNEL_OPTIONS} ${CMDLINE_DEBUG} ${CMDLINE_CONSOLE}" - -# Add the architecture compiler flags to KERNEL_CC and KERNEL_LD as -# required. Notice that this has to be done for each separately built -# module as well! -KERNEL_CC += "${TARGET_CC_KERNEL_ARCH}" -KERNEL_LD += "${TARGET_LD_KERNEL_ARCH}" - -# Set EXTRAVERSION and LOCALVERSION to "" so that the kernel version -# remains pinned to the x.y.z form, also turn off the directory -# printing which provides almost all the output of an incremental build. -EXTRA_OEMAKE += "EXTRAVERSION=" -EXTRA_OEMAKE += "LOCALVERSION=" -EXTRA_OEMAKE += "MAKEFLAGS='--no-print-directory'" - -# Override KERNEL_RELEASE from kernel.bbclass to match: -KERNEL_RELEASE = "${KERNEL_VERSION}" - -# By putting the added files in place in a separate task before -# do_patch it becomes possible to patch these files. -do_unpacklocal() { - for f in ${N1K_FILES} - do - s="$(basename "$f")" - install -m 0644 "${WORKDIR}/$s" "${S}/$f" - done -} - -addtask unpacklocal before do_patch after do_unpack - -do_configure_prepend() { - rm -f ${S}/.config - echo "CONFIG_CMDLINE=\"${CMDLINE}\"" >>'${S}/.config' - if test '${ARCH_BYTE_SEX}' = be - then - echo 'CONFIG_CPU_BIG_ENDIAN=y' >>'${S}/.config' - fi - if test '${SLUGOS_IMAGESEX}' = big-endian - then - echo 'CONFIG_JFFS2_BIG_ENDIAN=y' >>'${S}/.config' - fi - if test '${SLUGOS_IMAGESEX}' = little-endian - then - echo 'CONFIG_JFFS2_LITTLE_ENDIAN=y' >>'${S}/.config' - fi - sed -e '/CONFIG_CPU_BIG_ENDIAN/d' -e '/CONFIG_CMDLINE=/d' \ - -e '/CONFIG_JFFS2_NATIVE_ENDIAN=/d' \ - -e '/CONFIG_JFFS2_BIG_ENDIAN=/d' \ - -e '/CONFIG_JFFS2_LITTLE_ENDIAN=/d' \ - '${WORKDIR}/defconfig' >>'${S}/.config' - rm -rf ${S}/include/asm-arm/arch ${S}/include/asm-arm/proc \ - ${S}/include/asm-arm/.proc ${S}/include/asm-arm/.arch -} - -do_deploy[dirs] = "${S}" -do_deploy() { - install -d ${DEPLOY_DIR}/images - install -m 644 arch/${ARCH}/boot/${KERNEL_IMAGETYPE} ${DEPLOY_DIR}/images/${KERNEL_IMAGETYPE}-${N1K_SUFFIX} -} - -addtask deploy before do_build after do_compile - -python () { - # Don't build the kernel unless we're targeting an nas100d - mach = bb.data.getVar("MACHINE", d, 1) - if mach != 'nas100d': - raise bb.parse.SkipPackage("LudeOS only builds for the Iomega NAS 100d") -} |