Commit Graph

156 Commits

Author SHA1 Message Date
Koen Kooi
c106bb61f5 kernel.bbclass: blacklist 'kernel-misc' from kernel-modules
When 'kernel-misc' is empty do_rootfs will fail when including 'kernel-modules'

The proper fix would be to have a whitelist for the 'kernel-modules' meta-pkg

(From OE-Core rev: bb72bd56101698b7fe166dd02fdca07d06a6eb8b)

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Tested-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-24 12:33:37 +00:00
Darren Hart
3b49416fc7 kernel/bbclass: rework kernel and module classes to allow for building out-of-tree modules
The existing infrastructure uses an external build tree which references the
kernel source in the work dir. If run with rm work, building external modules
will fail.

This patch places a configured source tree in sysroots. Striking a balance
between minimal size and minimal maintenance is difficult. A fully configured
tree is about 500MB after a clean. This version leans on the side of caution and
removes only the obviously unecessary parts of the source tree to conserve
space, resulting in about 170MB. The arch directories would be some additional
pruning we could do. Given examples from the devel package from distributions, I
suspect this size could be reduced to 75MB or so, but at the cost of a much more
complex recipe which is likely to require a great deal more maintenance to keep
current with kernel releases.

Care is also taken to clean the hostprogs in scripts, and the modules are
responsible for building them as needed. Although it is unclear to me if this is
really necessary, especially considering that modules put these bits back as
soon as they compile. If we are not generating an sstate package, I suspect we
can ignore these.

Please try this with your modules and let me know how it does. I tried to take
non linux-yocto kernel recipes into account, but I have only tested with
linux-yocto and the hello-mod recipe so far.

(From OE-Core rev: a9d41062e24a6b99661b3a5256f369b557433607)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Acked-by: Koen Kooi <koen@dominion.thruhere.net>
Acked-by: Gary Thomas <gary@mlbassoc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-23 15:43:46 +00:00
Koen Kooi
509364eb63 kernel bbclass: split do_compile into do_compile and do_compile_modules
This allows recipes to insert a custom task in between building *Image and modules

>From OE .dev revision 615876fe218dc3feb4a3df9e6546a7b1a6376800

(From OE-Core rev: a2cc999d663407d17f41e1b0344361944993fa86)

