summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* rootfs_rpm.bbclass: export INSTALL_PLATFORM_EXTRA_RPMChen Qi2013-01-101-1/+1
| | | | | | | | | | | | Export this variable because package_rpm.bbclass needs it. [YOCTO #3682] (From OE-Core rev: 64b01c6c945346b661f294fc8a49bf04a72da3c0) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: kernel_do_install fails with kernel <2.6.30Marco Cavallini2013-01-101-2/+5
| | | | | | | | | | | | | * 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 (From OE-Core rev: 4dd39a23dfe069ad34a925e00407b4dde978cb01) Signed-off-by: Marco Cavallini <m.cavallini@koansoftware.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate.bbclass:specify function dirs to avoid raceHongxu Jia2013-01-091-0/+5
| | | | | | | | | | | | | 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] (From OE-Core rev: ccef1cf783669a4683eda9d4b44dbe6bcf426259) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* copyleft_compliance: force the symlink creationChristopher Larson2013-01-071-1/+1
| | | | | | | | (From OE-Core rev: 74b82fd4cc3e5eec611800935f1c89db3bac9971) 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>
* copyleft_compliance: grab the scm mirror tarballsChristopher Larson2013-01-071-7/+13
| | | | | | | | | | | If the mirror tarball is available, it's a better choice for this than the repository directory. (From OE-Core rev: 8183962869363731acf57f2f531da737512f0f2f) 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>
* image.bbclass: quote TARGET_VENDOREnrico Scholz2013-01-071-1/+1
| | | | | | | | | | | The buildsystem does not install locale files anymore, when TARGET_VENDOR is empty. This regression was introduced by ff01518c6667e1b6e87df4e5a435a701d0f38fa7 (From OE-Core rev: 7d64232f370817c0536412589bd4ed612f214e18) Signed-off-by: Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: Skip testing "packages" a second time.Robert P. J. Day2013-01-071-1/+1
| | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: 371fbacff47828cfff99f1152f9e269e27c474da) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib_package.bbclass: Correct comment referring to bin directories.Robert P. J. Day2013-01-071-1/+1
| | | | | | | | | | | | FILES_${PN}-bin = "${bindir}/* ${sbindir}/*" so the comment should match that. (From OE-Core rev: 81bc0b96a085742f7dc9e8e90bb32529efbaf920) Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* update-alternatives.bbclass: use absolute paths for link targetsChristopher Larson2013-01-071-1/+1
| | | | | | | | | | | This improves compatibility, as both the debian update-alternatives and the chkconfig alternatives require absolute paths. (From OE-Core rev: 2b8bf64f1f6999b65ddd3efc2c6ddb7e70fead53) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: include PE in KERNEL_IMAGE_BASE_NAMEMartin Jansa2013-01-071-1/+1
| | | | | | | | | | | | | * 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 (From OE-Core rev: 3b5fe6d2cd58b5db70c3d319ffc66b1cbff1f43a) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: don't prepend MLPREFIX to LOCALEBASEPNConstantin Musca2013-01-071-1/+1
| | | | | | | | | | | | | - 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}") (From OE-Core rev: 855d64a3091c5358e2e1a7f4247929515b068708) Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib: fix allarch/kernel/module-base multilib issuesConstantin Musca2012-12-314-1/+41
| | | | | | | | | | | | | | | | | | | | | | | - 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] (From OE-Core rev: bc4da2573dfb59ea2fc4af359701818df20f7663) Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gtk-icon-cache: don't call gtk-update-icon-cache on filesMartin Jansa2012-12-261-1/+3
| | | | | | | | | | | | | | | | | * 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 (From OE-Core rev: 6c2962dc117304c542fd5458b39524ecdb81cae9) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cml1: set and export TERMINFO, to handle ncurses-native relocationFahad Usman2012-12-261-1/+2
| | | | | | | | | | | | | | | | | | | 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. (From OE-Core rev: b036adfb868c042245cd8fba8ecc2ba53169bfea) 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> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Add a new distro feature "ptest".Björn Stenberg2012-12-263-3/+39
| | | | | | | | | | | | | | | 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. (From OE-Core rev: 6f92e7f8891008dd3c89325d3fbe2da853372326) Signed-off-by: Björn Stenberg <bjst@enea.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: remove debug codeMark Hatle2012-12-191-3/+3
| | | | | | | | | | Debugging code was accidently left in the previous commit. Remove the code as it prevents multiple concurrent bitbake builds. (From OE-Core rev: bbd55cc34ca893c7202634fe138cedb2f380be56) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm.bbclass: Refactor the attempt only installMark Hatle2012-12-191-2/+6
| | | | | | | | | | | | | | Smart does not have a method to perform an install, but ignore failures. There was a class of failures that stopped Smart from processing attemptonly installs. To work around this we need to iterate over the to be attempted list. (From OE-Core rev: 7c11ab93242ad3453b730da79a641479de588227) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/image: handle multilibs in complementary package lookupPaul Eggleton2012-12-192-2/+19
| | | | | | | | | | | | | | | | | | For multilib the vendor string is altered, so we need to iterate over all of the multilib vendors when we do the glob processing for complementary packages. (From OE-Core rev: ff01518c6667e1b6e87df4e5a435a701d0f38fa7) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> In addition, the RPM package arch have been munged by adding the multilib identifier. This identifier needs to be stripped when generating the installed_packages list for the complementary lookup code to work. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf: add nonarch_base_lib variableConstantin Musca2012-12-191-0/+4
| | | | | | | | | | Adapt stagging.bbclass to this change (From OE-Core rev: 0730a8cbb42cd8b6667f2d1daefa0f6fcec06af2) Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gconf: add gconftool-2 native wrapperLaurentiu Palcu2012-12-191-1/+0
| | | | | | | | | | | | This is needed when sstate cache is fetched from another build server. In this case, the postinstall will fail because the backend libraries path will be from the build server. (From OE-Core rev: bba414bc9d14eb2d29b54c68259d13ddbe6567fa) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: Allow modules*.tar.gz generation to be inhibitedPhil Blundell2012-12-191-1/+2
| | | | | | | | | | | | | | | | The modules.tar.gz archive is sometimes of no value and it can take a noticeable time to build if many modules were enabled in the kernel configuration. The extraneous file also contributes to deploy/ clutter and is a waste of disk space. Allow it to be suppressed by setting MODULE_TARBALL_DEPLOY="0". (From OE-Core rev: 262bfde1c5c51cc902b50bf0dda543434f12010c) Signed-off-by: Phil Blundell <pb@pbcl.net> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel.bbclass: use the same versioning schema for modules.tgz and provide ↵Martin Jansa2012-12-191-1/+6
| | | | | | | | | | | | | | link to latest * so it will work look KERNEL_IMAGE * also we were recreating modules.tgz with every kernel build, but overwritting the same output file (From OE-Core rev: 73f242a61f913a0b0cd88265cd9ff6bcf3924623) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_*.bbclass: exclude BUILDNAME var dependency from do_rootfsMartin Jansa2012-12-193-0/+3
| | | | | | | | | | | | | | | | * I have kernel recipe which depends on other recipe to build tiny initramfs image, without this change it rebuilds not only that initramfs image but also whole kernel when DATE or TIME is changed and OEBasicHash enabled * also resolves ERROR shown when bitbake -S is used for image: ERROR: Bitbake's cached basehash does not match the one we just generated (/OE/oe-core/openembedded-core/meta/recipes-core/images/core-image-minimal.bb.do_rootfs)! ERROR: The mismatched hashes were 8c35cdf8a5d09c03941f081dd9f6d8dc and b5d6e2e5952770557c48c5779ddb73fc (From OE-Core rev: a78d2d21fffd646a0d6e0f02a8355be010a7bd28) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate.bbclass: Improve stamp-extra-info task handling to avoid warningsRichard Purdie2012-12-171-4/+7
| | | | | | | | | | | | | | | If you change a machine to a different package architecture, you will see sstate errors about overwriting files as the code stands today. Instead it should clean out the files safely and correctly. This patch changes the naming of stamp-extra-info manifest files to avoid this problem. It will potentially trigger warnings during builds in existing TMPDIRs until the system adjusts to the new naming, these are harmless. [YOCTO #3521] (From OE-Core rev: 2cc8ee57f8148844bb7bcd4aaf34f6891cf3d410) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate.bbclass: Remove unused/uneeded variableRichard Purdie2012-12-171-2/+1
| | | | | | (From OE-Core rev: 33ddf788c04044c8fe7ffbadab8787a5b6603186) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate.bbclass: Simplify overcomplicated cleanall functionRichard Purdie2012-12-171-15/+6
| | | | | | | | | The code was written before SSTATETASKNAMES existed. Since it does exist, lets simply the code. (From OE-Core rev: 9817e2efdb94395655d711f5eadedcd249c8cffe) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* distutils: Replacing path to native python by path to python in the image to ↵Lukas Bulwahn2012-12-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | support python packages with console-script setup When using distutils for a python package based on a python-setuptools installation script that sets up a console script, the header of the console script created by setuptools points to the python-native path. The console scripts are commonly executed in the image, but not in the sysroot environment. Therefore, the header of the console scripts should point to the python interpreter in the image. Setuptools does not allow to set the path of the python interpreter via some command-line argument. Hence after the installation script ran, the distutils class replaces the path in the console script files created by the installation. (From OE-Core rev: 11229def87d048c51190b9bd275c73d1f8bf6007) Signed-off-by: Lukas Bulwahn <Lukas.Bulwahn@oss.bmw-carit.de> sgw - added \ to protect the space. Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* autotools: copy also remove-potcdate.sin from ↵Martin Jansa2012-12-171-0/+3
| | | | | | | | | | | | | | | | | | ${STAGING_DATADIR_NATIVE}/gettext/po * some packages (e.g. uptime, cpu, forecasts, news from meta-efl) don't have remove-potcdate.sin in po subdirectory, but Makefile.in.in supplied by autotools.bbclass depends on it and fails without like this: | make[3]: Entering directory `/OE/shr-core/tmp-eglibc/work/x86_64-oe-linux/uptime/0.0.2+svnr80477-r0.0/E-MODULES-EXTRA/uptime/po' | make[3]: *** No rule to make target `remove-potcdate.sin', needed by `remove-potcdate.sed'. Stop. | make[3]: Leaving directory `/OE/shr-core/tmp-eglibc/work/x86_64-oe-linux/uptime/0.0.2+svnr80477-r0.0/E-MODULES-EXTRA/uptime/po' | make[2]: *** [uptime.pot] Error 2 (From OE-Core rev: 5a3116638394dc72c54cf5d4f8bd42a7be0b1768) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm: Workaround for 'all' arch multilib package namingMark Hatle2012-12-171-2/+12
| | | | | | | | | | | | | | | | | | | [YOCTO #3565] All packages should not be multilib specific, however when the multilib rules run, they automatically rename the 'all' target recipes. As such there is no way to know if an 'all' package should or should not contain the multilib prefix. We workaround this issue in the translate function by checking to see if the runtime-reverse file exists or not. The workaround should be removed once a proper solution to the architectural issue is in place. (From OE-Core rev: ea4b8c73a7f807ccd9aa22dfcf41285145a9dd2e) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm.bbclass: Add a simply way to enable RPM debuggingMark Hatle2012-12-171-0/+3
| | | | | | | | (From OE-Core rev: 08b980da3caafc331fef457a16466eda98139bb4) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm.bbclass: Add additional install error detectionMark Hatle2012-12-171-1/+1
| | | | | | | | | | | There is a condition where the package will fail to install, but smart does not capture the error. Add the error string to the scan list. (From OE-Core rev: 230068110e1cda349f9bf3886d8d06ac46deea37) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm.bbclass: Add support for incremental installsMark Hatle2012-12-171-1/+47
| | | | | | | | (From OE-Core rev: 140750f9c334ba9abb1f5c89fc28ef9b866c605b) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm.bbclass: Add additional loggingMark Hatle2012-12-171-0/+9
| | | | | | | | (From OE-Core rev: 2a21e63869ec9541dd338df1d86ef2ca01762bfe) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm.bbclass: Fix the way the RPM platform file is generatedMark Hatle2012-12-171-3/+13
| | | | | | | | | | | When generating an SDK, we need to use either the SDK or TARGET version of the OS. They are not interchangable! (From OE-Core rev: 8f6e33231439c9c2c1584b2790f62f833439e3c1) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm: Update the way the multilib package names are translatedMark Hatle2012-12-173-47/+216
| | | | | | | | | | | | | | | | | | | | The variable MULTILIB_PACKAGE_ARCHS has been removed in favor of a repurposed MULTILIB_PREFIX_LIST. The format of this item is now <libid>:<arch>:<arch1>:...:<archN>. This ensures that we can correctly translate the libid to one of the supported archs in a tri-lib system. All of the users of MULTILIB_PREFIX_LIST and MULTILIB_PACKAGE_ARCHS have been modified accordingly. Also change the way attempted packages are installed, verify the package exists in the translate functions, then perform the install in one single operation. This results in a significantly faster install time. (From OE-Core rev: ffe6cf3a1c57defdbe8531bdeb588e199177bb6c) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Update sanity tests to use smart instead of zypperPaul Eggleton2012-12-171-3/+3
| | | | | | | | (From OE-Core rev: c56d24b35d94fe2934ac7e1dc67422e6abc7539d) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/rootfs_rpm: install smart instead of zypper in rpm-based imagesPaul Eggleton2012-12-171-3/+3
| | | | | | | | | | Switch over to smart on the target when package-management is enabled. (From OE-Core rev: 69f258a2422e6a6ae71834dd097ffa00a1784d9e) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/*_rpm: integrate Smart into RPM filesystem constructionPaul Eggleton2012-12-173-495/+121
| | | | | | | | | | | | | | | | | | | | Use Smart to construct the root filesystem for images and the contents of SDKs rather than the custom scripts around rpm we had previously. This ensures the result when producing an updated image will be the same as upgrading to the same package versions from an older image on the target, as well as allowing us to remove a substantial amount of code making the rpm classes much easier to follow. Some bugfixes from Bogdan Marinescu <bogdan.marinescu@intel.com>. SDK implementation and testing as well as a number of bugfixes from Mark Hatle <mark.hatle@windriver.com>. (From OE-Core rev: a726ae7c032fac1aa49ce34180fa2ed2dcaf87d3) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Add perl modules as needing to be relocatedMark Hatle2012-12-141-1/+1
| | | | | | | | | | The perl module for automake has an embedded path in it, this needs to be relocated. (From OE-Core rev: ad79360c1d992830d4f0e06a3bbf0622658c0540) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* module.bbclass: make sure do_make_scripts() executes after do_patch()Tom Zanussi2012-12-141-1/+1
| | | | | | | | | | | | | | If do_make_scripts() executes before do_unpack()/do_patch(), the build fails because it can't cd into the workdir of a recipe using this class, so make sure do_make_scripts() doesn't run before the package has been unpacked and patched. Fixes [YOCTO #3589]. (From OE-Core rev: 824cf145bcb55bb99a717a2dfd73e43e6b3feea4) Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* chrpath.bbclass: Normalize rpath only of it doesn't contain ORIGIN variableAndrei Gherzan2012-12-141-1/+1
| | | | | | | | | | | If we normalize a rpath which contains ORIGIN variable, the binary will end up without those rpaths at all. So check first if rpath contains ORIGIN variable and if not, move on and normalize it. (From OE-Core rev: 46dc514ff5a3d2693546cf95c5481e0539c43580) Signed-off-by: Andrei Gherzan <andrei.gherzan@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* chrpath: normalize the pathsSaul Wold2012-12-131-2/+3
| | | | | | | | | | | | By normalizing the paths the path comparing code works correct to generate the right RPATH even when there is a A/../A in TMPDIR [YOCTO #3408] (From OE-Core rev: 50327f2bba9f479dd209cdc54646b9d551e84c59) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* rootfs_rpm.bbclass: Revert to default shell logging behaviorMark Hatle2012-12-131-2/+0
| | | | | | | | | Remove the set +x, and revert to the normal logging behavior. (From OE-Core rev: e799d771c9ed9e41a900e2e96c23d4ae35d5fe08) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bootimg: Use FAT 32 for images larger than 512MBDarren Hart2012-12-131-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes [YOCTO #2138] Commit 217584211625b1c496fe5b78aa4765ccf605d2b9 dropped the forced use of FAT32 for the hddimg generation as it broke with very small images (< 32MB). Unfortunately, left to its own devices, mkdosfs appears to select FAT16 even for very large images, resulting in 2.2GB images being generated as FAT16: $ ls -lah core-image-lsb-sdk-atom-pc-20121010233936.hddimg -rw-rw-r-- 1 dvhart dvhart 2.2G 2012-10-17 08:00 core-image-lsb-sdk-atom-pc-20121010233936.hddimg $ file !$ file core-image-lsb-sdk-atom-pc-20121010233936.hddimg core-image-lsb-sdk-atom-pc-20121010233936.hddimg: x86 boot sector, code offset 0x58, OEM-ID "SYSLINUX", sectors/cluster 128, root entries 512, Media descriptor 0xf8, sectors/FAT 138, heads 64, sectors 4502496 (volumes > 32 MB) , serial number 0x50761926, label: "boot ", FAT (16 bit) The result was a runtime boot error from SYSLINUX and a failure to boot live images greater than 1GB in size. While strictly speaking it is the cluster count that determines which FAT size is used, that calculation requires more information than we have readily available (such as sectors per cluster). If we let mkdosfs determine sectors per cluster and just set a sane threshold above which FAT32 is used, we get correct bootable images. With this patch the 2.2GB core-image-lsb-sdk uses FAT32 and the 21 MB core-image-minimal uses FAT16, and both boot in qemu successfully: $ ls -lah tmp/deploy/images/core-image-lsb-sdk-atom-pc-20121212220835.hddimg -rw-r--r-- 1 dvhart dvhart 2.2G 2012-12-12 14:18 tmp/deploy/images/core-image-lsb-sdk-atom-pc-20121212220835.hddimg $ file !$ file tmp/deploy/images/core-image-lsb-sdk-atom-pc-20121212220835.hddimg tmp/deploy/images/core-image-lsb-sdk-atom-pc-20121212220835.hddimg: x86 boot sector, code offset 0x58, OEM-ID "SYSLINUX", sectors/cluster 8, Media descriptor 0xf8, heads 64, sectors 4470304 (volumes > 32 MB) , FAT (32 bit), sectors/FAT 4357, reserved3 0x800000, serial number 0x50c902b7, label: "boot " $ ls -lah tmp/deploy/images/core-image-minimal-atom-pc-20121212220600.hddimg -rw-r--r-- 1 dvhart dvhart 21M 2012-12-12 14:06 tmp/deploy/images/core-image-minimal-atom-pc-20121212220600.hddimg $ file !$ file tmp/deploy/images/core-image-minimal-atom-pc-20121212220600.hddimg tmp/deploy/images/core-image-minimal-atom-pc-20121212220600.hddimg: x86 boot sector, code offset 0x58, OEM-ID "SYSLINUX", sectors/cluster 4, root entries 512, sectors 41408 (volumes <=32 MB) , Media descriptor 0xf8, sectors/FAT 41, heads 64, serial number 0x50c8ffec, label: "boot ", FAT (16 bit) I have tested and booted core-image-minimal and core-image-lsb-sdk for atom-pc with qemu-system-i386 using this patch. (From OE-Core rev: de808c552d445502bd99f78bb8159d21149f87c1) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: Steve Sakoman <steve@sakoman.com> Cc: Joshua Immanuel <josh@hipro.co.in> Cc: Przemek Czesnowicz <przemyslawx.czesnowicz@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_(deb|ipk|rpm): export NATIVE_ROOT and INTERCEPT_DIR variablesLaurentiu Palcu2012-12-133-0/+6
| | | | | | | | | | | | In order for the postinstall scripts to have access to the recent improvements when generating the target SDK sysroot, export these variables in populate_sdk. (From OE-Core rev: 06151c34f4f4cb669b2f93ebb2f78cfecf698355) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake.conf/utils: Drop some OVERRIDES from FILESPATHRichard Purdie2012-12-111-1/+1
| | | | | | | | | | | | | There are several overrides that don't make sense as part of FILESPATH. This introduces FILESOVERRIDES and allows us to drop some of the pointless ones, simplifying the files search path further and improving the user experience. If needed by specific recipes, other overrides can be added back in for specific cases. (From OE-Core rev: b8b1b39961332c99d62ee466f7859bd62a0f806f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: prepend MLPREFIX to LOCALEBASEPNConstantin Musca2012-12-111-1/+1
| | | | | | | | | | | | We need to prepend MLPREFIX to LOCALEBASEPN in order to fully enable multilib [YOCTO #3440] (From OE-Core rev: 91fe09a9a8b317d27145efff4201f1138d6a45d4) Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* multilib.bbclass: fix do_package_qa_multilibConstantin Musca2012-12-111-1/+3
| | | | | | | | | | | The packages which start with "rtld" are ok [YOCTO #3440] (From OE-Core rev: 1bb3f44065d0470dd2f6950e267ef991c2ce6fd5) Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: make do_split_packages handle non-existent root directoriesRoss Burton2012-12-111-1/+7
| | | | | | | | | | | | | | | | | | This function has different behaviour if the split directory doesn't exist depending on the recursive argument: non-recursive uses os.listdirs which throws an exception, recursive uses os.walk which doesn't. do_split_packages should silently handle non-existent directories because it's mainly used for plugin directories, which may end up being empty though changing the distro configuration (for example, connman without wifi distro feature). So, add an early exit if the split root doesn't exist. (From OE-Core rev: 937101e3fdd6afd00f6f8a8be411a67110c4ae78) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base/license.bbclass: handle multiple INCOMPATIBLE_LICENSEsAndy Ross2012-12-112-77/+60
| | | | | | | | | | | | | | | | | | Allow INCOMPATIBLE_LICENSE to be a whitespace-separated list of incompatible license strings and/or glob patterns. Also fix wildcarding: the string in INCOMPATIBLE_LICENSE was clearly intended to match with wildcards (e.g. "*GPLv3" to match both GPLv3 and LGPLv3), but this was broken because of a bug in return_spdx() which would die with a runtime error when there was no SPDXLICENSEMAP entry for the string. (From OE-Core rev: 8a8d00f4c9f7fe5f9f173b43b86cd18a6c75435c) Signed-off-by: Andy Ross <andy.ross@windriver.com> Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>