summaryrefslogtreecommitdiff
path: root/meta/classes
AgeCommit message (Collapse)AuthorFiles
2013-01-24core-image: Add hwcodecs IMAGE_FEATURERichard Purdie1
Currently hardware codecs are being injected in rather ugly ways and end up either in no or all images. This adds a dedicated IMAGE_FEATURE for them based on the MACHINE_HWCODECS variable. We may need to refine this in due course but this patch at least illustrates the concept. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-24base: make feature backfilling happen earlierRichard Purdie1
Backfilling DISTRO_FEATURES and MACHINE_FEATURES with _append statements happens too late to use those variables with conditional inherits, like this: inherit ${@base_contains('DISTRO_FEATURES','sysvinit','update-rc.d_real','',d)} Instead, do the backfilling at ConfigParse time so that it happens earlier in the parse, which results in that inherit behaving as expected when sysvinit was backfilled. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22prserv: add LOCALCOUNT to AUTOINCs migration featureConstantin Musca1
- use migrate_localcount.bbclass to generate AUTOINC entries which are exported to LOCALCOUNT_DUMPFILE - import the generated AUTOINC entries - one can migrate LOCALCOUNT to AUTOINC by executing: bitbake-prserv-tool migrate_localcount [YOCTO #3071] Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22rootfs_rpm.bbclass: fix the unexpected postinst errorChen Qi1
If the /etc/rpm-postinsts/ directory was empty, the following error would occur at system startup. ERROR: postinst /etc/rpm-postinsts/* failed This patch fixes this issue. [YOCTO #3767] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-22populate_sdk_base.bbclass: Allow installation of ix86 SDK on x86_64 hostWolfgang Denk1
Commit c04f5435 "populate_sdk_base.bbclass: use SDK_ARCH instead of SDKMACHINE" prevents not only the installation of 64 bit SDK configurations on 32 bit hosts (which indeed cannot work), but also the legitimate installation of a 32 bit SDK on a 64 bit host. Fix this. While there, also make sure we use the same patterns ("i[3-6]86" resp. "x86[-_]64" to get unified strings for both INST_ARCH and SDK_ARCH. Signed-off-by: Wolfgang Denk <wd@denx.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21gtk-doc: parameterise the documentation directoryRoss Burton1
Not every package puts the gtk-doc infrastructure into ${S}, so allow this to be overridden. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-21package.bbclass: drop unnecessary and broken packages.remove()Christopher Larson1
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20update-alternatives: Add a build-time dependencyMark Hatle1
We need to add a build time dependency on virtual/update-alternatives, however we can't just do DEPENDS +=, or we end up with various problems. To work around this, in the anonymous python space we ensure we only do the addition when the package does not provide virtual/update-alternatives and it is a target package. Also the system wide PREFERRED_PROVIDER was incorrect. It references a runtime package, and not the recipe it should have. This has been corrected. [YOCTO #3691] Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Tested-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20populate_sdk_rpm: Re-add a few system provides to the SDKMark Hatle1
When building the target SDK portion, we can safely ignore various package rdepends. These dependencies are not required on a build only environment like an SDK. [YOCTO #3691] Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Tested-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20cpan_build: Fix bashismRichard Purdie1
Fix a build failure caused by a bashism and improve quoting whilst in the area. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20package.bbclass: Fix shlibs cross package-arch contaminationRichard Purdie1
I found that if I had two packages architectures built (say core2 and i586), that the shlibs data from i586 was being used in the core2 build. This lead to odd dependency issues if the i586 build was out of date and core2 was being targetted. When loading shlibs files, the last loaded wins so we need to iterate the lists from least to strongest weighting, not the other way around. With this patch applied, the contamination issue is resolved. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20populate_sdk_base.bbclass: Work around bugs with gnu tar < 1.24Jason Wessel1
The gnu tar versions less than 1.24 pose a problem with the SDK extraction. A typical SDK will have hard links. The SDK is created with a newer version of tar but extracted with the host version of tar which may be much older. The specific defect is that older version of gnu tar do not properly handle the "--strip-components=" argument when processing hard links and the paths do not get properly truncated and hooked up with the corresponding real file payloads. This leads to errors like the following during the SDK install: tar: sysroots/qemux86-yocto-linux/usr/bin/getconf: Cannot hard link to `./opt/yocto/SDK-qemux86/sysroots/qemux86-yocto-linux/usr/bin/POSIX_V6_ILP32_OFFBIG': No such file or directory The simple way to work around the problem is to just not save the path information that is going to get chopped off anyway. This has the added benefit that it saves a small amount of space in the tar archive as well. Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20package.bbclass: replace AUTOINC directly in PKGVEnrico Scholz1
b27b438221e16ac3df6ac66d761b77e3bd43db67 introduced a regression when PKGV is modified by the recipe. E.g. when having something like | PV = "1.7.33+gitr${SRCPV}" | PKGV = "1.7.33+gitr${GITPKGV}" | RDEPENDS_${PN}-subpkg += "${PN} (= ${EXTENDPKGV})" | inherit gitpkgv The resulting core package has | Version: 1.7.33+git234+cd01e8c-r11 and because the subpackage has | Depends: vdr (= 1.7.33+git0+cd01e8c18d494150730214f033f84e5282ce7639-r11) image build fails with | * satisfy_dependencies_for: Cannot satisfy the following dependencies ... | * vdr (= 1.7.33+git0+cd01e8c18d494150730214f033f84e5282ce7639-r11) Patch avoids the 'PKGV = "cleanup(${PV})"' operation and replaces AUTOINC directly within PKGV. This might introduce a regression too when 'AUTOINC' is added to PKGV intentionally but impact is small and can be fixed trivially by using another string. Signed-off-by: Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> Cc: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20kernel.bbclass, module-base.bbclass: Use CC to form KERNEL_CCKhem Raj3
kernel compiler is not special and we currently have it so we want to pass -march and -mtune options as CFLAGS to kernel build so that compiler picks the right subarch flags when compiling assembly files in particular. Otherwise defaults are chosen which may not be right in many case e.g. when compiling kernel for collie machine we should use arch=armv4 but it uses toolchain/as defaults which is armv5te in some case e.g. thumb1 we know that kernel can not be compiled in thumb1 mode so we can provide that information e.g. -marm option through KERNEL_HOST_CC_ARCH variable as we do now Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-20update-rc.d: disable update-rc.d.bbclass when systemd enabledRadu Moisan2
update-rc.d is not necessary when systemd is enabled, systemctl is the replacement Signed-off-by: Radu Moisan <radu.moisan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18kernel-yocto: add KBUILD_OUTPUT to OE_TERMINAL_EXPORTSBruce Ashfield1
Since linux-yocto based recipes have a split build and source directory, we should export KBUILD=${B} to the devshell. This allows the kernel to be incrementally build within the shell and not dirty the source directory (which breaks subsequent full builds). Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18kernel-yocto: remove unnecessary non-bare warningBruce Ashfield1
In the past working from a non-bare clone would cause problems, due to branches not existing in the WORKDIR clone. This hasn't been true for some time, since the routines which convert remotes into local branches have been functioning without problems. So we no longer need the warning and it can be removed. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18update-rc.d:fix support postrm at image creation timeHongxu Jia1
updatercd_postrm failed at image creation time because "-f -r ${D}" is not used as update-rc.d's option. [YOCTO #3633] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18kernel.bbclass: remove references to update-modulesLaurentiu Palcu1
Since update-modules is now obsolete, remove it from the bbclass. [YOCTO #3598] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18module.bbclass: do not use update-modules anymoreLaurentiu Palcu1
update-modules is obsolete. The bbclass was updated not to use it anymore. [YOCTO #3598] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18base.bbclass: improve the incompatible license logic a bitChristopher Larson1
Handle the potential case where the recipe level LICENSE contains an incompatible license, but all of its emitted packages are in fact compatible. Without this adjustment, it would skip such a recipe. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18base.bbclass: use debug messages for INCOMPATIBLE_LICENSEChristopher Larson1
Spamming potentially over a screenful of messages due to their INCOMPATIBLE_LICENSE selection seems a bit unnecessary. If the distro was configured that way, the user likely won't care, and if the user set it, they likely know the implications, so make the messages debug instead. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18license.bbclass: cleanly handle invalid licenses in incompatible_licenseChristopher Larson1
This gives us an error message (bb.fatal) rather than a traceback due to the uncaught LicenseError. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18license: correct re.search/fnmatch indentationChristopher Larson1
This was causing it to only obey the last of the elements in INCOMPATIBLE_LICENSE. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18license.bbclass: check LICENSE_pkg, not LICENSE_pn-pkgChristopher Larson1
Recipes define the latter, as that's what goes into the binary packages, not the former. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-18classes/image: improve debug-tweaks ssh server configurationPaul Eggleton2
Create a single postprocessing function that enables no-password logins for both openssh and dropbear when debug-tweaks is in IMAGE_FEATURES, changing its behaviour slightly: * Run it regardless of whether ssh-server-* are in IMAGE_FEATURES so that it still takes effect if these are installed by adding dropbear/openssh to IMAGE_INSTALL. * Enable it to be run from image.bbclass rather than core-image.bbclass so that it works for images that are using the former. Second half of the fix for [YOCTO #2578]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-18classes/rootfs_*: error out if postinstalls exist with read-only rootfsPaul Eggleton3
If there are postinstall scripts to be run on first boot and IMAGE_FEATURES contains "read-only-rootfs", we know this will fail on the target device so just error out during do_rootfs. This check was already implemented for ipk, so add it to the deb and rpm backends. Also make all backends use bberror rather than just echo to display the error. Fixes [YOCTO #3407]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-18ptest.bbclass: don't add to PACKAGES if disabledChristopher Larson1
Without this, we have excessive dependencies leaking into the build. In particular, glib-2.0 was sucking in python modules even if ptest wasn't in DISTRO_FEATURES. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-17kernel.bbclass: don't depend on DATETIMEMartin Jansa1
* http://cgit.openembedded.org/openembedded-core/commit/?id=67e77cd948c69798695d5d5f34163ef89339b35a moved DATETIME dependency from MODULE_TARBALL_BASE_NAME to MODULE_IMAGE_BASE_NAME but without copying that vardepsexclude Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-16image_types.bbclass: Add and update comments regarding image types.Robert P. J. Day1
Explain the elf/cpio.gz snippet of code, and update a comment to reflect the correct variable name. No functional change. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-16distrodata: Updated checkpkg taskEmilia Ciobanu1
bitbake -c checkpkg fetches the latest version for all packages, including the ones from sourceforge and those that have ununsual package naming. Also removed all pn-native/nativesdk-pn entries from the resulting checkpkg.csv file if the system already reported the latest version for pn. Signed-off-by: Emilia Ciobanu <emilia.maria.silvia.ciobanu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-15sstate: Do not add the --no-run-if-empty arguement to xargs when on Darwin, ↵Martin Ertsaas1
as it is not supported. Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-09gtk-immodules-cache.bbclass: allow for offline cache generationLaurentiu Palcu1
In order to support a RO rootfs, the cache generation during postinstall has to be done on host. However, gtk-query-immodules application will only be able to parse shared objects from the same ELF class. In order not to have a native package for all the recipes providing an input method, so we can generate the cache file natively, run gtk-query-immodules through qemu emulator. [YOCTO #3602] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-09qemu.bbclass: add qemu_run_binary() functionLaurentiu Palcu1
[YOCTO #3602] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-09kernel.bbclass: Define MODULE_IMAGE_BASE_NAME for layer convenience.Robert P. J. Day1
Define the additional variable MODULE_IMAGE_BASE_NAME since some layers (like meta-ti) would find it handy for multi-kernel definitions in that they wouldn't have to define their own variable representing exactly the same thing. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-09rootfs_rpm.bbclass: export INSTALL_PLATFORM_EXTRA_RPMChen Qi1
Export this variable because package_rpm.bbclass needs it. [YOCTO #3682] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-09kernel.bbclass: kernel_do_install fails with kernel <2.6.30Marco Cavallini1
* kernels <2.6.30 don't have $kerneldir/tools directory * so we got this error: * sed: can't read ...SNIP...linux/2.6.30-r0/image/usr/src/kernel/tools/perf/Makefile: No such file or directory * ERROR: Function failed: do_install Signed-off-by: Marco Cavallini <m.cavallini@koansoftware.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-09sstate.bbclass:specify function dirs to avoid raceHongxu Jia1
Specify dirs in which the shell function "sstate_create_package" and "sstate_unpack_package" are executed and don't use ${B} as default dirs to avoid possible race with task do_rootfs at deb image creation time. [YOCTO #3674] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07copyleft_compliance: force the symlink creationChristopher Larson1
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Gilbert Coville <gilbert_coville@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07copyleft_compliance: grab the scm mirror tarballsChristopher Larson1
If the mirror tarball is available, it's a better choice for this than the repository directory. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Gilbert Coville <gilbert_coville@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07image.bbclass: quote TARGET_VENDOREnrico Scholz1
The buildsystem does not install locale files anymore, when TARGET_VENDOR is empty. This regression was introduced by ff01518c6667e1b6e87df4e5a435a701d0f38fa7 Signed-off-by: Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-01-07package.bbclass: Skip testing "packages" a second time.Robert P. J. Day1
Since the "packages" variable is already tested a few lines above in the same routine: if len(packages) < 1: bb.debug(1, "No packages to build, skipping do_package") return there is no point testing it again, and the error message doesn't even refer to "packages", anyway. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-04lib_package.bbclass: Correct comment referring to bin directories.Robert P. J. Day1
FILES_${PN}-bin = "${bindir}/* ${sbindir}/*" so the comment should match that. Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-04update-alternatives.bbclass: use absolute paths for link targetsChristopher Larson1
This improves compatibility, as both the debian update-alternatives and the chkconfig alternatives require absolute paths. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-04kernel.bbclass: include PE in KERNEL_IMAGE_BASE_NAMEMartin Jansa1
* without this you it's harder to see which kernel is newer version e.g. after branch change LOCALCOUNT in SRCPV is reset to 0, so it needs PE bump for upgrade path but then it's clear why gitr1+HASH has newer DATETIME then gitrN+HASH, so include PE in name * it will sort alphabetically wrong in deploy dir for a while until old images are removed Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2013-01-04package.bbclass: don't prepend MLPREFIX to LOCALEBASEPNConstantin Musca1
- all the recipes that overwrite LOCALEBASEPN must consider also the MLPREFIX - if the LOCALEBASEPN variable is not overwritten then it will have the correct prefix (LOCALEBASEPN ??= "${PN}") Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-31multilib: fix allarch/kernel/module-base multilib issuesConstantin Musca4
- skip the non-packagegroup allarch recipes in multilib_virtclass_handler - extend PROVIDES/RPROVIDES for allarch recipes which are not packagegroups - use variants from MULTILIB_GLOBAL_VARIANTS (lib32 lib64 libx32) to create additional pkgdata files for multilib allarch: ${pkgdatadir}/${variant}-${PN} and ${pkgdatadir}/runtime/${variant}-${pkg} - use variants from MULTILIB_VARIANTS to create additional pkgdata files for multilib kernel/module-base recipes - add a sanity check to determine if the current multilib is in MULTILIB_GLOBAL_VARIANTS [YOCTO #2918] [YOCTO #3440] [YOCTO #3565] [YOCTO #3568] Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-25gtk-icon-cache: don't call gtk-update-icon-cache on filesMartin Jansa1
* check if icondir is directory before calling gtk-update-icon-cache, like all other calls do * fixes: | > Executing update_icon_cache | + chmod +x update_icon_cache | + ./update_icon_cache | gtk-update-icon-cache.real: Failed to open file /tmp-eglibc/work/qemuarm-oe-linux-gnueabi/shr-image-all/2.0-r20/rootfs/usr/share/icons/enjoy.png/.icon-theme.cache : Not a directory | gtk-update-icon-cache.real: Failed to open file /tmp-eglibc/work/qemuarm-oe-linux-gnueabi/shr-image-all/2.0-r20/rootfs/usr/share/icons/monav.png/.icon-theme.cache : Not a directory | gtk-update-icon-cache.real: Failed to open file /tmp-eglibc/work/qemuarm-oe-linux-gnueabi/shr-image-all/2.0-r20/rootfs/usr/share/icons/orrery.png/.icon-theme.cache : Not a directory Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-25cml1: set and export TERMINFO, to handle ncurses-native relocationFahad Usman1
ncurses library looks at the compiled-in search path for the terminfo database, and that path no longer exists, when using cached binaries (sstate). Export TERMINFO pointing at the current sysroot, so the attempt to run mconf is able to find the correct terminfo db. Signed-off-by: Christopher Larson <chris_larson@mentor.com> the patch was imported from meta-mentor layer on yoctoproject git server http://git.yoctoproject.org/cgit/cgit.cgi/meta-mentor as of commit id 0cae284f294e3a2c99d9a4d79c95c25103cd8f8b Signed-off-by: Fahad Usman <fahad_usman@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-12-25Add a new distro feature "ptest".Björn Stenberg3
This patch creates a new distro feature "ptest", which creates -ptest packages containing the test suite of the package for running on the target. Test files are installed in /usr/lib/<pkg>/ptest. The patch also includes a change to automake, splitting the "make check" target into separate steps for building and running the tests. Signed-off-by: Björn Stenberg <bjst@enea.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>