Signed-off-by: Koen Kooi <koen@openembedded.org>
Acked-by: Graeme Gregory <dp@xora.org.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-15 13:20:43 +00:00
Bruce Ashfield
23ecbad5cd kernel: remove explicit bash call in do_menuconfig
Fixes [BUGID #598]

The explicit addition of "bash" before "make menuconfig"
is clearing variables that are required for pseudo. The
end result is that menuconfig often fails silently with:

ERROR: ld.so: object 'libpseudo.so' from LD_PRELOAD cannot be preloaded: ignored.

Removing bash from the menuconfig SHELLCMDS variable fixes
the psudo problem.

(From OE-Core rev: b909f12a92c86fd2fe9348eeec455e2c9ef71f1a)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-03 16:57:43 +00:00
Joshua Lock
6d261a50ba Ensure Bash is used when spawning terminals
We rely on Bashisms when spawning a terminal so ensure that bash is used
when using devshell and menuconfig.

Fixes [BUGID #119]

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2011-02-24 15:54:09 +00:00
Saul Wold
e95ab29d3b kernel.bbclass: add approproate X Environment variables to allow xterm to start
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2011-02-14 05:33:19 -08:00
Darren Hart
ba163a4378 kernel.bbclass: use defconfig if it exists
It is common enough to want to apply a defconfig if the inheriting
recipe provides it. If the file exists in the $WORKDIR, copy it
over to ${S}/.config provided the target does not already exist.

This allows for recipes derived from kernel.bbclass to manage the
.config on their own, such as linux.inc.

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
2011-02-09 22:44:52 +00:00
Richard Purdie
2d9cc7ec31 kernel.bbclass: Add fix from OE.dev for tmpnam() usage
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-01 12:27:20 +00:00
Dongxiao Xu
bc9d2fbfd4 staging: Use relative path in sysroot-destdir for target recipes
Original we used absolute path in sysroot-destdir for both native and
target recipes. This commit changes target recipes to use relative path
which is same as the image directory.

[sgw: merged with libtool sysroot work]
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2011-01-21 11:18:37 +00:00
Richard Purdie
34bf835168 kernel.bbclass: Remove a binary generated by recent kernel versions
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-01-12 17:30:44 +00:00
Koen Kooi
041adc9712 kernel bbclass: add 'perf' to kernel-modules blacklist
This makes 'kernel-modules' installable again when perf isn't enabled in the kernel config

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-01-12 15:55:25 +00:00
Richard Purdie
14762f71b9 kernel.bbclass: Ensure TOOLCHAIN_OPTIONS is passed to KERNEL_CC and KERNEL_LD
This fixes various incorrect sysroot usages observed by people with sstate.
Thanks to Kevin Tian for figuring out where the problem was and Gary Thomas
for confirming the fix.

Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-12-30 10:16:35 +00:00
Richard Purdie
2e94e9a4fe kernel.bbclass: Use KERNEL_IMAGE_BASE_NAME variable instead of the expanded equivalent. Fixes sstate rebuild issue
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-12-20 21:13:26 +00:00
Kevin Tian
cc8ea76d06 kernel.bbclass: Set vardepsexclusive for KERNEL_IMAGE_BASE_NAME
Exclude the DATETIME variable from the KERNEL_IMAGE_BASE_NAME variable.

This avoids the last road block linux-yocto for sstate.

Signed-off-by: Kevin Tian <kevin.tian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2010-12-16 15:37:40 +00:00
Kevin Tian
c9df637486 kernel.bbclass: Rename do_deploy so the function can be overridden in recipes
Signed-off-by: Kevin Tian <kevin.tian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2010-12-16 15:36:15 +00:00
Bruce Ashfield
422a017e62 kernel: prefer the kernel produced uImage
The custom uImage produced by the kernel classes by default
does not universally boot and working with existing uboot
configurations and setups.

This changes the preference to the uImage constructed by
the kbuild processes and falls back to the other techniques
if uImage is requested by the kernel does not produce one.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2010-11-10 21:22:27 +08:00
Joshua Lock
8be5593777 kernel.bbclass/linux-wrs: move definition of perf package to kernel class
By defining the perf package in the shared kernel class bitbake will be able to
find the package provider even when the preferred kernel doesn't build perf,
preventing dependency resolution failures.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-09-08 16:42:52 +01:00
Joshua Lock
369920107e deploy.bbclass: use new style staging for deploy tasks
All tasks which implement a do_deploy should inherit this class to have the
changes in the deploy task staged.

Update recipes which include a do_deploy function to inherit this class and
to use DEPLOYDIR rather than DEPLOY_DIR_IMAGE.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-08-19 20:06:25 +01:00
Joshua Lock
67239d4251 kernel.bbclass: Fix adding module dependencies to RDEPENDS
Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-08-17 22:49:39 +01:00
Richard Purdie
69ac39b90e kernel.bbclass: do_deploy should use ${B}, not ${S} (which is what ${B} defaults to)
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-11 11:14:43 +01:00
Richard Purdie
650319cd74 kernel.bbclass: Exclude scripts/dtc object files
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-10 15:29:43 +01:00
Richard Purdie
d3630f8174 kernel/package.bbclass: Handle kernel module stripping centrally
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-10 14:47:41 +01:00
Richard Purdie
708db1ef52 kernel.bbclass: Clean up kernel packaging output
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-10 12:02:04 +01:00
Richard Purdie
b83179c87e kernel.bbclass: Simplify shell syntax so pysh can cope with it
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-08-04 11:43:12 +01:00
Bruce Ashfield
d39ae18df2 qemu/mips: arrange for vmlinux to be bootable
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2010-07-19 11:59:51 -04:00
Scott Garman
698dab0109 kernel.bbclass: Remove additional binaries from staging
* Remove additonal binaries known to cause "strip command failed"
  errors during do_package on cross platforms.

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
2010-06-23 18:43:45 +01:00
Richard Purdie
61a730184b kernel.bbclass: Drop code which is duplicated later in the function, fixing older kernel builds
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-06-09 14:27:13 +01:00
Richard Purdie
6bf1f8c76e kernel.bbclass: Simplify the current external module code
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-05-24 11:14:56 +01:00
Scott Garman
ae9174ef53 kernel.bbclass: Stop staging binaries within scripts/
* Preserves scripts/ directory but excludes binaries known to cause
  "strip command failed" errors during do_package on cross platforms

Signed-off-by: Scott Garman <sgarman@zenlinux.com>
2010-05-24 10:34:40 +01:00
Joshua Lock
5bec733fb1 kernel.bbclass: tidy up staging of headers
The changes merged from upstream used the ASMDIR variable even when it might
not have been set. These changes may be incorrect but at the very least I can
now build a QEMU image (including v86d) with the 2.6.33 kernel now.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-20 16:09:39 +01:00
Joshua Lock
769cf0b6b0 kernel.bbclass: Package Kernel firmware
Merged change from OE.dev to create packages of the kernel firmware

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-20 14:16:26 +01:00
Joshua Lock
e30c5a29d2 kernel.bbclass: match x86 header installation to other architectures
The header installation for x86 was slightly different as to that employed
for other architectures, change them to match for consistency.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-20 12:58:25 +01:00
Joshua Lock
5e07bc9128 kernel.bbclass: fix installing of kernels 2.6.34 and above
Changes merged from upstream to cope with changes to directory structures in
recent kernels when building for x86

Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-05-19 12:20:08 +01:00
Richard Purdie
29ae46a866 kernel.bbclass: Use B, not S in KERNEL_VERSION
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-12-18 11:41:44 +00:00
Richard Purdie
51497a7436 kernel.bbclass: Sync with OE.dev
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-12-14 15:55:03 +00:00
Richard Purdie
affbcf3202 kernel.bbclass: Merge do_stage into do_install
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-19 13:22:48 +00:00
Richard Purdie
5f22458409 debian/kernel/gconf/gtk-icon-cache: PKGDESK/PKG fixes
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-16 10:52:35 +00:00
Richard Purdie
c54117458a classes: Remove and sanitise import statements
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-11-13 12:15:28 +00:00
Samuel Ortiz
7994045755 kernel.bbclass: We dont want to tar lib/ if we dont have any modules 2008-10-29 03:00:56 +01:00
Richard Purdie
7a9da6a049 kernel.bbclass: Sync with OE and get recent kernel i386 -> x86 fixes
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4585 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-06-05 10:49:22 +00:00
Richard Purdie
30f83b301c kernel.bbclass: Use INHIBIT_DEFAULT_DEPS to drop virtual/libc dependency since the kernel doesn't need it
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4209 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-04-08 15:31:57 +00:00
Marcin Juszkiewicz
e06e7e8cbf kernel.bbclass: use u-boot-mkimage-native for uImage kernels (from linux.inc)
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4116 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-03-25 15:48:26 +00:00
Richard Purdie
e8efeb30d1 kernel.bbclass: Add staging hooks
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@4100 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-03-20 11:39:26 +00:00
Marcin Juszkiewicz
82eaabce95 kernel.bbclass: added deploy task from linux.inc recipe
- creation of modules.tgz
- uImage mangling with uboot-mkimage
- symlinking built kernel


git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3676 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-02-06 15:27:26 +00:00
Marcin Juszkiewicz
f1d8a0fe94 kernel.bbclass: indent sizecheck function like rest of file
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3675 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-02-06 15:25:23 +00:00
Richard Purdie
d1a302add6 kernel.bbclass: Cleanup various repetition, add include/video to staged files list
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3455 311d38ba-8fff-0310-9ca6-ca027cbcb966
2008-01-10 23:35:12 +00:00
Marcin Juszkiewicz
048754f684 kernel.bbclass: added task which check size of kernel image
Code was taken from linux.inc, variable with size is KERNEL_IMAGE_MAXSIZE


git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3314 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-12-06 09:43:11 +00:00
Richard Purdie
5b5ae6bec9 kernel.bbclass: Add menuconfig task
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2746 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-09-17 13:39:15 +00:00
Richard Purdie
720b5c11fb kernel.bbclass: Add kernel-vmlinux package
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2724 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-09-11 12:47:17 +00:00
Richard Purdie
226a5dd8a2 kernel.bbclass: Sync with OE for packaging changes
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2597 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-29 19:29:56 +00:00
Richard Purdie
4e662cb3aa kernel.bbclass: Remove broken and unused PARALLEL_INSTALL_MODULES
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2405 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-08-08 20:32:59 +00:00
Richard Purdie
fb61dc1430 kernel.bbclass: Drop KERNEL_RELEASE variable
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1123 311d38ba-8fff-0310-9ca6-ca027cbcb966
2007-01-08 21:05:18 +00:00
Richard Purdie
8174ba4222 kernel.bbclass: Unset MACHINE to avoid problems
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@874 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-11-20 08:56:52 +00:00
Richard Purdie
0d59c10f98 kernel.bbclass: Sync with updates in OE to work with kernels >= 2.6.18
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@851 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-11-02 10:18:03 +00:00
Richard Purdie
93a8d0662e classes: Sync with OE
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@651 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-08-27 16:01:33 +00:00
Richard Purdie
b2f192faab Rename /openembedded/ -> /meta/
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@530 311d38ba-8fff-0310-9ca6-ca027cbcb966
2006-07-21 10:10:31 +00:00