summaryrefslogtreecommitdiff
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* classes/buildhistory: merge in package history functionalityPaul Eggleton2011-12-051-1/+250
| | | | | | | | Include package history collection from packagehistory.bbclass (thus superseding it). The only change is to store package history under BUILDHISTORY_DIR/packages and rename one of the functions. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
* classes/buildhistory: add new output history collection classPaul Eggleton2011-12-053-6/+167
| | | | | | | | | | | | | | | | | | | Create a new build output history reporting class, using testlab.bbclass from meta-oe as a base. This records information from images produced by the build process in text files structured suitably for tracking within a git repository, thus enabling monitoring of changes over time. Build history collection can be enabled simply by adding the following to your local.conf: INHERIT += "buildhistory" The output after a build can then be found in BUILDHISTORY_DIR (defaults to TMPDIR/buildhistory). If you set up this directory as a git repository and set BUILDHISTORY_COMMIT to "1" in local.conf, the build history data will be committed on every build. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
* classes/packagehistory: fix and extendPaul Eggleton2011-12-051-40/+192
| | | | | | | | | | | | | | | | | | | * Replace use of BASEPKG_TARGET_SYS which is no longer available * Replace use of bb.data.getVar(...,d) with d.getVar(...) * Change the file structure - use single files within PN/package subdirs rather than having a subdir level for each part of the version. There is a set of files for each recipe and for each package in directories underneath. * Record more information - PACKAGES, DEPENDS, RDEPENDS, RRECOMMENDS, FILES, and the total size and a complete list of the packaged files. * Record the values in simple text format. The "latest" file, rather than a symlink has been changed to a copy of the latest file so that if it is tracked in a VCS repository (e.g. git) you can compare it easily to the previous version. Implements [YOCTO #1565]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
* bitbake.conf: add default PRINC 0 to be able to increment itMartin Jansa2011-12-051-1/+1
| | | | | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bootimage: Use ${S} explicitly for generated config filesDarren Hart2011-12-022-7/+5
| | | | | | | | | | | | | | | | The syslinux and grub-efi classes were generating config files in the current working directory. This caused a failure due to a race in the creation of the directories leading to cwd changing and the build failing to find the config files. While this has been addressed in bitbake, it is better to use an explicit path. While ${WORKDIR} may seem a more appropriate place, the recipe already uses ${S} for the "hdd" and "cd" construction, so we use ${S} here to keep things consolidated and consistent and address the issue with minimal change. Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-yocto: fix extra CR in do_kernel_checkoutSaul Wold2011-12-021-2/+1
| | | | Signed-off-by: Saul Wold <sgw@linux.intel.com>
* linux-yocto: prefer in-tree tools to external onesBruce Ashfield2011-12-021-1/+11
| | | | Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* kernel-yocto: support allnoconfig base configurationBruce Ashfield2011-12-021-2/+13
| | | | | | | | | | | | | | | | | When creating a minimal config or creating a hard baseline for incremental changes, it is often desired to disable all kernel options and then begin building and enabling only what is required. To support this workflow, a new variable KCONFIG_MODE is introduced to contain a hint to the kernel configuration about how the kernel config should be produced. This variable is passed directly to lkc when it is invoked during configuration, so the contents of the variable must be a valid option for the kernel config build. Additionally, when a defconfig is detected, allnoconfig is enabled as the default operation, unless otherwise specified by KCONFIG_MODE. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* Revert "classes/buildhistory: add new output history collection class"Richard Purdie2011-12-013-412/+6
| | | | | | This reverts commit 508ff624fea705eb93cf2cc1e0c9c42cb817acf8. RP accidentally pulled the wrong commit in, it was supposed to be a *package*history bbclass change.
* classes/buildhistory: add new output history collection classPaul Eggleton2011-12-013-6/+412
| | | | | | | | | | | | | | | | | | | | Create a new build output history reporting class, using testlab.bbclass from meta-oe and packagehistory.bbclass as a base. This records information from packages and images output from the build process in text files structured suitably for tracking within a git repository, thus enabling monitoring of changes over time. Build history collection can be enabled simply by adding the following to your local.conf: INHERIT += "buildhistory" The output after a build can then be found in BUILDHISTORY_DIR (defaults to TMPDIR/buildhistory). If you set up this directory as a git repository and set BUILDHISTORY_COMMIT to "1" in local.conf, the build history data will be committed on every build. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
* classes/base: split out metadata revision code to separate functionPaul Eggleton2011-12-011-20/+24
| | | | | | | | Split out a new function get_layers_branch_rev() which returns a list of the metadata layers and their revisions. This enables reuse in other places, such as buildhistory.bbclass. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
* classes, conf: Exclude native and nativesdk recipes from libc specific overrideKhem Raj2011-12-012-0/+6
| | | | | | | | | | | | Based on suggestions from RP libc-uclibc and libc-glibc overrides are for denoting system C library in use on the target and not for the host therefore we make sure that the override only takes effect for target recipes only. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libc-package.bbclass: Fix typo in setVar usageRichard Purdie2011-12-011-1/+1
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* autotools.bbclass: Report the missing configure pathDarren Hart2011-11-301-4/+5
| | | | | | | | | If the configure script isn't found, report the explicit path tried. This can help debug subtle errors where the ${S} sourcedir may not be exactly what is expected. Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bootimg: Allow for EFI-only boot imagesDarren Hart2011-11-301-9/+40
| | | | | | | | | | | Condition building PCBIOS legacy images on MACHINE_FEATURES containing "pcbios" or not containing "efi". This ensures existing BSPs will continue to get the old PCBIOS legacy-only images. New BSPs can add "efi", "pcbios", or both. The images created likewise support one or the other or both. EFI-only ISO images are untested. Signed-off-by: Darren Hart <dvhart@linux.intel.com>
* bootimg: Add grub-efi supportDarren Hart2011-11-303-0/+155
| | | | | | | | | | | | | | | | | | | | | | | | | Create a new grub-efi.bbclass and integrate it into bootimg alongside the syslinux support. This new class uses the output from the grub-efi-native recipe. Thanks goes to Josef Ahmad <josef.ahmad@intel.com> for the original build_grub_cfg() routine. The EFI features are only added to the image if MACHINE_FEATURES contains "efi". The resulting images are therefor either legacy boot only (like they were originally) or legacy boot and EFI boot. A new "dummy.bbclass" was added to allow for the conditional include of grub-efi. This makes it so if efi support is not to be built in, we don't spend time building grub-efi-native just because the include adds the dependency. There is a bug in the mkdosfs tool from the dosfstools package which causes it to crash when the directory passed with the -d parameter contains sub-directories. An /EFI/BOOT directory is required for a proper EFI installation. Until it is fixed, we install to the top level directory for the hddimg. Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Josef Ahmad <josef.ahmad@intel.com>
* bootimg: Pull syslinux specific bits into syslinux.bbclassDarren Hart2011-11-302-63/+76
| | | | | | | | | Working towards a more generic bootimg.bbclass, pull out all syslinux specific bits and let syslinux.bbclass manage them directly. This introduces no functional changes to the images constructed and the behavior remains unchanged. Signed-off-by: Darren Hart <dvhart@linux.intel.com>
* bootimg: Refactor build_hddimg and build_iso routinesDarren Hart2011-11-301-42/+43
| | | | | | | | Separate the construction of the ISO image from that of the hddimg. This is part of the groundwork for creating a much more flexible live image builder. Signed-off-by: Darren Hart <dvhart@linux.intel.com>
* image_types.bbclass: add xz-native to deps for lzma ext2.lzma imagesMatthew McClintock2011-11-301-1/+1
| | | | | Signed-off-by: Matthew McClintock <msm@freescale.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toolchain-scripts.bbclass: Make it work when TCLIBC=uclibcKhem Raj2011-11-291-2/+6
| | | | | | | | | | This class currently only works with eglibc. Since it adds dependencies explicitly on eglibc when using uclibc this creates problems. So we make sure that it checks for TCLIBC to determine system C library in use Signed-off-by: Khem Raj <raj.khem@gmail.com>
* getVar/setVar cleanupsRichard Purdie2011-11-2618-111/+111
| | | | | | | Complete the bb.data.getVar/setVar replacements with accesses directly to the data store object. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* patch.bbclass: Add PATCHRESOLVE to excluded vars for generating sstate-cacheMatthew McClintock2011-11-241-1/+1
| | | | | | | The method of resolving the patch should not effect the sstate-cache signature. Signed-off-by: Matthew McClintock <msm@freescale.com>
* base.bbclass: Use bb.plain to print the build headerRichard Purdie2011-11-241-1/+1
| | | | | | | If we just use print, the bitbake logging functions don't see the message and it can get lost if bitbake is for example logging messages to disk. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gconf: Ensure the correct backend directory is usedRichard Purdie2011-11-231-0/+1
| | | | | | | Without these changes, gconf will use the hardcoded backend directory meaning we can see errors when building if the binary was relocated. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gconf: Ensure that GCONF_SCHEMA_INSTALL_SOURCE uses correct pathsRichard Purdie2011-11-231-0/+4
| | | | | | | | | | | The gconf .m4 files use the path encoded into the gconf-native tools by default to populate this variable. This doesn't work if we're relocating the gconf-native binaries. By setting this variable we ensure that the m4 files always pick up the correct path. This fixes errors seen on the yocto autobuilder. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* staging: Remove debug accidently left inRichard Purdie2011-11-221-1/+0
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* staging.bbclass: Add BB_SETSCENE_VERIFY_FUNCTION functionRichard Purdie2011-11-221-0/+15
| | | | | | | | Since we clean out do_populate_sysroot if do_configure runs, don't allow do_populate_sysroot_setscene functions if we're going to run do_configure. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: Ensure paths to rpmmarcos and rpmpopt are setRichard Purdie2011-11-221-1/+1
| | | | | | | | | | If rpm-native was built in an alternative location, it may not relocate correctly unless the rpmpopt and macros paths are explicitly specified. This fixes errors seen on the Yocto autobuilder where pkgconfig "provides" entries could disappear leading to image dependency failures. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mime.bbclass: Add --disable-update-mimedb to EXTRA_OECONFAndreas Müller2011-11-211-0/+2
| | | | | | | | | | | | | * ensure update-mime-database is not called during build time * this patch was included in meta-oe [1] about the same time when mime.bbclass was migrated from meta-oe -> oe-core so it seems it got lost. * tests: build from scratch / run on overo / additional check: no unpacked files for gnome-control-center [1] http://cgit.openembedded.org/meta-openembedded/commit/meta-oe/classes?id=6b765989a42ab314d1611f4dec78b07b562a9e7d Signed-off-by: Andreas Müller <schnitzeltony@gmx.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: fix path for relative links on elf files, when moved to ↵Henning Heinold2011-11-211-0/+2
| | | | | | | | | | | debugdir * relative links for elf files like ../foo.so ends up in the debugdir with ../.debug/foo.so, this causes infinite fileaccessloops fix it by adding an extra "../" to the link path Signed-off-by: Henning Heinold <heinold@inf.fu-berlin.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate.bbclass: Ensure we expand stamp-extra-infoRichard Purdie2011-11-211-1/+1
| | | | | | | Without this change we can end up looking for <stamp>.${MACHINE} instead of the expected expanded value. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd: Ensure -native recipes don't depend on target recipesRichard Purdie2011-11-211-0/+3
| | | | | | | | | | Without this change, dbus-native can end up depending upon base-passwd for example. This change mirrors the existing nativesdk code. Based on a patch from Henning Heinold <heinold@inf.fu-berlin.de> but with some additions from me. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bootimg: Create a valid boot sector for the iso imageDamien Lespiau2011-11-181-0/+2
| | | | | | | | | | | It's possible to create an "hybrid" iso image that you can both burn to a CD-Rom and dd to a USB key. isohybrid will create a valid boot sector for the USB key case. [YOCTO #1763] Signed-off-by: Damien Lespiau <damien.lespiau@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanitytest: remove rpm/zypper tests if PACKAGE_CLASSES does not set package_rpmJiajun Xu2011-11-181-1/+24
| | | | | | | | | | | If PACKAGE_CLASSES does not set package_rpm as the first item, the root filesystem will not be generated based on rpm. We need remove rpm/zypper tests against non-rpm filesystem. [YOCTO #1757] Signed-off-by: Jiajun Xu <jiajun.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm: Set _tmppath to avoid races over tmp filesRichard Purdie2011-11-181-0/+1
| | | | | | | | | | | Occasionally we keep seeing "unable to open temp file" messages during do_package_write_rpm tasks. This appears to happen when multiple processes are writing rpm files and is likely due to using the shared system temp directory. This patch changes the tmp path to the package work directory meaning conflicts should become a non-issue. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* insane.bbclass: avoid errors for x32 kernelNitin A Kamble2011-11-171-3/+5
| | | | | | | | | | | | | x32 abi of x86_64 has 32bit userspace and the kernel is 64bit. The qa checking code was reporting this as errors for x32 kernel files and modules. This commit extends the condition in the checking code to avoid throwing the bitsize not matched error for x32 kernel files. Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: Ensure we tell rpmdeps where to find its magic fileRichard Purdie2011-11-171-1/+1
| | | | | | | | | | | | | Without this, if rpmddeps came from a sstate package which was relocated it might not find its magic file and if that happens, requires/provides in packages could get corrupted. This leads to failures at rootfs time during builds with messages like: libdbus-1.so.3 is needed by libdbus-glib-1-2-0.92-r1.armv5te since the provides would be missing in the dbus package. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: No need to check for cvs any moreRichard Purdie2011-11-161-1/+1
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base.bbclass: add subversion-native to DEPENDS if there is svn:// in SRC_URIMartin Jansa2011-11-151-1/+7
| | | | | | | | | | * in some cases this could cause circual dependency (ie if we decide to apr_svn.bb or something like that before subversion-native in dependency tree), Saul said he had such case, but I wasn't able to reproduce it here (here it builds subversion-native-1.7.0 fine). Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mime.bbclass: fix typoConnor Abbott2011-11-151-1/+1
| | | | | | | | Before this patch, nautilus would fail with: ERROR: Error executing a python function in /home/connor/angstrom/sources/meta-openembedded/meta-gnome/recipes-gnome/nautilus/nautilus_2.32.2.bb: NameError: global name 'dgetVar' is not defined Signed-off-by: Connor Abbott <cwabbott0@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_ipk.bbclass: Ensure bad recommendations persist in the status fileRichard Purdie2011-11-141-1/+1
| | | | | | | | | | | | | | | Currently bad recommendations are added to the status file with status "ok". After a single opkg command, whilst it will ignore the recommendation, the status changes to "installed" even if the recommended package was not installed. Whilst this is likely a glitch in opkg's logic, the correct way to persist the information in the status file is to set the status to "hold" as deinstall packages with that status remain. With this change the bad recommendations persist accross multiple opkg runs and the system behaves as expected. [YOCTO #1758] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: Turn off script debuggingMark Hatle2011-11-111-1/+1
| | | | | | | | Disable script debugging, as the log files become huge and take a long time to process during the log check step. This results in a performance improvement. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
* rootfs_rpm.bbclass: Enable pre and post install scriptsMark Hatle2011-11-112-20/+38
| | | | | | | | | | | | | | | | | | [YOCTO #1755] We change the want the RPM rootfs install works to install pre and post install scripts. The new method uses a script helper that is invoked by RPM outside of the normal chroot. The wrapper is dynamically generated prior to the install starting. It will check the return code of the script. If the script fails, it will store a copy to be executed on the first system boot. This is similar to the previous mechanism. In addition, a line of debug was added to the scripts as written by package_rpm to list which package and which script for later debugging, if necessary. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
* populate_*.bbclass: Correct INSTALL variable name after recent multilib changesRichard Purdie2011-11-103-6/+6
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_*.bbclass: Drop pointless fakeroot attribute (fakeroot is at the ↵Richard Purdie2011-11-103-3/+3
| | | | | | task level) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Convert to use direct access to the data store (instead of bb.data.*Var*())Richard Purdie2011-11-1061-869/+869
| | | | | | | | | | | | | | | This is the result of running the following over the metadata: sed \ -e 's:bb.data.\(setVar([^,()]*,[^,()]*\), *\([^ )]*\) *):\2.\1):g' \ -e 's:bb.data.\(setVarFlag([^,()]*,[^,()]*,[^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -e 's:bb.data.\(getVar([^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \ -e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \ -e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^() ]*\) *):\2.\1):g' \ -e 's:bb.data.\(getVar([^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -i `grep -ril bb.data *` Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Allow use of dash as /bin/shRichard Purdie2011-11-101-3/+0
| | | | | | | | | | | | | | | | | | | | | We've had the check for dash as /bin/sh for a long time. Dash has been around long enough now that most major issues have been identified and fixed from build perspective. This patch fixes a bashism in the openjade-native recipe. It also adjusts libtool so that the header at the script is used and not the value of $SHELL. This is because many Makefiles change $SHELL so dash can get used to execute what is otherwise configured as a bash shell script. Since we don't need to execute scripts this way on any system I'm aware of us building upon, the simplest fix is just to remove $SHELL. With these two changes the dash check can be removed and we can allow builds with dash as /bin/sh Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> [Note: I know I need to add the description of the libtool change above into the prefix.patch]
* classes: Remove various bashismsRichard Purdie2011-11-103-11/+11
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd: Add missing DEPEND on shadowRichard Purdie2011-11-101-1/+1
| | | | | | | Without this rootfs generation fails as an RDEPENDS is added but the package might not have bneen built. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd.bbclass: do not modify -nativesdk packagesScott Garman2011-11-101-4/+5
| | | | | | | Exclude the addition of user/group code and RDEPENDS changes for -nativesdk packages. Signed-off-by: Scott Garman <scott.a.garman@intel.com>