aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes
AgeCommit message (Collapse)Author
2015-10-20classes/populate_sdk_ext: add note to env setup scriptPaul Eggleton
Print a note at the end of the environment setup script pointing to devtool. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-20classes/populate_sdk_ext: prevent image construction from executing on installPaul Eggleton
In order to prepare the build system within the extensible SDK, we actually go ahead and build the targets specified by SDK_TARGETS (by default the image the SDK was built for). Assuming that's an image, we don't actually need to build the image itself - we just need to have everything done up to the point before building the image, so that we have everything needed in the sysroot. In order to do this, create temporary bbappends for each of the targets in the workspace layer that stub out do_rootfs and related tasks if they exist. This is a little bit of a hack but is the least intrusive fix at this point. To make things a bit tidier, I have split out the preparation commands into a separate script so we can run that in the appropriate environment rather than all the commands separately. Fixes [YOCTO #7590]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-20classes/populate_sdk_ext: consistent indentationPaul Eggleton
Make indentation consistent here in preparation for the changes that follow. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-19image-live: make SYSLINUX_ROOT changable in image recipesChris Hallinan
Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-19classes/base: provide hints on PACKAGECONFIG errorJoe MacDonald
Commit 771f89498c introduces an error message that is very rarely hit and when it is, it is usually easy to trace the root cause very quickly. The information provided in the error message isn't enough to lead you back to the actual failure, however, so expand upon it a bit, pinpointing the specific package and flag that fails. Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-19metadata_scm: rewrite git hash logicRoss Burton
The code to get the git and branch hash for the current commit in a specific repository was quite complex and prone to breakage, replace it with subprocess and git rev-parse. Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-19grub-efi, gummiboot: Emit correct path in startup.nshKhem Raj
when we generate hddimage and use it to prepare SD card using scripts/contrib/mkefidisk.sh as described here http://elinux.org/Minnowboard:MinnowMaxYoctoProject The content of startup.nsh contains bootx64.efi but this file is actually not in same dir as startup.nsh its in /EFI/BOOT so for this to work entry in startup.nsh should be fs0:\EFI\BOOT\bootx64.efi Otherwise the image is D-O-A Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-12insane.bbclass: remove misleading path in warningMaxin B. John
cross-compilation warning from insane.bbclass is slightly misleading. So, remove the misleading path from warning. [YOCTO #7540] Signed-off-by: Maxin B. John <maxin.john@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-10-03report-error.bbclass: Support Unicode reportsMariano Lopez
Currently error-report doesn't manage Unicode because the files are opened with the default codec. This patch changes the codec of the files to UTF-8, this way the reports will include Unicode characters. This is useful for the qemu output when doing the testimage task. [YOCTO #8225] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01fontcache: allow to pass extra parameters and environment to fc-cacheMartin Jansa
* this can be useful for passing extra parameters, pass -v by default to see what's going on in do_rootfs * we need to use this for extra parameter we implemented in fontconfig: --ignore-mtime always use cache file regardless of font directory mtime because the checksum of fontcache generated in do_rootfs doesn't match with /usr/share/fonts directory as seen on target device causing fontconfig to re-create the cache when fontconfig is used for first time or worse create new cache in every user's home directory when /usr/ filesystem is read only and cache cannot be updated. Running FC_DEBUG=16 fc-cache -v on such device shows: FcCacheTimeValid dir "/usr/share/fonts" cache checksum 1441207803 dir checksum 1441206149 * my guess is that the checksum is different, because pseudo (which is unloaded when running qemuwrapper) or because some influence of running the rootfs under qemu. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01testimage: Added IO commands to dumpsMariano Lopez
This change just add two more commands to the host dumps to get more information related to the IO. [YOCTO #8412] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01ptest: run-ptest not required to run do_install_ptestIan Ray
Modify do_install_ptest_base to run do_install_ptest and install the Makefile irrespective of the presence of ${WORKDIR}/run-ptest. This change allows "ptest-aware" packages to install run-ptest as part of the make machinery. Signed-off-by: Ian Ray <ian.ray@ge.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01distrodata: Take account proxies on distrodata tasksLeonardo Sandoval
Proxies defined in the enviroment where not taken into account on the distrodata tasks. This commit implied passing the datastore into the distro_check library and context manager for the urllib.urlopen function. One way to run distrodata tasks is using 'universe' as target and the 'all' distrodata task: $ bitbake universe -c distrodataall $ bitbake universe -c distro_checkall $ bitbake universe -c checklicenseall Logs are located under TMPDIR/log [YOCTO #7567] Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01kernel.bbclass: fix the bug of checking the existing sections in do_strip()Kevin Hao
Ross reported the following waring when building edgerouter BSP: WARNING: Section not found: .comment The reason is that the testing of the existing sections in do_strip() returned the wrong value. Please see the following code in do_strip(): for str in ${KERNEL_IMAGE_STRIP_EXTRA_SECTIONS}; do { if [ "$headers" != *"$str"* ]; then bbwarn "Section not found: $str"; fi "$CROSS_COMPILE"strip -s -R $str ${KERNEL_OUTPUT} }; done The "*" doesn't have special meaning in the if string test, so it will return true even the $str is a substring of $headers. Fix this issue by replacing it with "! (echo "$headers" | grep -q "^$str$")". Reported-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Kevin Hao <kexin.hao@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01image.bbclass: tweak the key location for dropbear when rootfs is readonlyAlexander Kanavin
In the same way it's done for openssh. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01image.bbclass: when building a readonly rootfs, tweak ssh settings ↵Alexander Kanavin
regardless of init system in use Previously it was done only if sysvinit was in DISTRO_FEATURES. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01distutils3: Avoid MACHINE specific checksumsRichard Purdie
The MACHINE variable is used to handle sysroot paths within one of the patches to python3-native. In this context, it is relocation safe and the resulting packages should not have MACHINE specific checksums, therefore excluding MACHINE in this context is safe. This whole setup is ugly and ideally we should come up with a better way of handling this but at least allow a stop gap solution for now. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01deploy: Mark deploy tasks as MACHINE specificRichard Purdie
This adds the markup to inform bitbake to rerun the deploy task per MACHINE. This makes sense since DEPLOY_DIR_IMAGE contains MACHINE. Doing it this way means the same artefact will be reused from sstate rather than rebuilt. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01multilib_global: Add handling of SIGGEN variables for multilibRichard Purdie
multilib task signatures turned out to have issues since SIGGEN_EXCLUDERECIPES_ABISAFE and SIGGEN_EXCLUDE_SAFE_RECIPE_DEP did not have multilib mappings. This adds those mappings in which in turn improves multilib task checksums to match the standard non-mulitlib versions. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-29oeqa/testimage: Add ability to run single test from suite.Lucian Musat
Just like we have in oe-selftest, you can add <filename>.<Class>.<testname> in TEST_SUITES in order to run just that test Signed-off-by: Lucian Musat <george.l.musat@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-29cross-canadian.bbclass: big-endian ARM is also gnueabi.Peter Seebach
If building for a BE8 ARM target, arch is "armeb" rather than "arm", but ABI should still be "gnueabi". Otherwise gcc won't build. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-29populate_sdk_base: Simplify postprocess commandsRichard Purdie
When looking at and trying to build a slightly customised SDK, I realised the code could be simplified and written in a way which was more customisable. This patch moves various function calls into the SDK_POSTPROCESS_COMMAND which was intended for this kind of use. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28oeqa/testimage: Remove absolute path to oeqa from jsonLucian Musat
In the json file the whole datastore is serialized which contains absolute path to the oeqa folder. This breaks the functionality when trying to run the tests from other machines. Signed-off-by: Lucian Musat <george.l.musat@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-28distrodata: handle recipes with empty or absent SRC_URI in checkpkg()Alexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-28sstate: run recipe-provided hooks outside of ${B}Ross Burton
To avoid races between the sstate tasks/hooks using ${B} as the cwd, and other tasks such as cmake_do_configure which deletes and re-creates ${B}, ensure that all sstate hooks are run in the right directory, and run the prefunc/postfunc in WORKDIR. (From OE-Core rev: 1d3bde02641f4b40030cf7e305ee3d7c2faabe29) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28image types: add hdddirectPatrick Ohly
When image-vm.bbclass was introduced, it indirectly also introduced a ".hdddirect" image type based on boot-directdisk.bbclass. However, one could only get that image when also enabling at least one of the virtual machine images. The .hdddirect images are useful by themselves. By registering image-vm.bbclass as implementation of it, it becomes possible to select them with: IMAGE_FSTYPES = "hdddirect" Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-28sanity.bbclass: show warning when chmod failsAlex Franco
* for some reason this part of: http://patchwork.openembedded.org/patch/102561/ wasn't ever merged. [YOCTO #7669] Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-26mulitlib: Ensure SDKTARGETSYSROOT is set correctlyRichard Purdie
When building something like lib32-core-image-minimal -c populate_sdk, we expect one sysroot with both multilibs installed. We therefore need a single SDKTARGETSYSROOT value which doesn't change when multilibs are enabled. This makes the image generation code match what the meta-environment files set the SDK up to use. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-26gtk-icon-cache/pixbufcache: don't set GDK_PIXBUF_MODULEDIRRoss Burton
In normal use gdk-pixbuf knows where to find its own loaders and explicitly stating this will cause work in the future if the ABI version changes. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-26gdk-pixbuf: move gdk-pixbuf-query-loaders to $libdir for multilib safetyRoss Burton
If for example gdk-pixbuf and lib32-gdk-pixbuf are in an image then only one ${bindir}/gdk-pixbuf-query-loaders will be installed, so only one variant will actually be usable. Solve this by moving gdk-pixbuf-query-loaders into ${libdir} as it's intimately tied to the library and rarely directly invoked by the user, and update the callers to use the right path. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-26multilib: Drop populate_sdk variable manipulationRichard Purdie
I believe this code dates from previous times when we didn't extend the TOOLCHAIN_TARGET* variables to cover all multilibs. We now do this so this code acutally breaks things by removing the non-multilib variants. By changing this, a multilib SDK now contains both sets of base libraries which matches the tools we ship with it. If the user wishes to customise, this also becomes easier. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-24archiver: stamp-base is dead, remove itRichard Purdie
stamp-base was only ever used by the shared workdir code in gcc. This turned out to be problematic and has been replaced by other approaches which don't need specialist bitbake knowledge. stamp-base will likely get removed from bitbake but for now, remove it from archiver to simplfy the code since gcc no longer uses it. This stops people getting confused by the obsolete code paths which I'm getting a lot of questions about. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23insane.bbclass: make package_qa_clean_path return a relative pathRobert Yang
Make package_qa_clean_path() return something like "work/path/to/file" rather than "/work/path/to/file", the relative path is a little clear. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-22classes/externalsrc: fix setting of deps varflag as a stringPaul Eggleton
The value of the deps varflag for tasks is (unusually) expected to be a list object rather than a space-separated string, hence we cannot use appendVarFlag() here. This fixes a traceback when parsing the gcc recipe with externalsrc enabled, for example. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-22classes/externalsrc: scale back warning to a plain notePaul Eggleton
It turns out that there are folks out there who use externalsrc in normal builds and don't really need to be warned; additionally within the extensible SDK or when using devtool, it shouldn't be a warning situation. Thus, scale it back to a note (we can't use bb.note() here since that wouldn't actually be piped through to the bitbake UI). Also touch up the message a little bit. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-22classes/populate_sdk_ext: drop work-config.incPaul Eggleton
This is not actually used for anything - I thought that we would need to use it within devtool to set global configuration, but we're able to do everything we need within the bbappends it creates, which also saves on parse time. If we're not going to use work-config.inc let's just drop it completely. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-22classes/populate_sdk_ext: allow custom configuration for extensible SDKPaul Eggleton
Provide the ability to define a function containing extra configuration values to be added to the local.conf file that goes into the SDK. For example, this could be used to set up SSTATE_MIRRORS within the SDK. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-22classes/populate_sdk_ext: fix missing environment settings if running ↵Paul Eggleton
installer with sh If you ran the extensible SDK installer file with sh (instead of bash), then the additional call to buildtools environment setup, extension of PATH to support running devtool, and setting of OE_SKIP_SDK_CHECK weren't being added to the end of the script. This is because apparently bash is happy to expand wildcards in the target of a redirection, but bash running in POSIX sh mode won't (although it apparently does work on the sh command line rather than within a script run as an argument to sh). In any case using a wildcard here is a bit of a crutch which we don't need, so replace it with the proper path to the environment setup script. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-22image_types.bbclass: Don't try to create ubi symlink twiceMike Looijmans
Fixes b6e64de541b37 "Restore compatibility with previous UBI filesystems" The multivolume UBI code creates symlinks for each volume. If the volume name is empty, it will create a symlink that the rootfs code will attempt to create again later, resulting in a crash like this (unless IMAGE_LINK_NAME is blank): ERROR: Error executing a python function in .../recipes-core/images/my-image.bb: File: '.../oe-core/meta/lib/oe/image.py', lineno: 203, function: _create_symlinks *** 0203: os.symlink(src, dst) Exception: OSError: [Errno 17] File exists To prevent this from happening, only create symlinks to volumes that have a name, and let the rootfs script create the default symlink later. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-21kernel-arch: Add nios2 to valid archsMarek Vasut
Add nios2 target to valid arch list definition. Based on previous work by Walter Goossens <waltergoossens@home.nl> at https://github.com/wgoossens/meta-nios2 . Signed-off-by: Marek Vasut <marex@denx.de> Cc: Walter Goossens <waltergoossens@home.nl> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-21insane: Add nios2 supportMarek Vasut
Add support information for the Altera NIOS-II soft processor. Based on previous work by Walter Goossens <waltergoossens@home.nl> at https://github.com/wgoossens/meta-nios2 . Signed-off-by: Marek Vasut <marex@denx.de> Cc: Walter Goossens <waltergoossens@home.nl> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-21autotools: fix traversal bug in aclocal copyingChristopher Larson
The logic is supposed to avoid following dependencies when we depend on a target recipe which depends on a native recipe. The problem is, we were marking the dep (the native recipe) as already processed when we avoided traversal, meaning that even when that recipe would be pulled in via a different dependency, we skipped it there too, and whether it was skipped entirely depended on the non-deterministic dep processing order. If the first one to be encountered was via the indirect target dep, it wouldn't end up in configuredeps, otherwise it would. As we want to avoid traversing that particular dependency relationship, not *every* dependency on the native, we should continue, but not add it to done, so it can be traversed from other avenues. This fixes an intermittent bug in some of my non-GPLv3 builds, where one dependency upon gettext-minimal-native was skipped, but others should not have been, resulting in it being removed from configuredeps entirely, and no gettext macros being available. Cc: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-21testimage.bbclass: Fix break introduced with SIGTERM handlingMariano Lopez
The SIGTERM introduced another break into runexported test, the handler is in the class TestContext while exporting it will try to convert the singnal handler to JSON, and this will throw an exception. The SIGTERM handler is not needed in the exported test, so this change will remove the handler before exporting the test. Also when a test is exported the target is not deployed/started anymore, it is not necessary. [YOCTO #8239] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-21insane.bbclass: drop extra line-feed in pkgname checkMartin Jansa
* it was causing QA checck name to be shown on separate line like this: sblim-sfcCommon-1.0.1: sblim-sfcCommon-dev doesn't match the [a-z0-9.+-]+ regex [pkgname] Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-21insane.bbclass: show PN and relative path in package_qa_check_host_userMartin Jansa
* show PN as other QA checks * strip PKGDEST prefix from shown path as other QA checks Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-21package.bbclass: add summary line to installed-vs-shipped QA checkMartin Jansa
* there is PN at the beginning, then possibly long list of files and at the end we don't see which recipe has this issue, add another line which says which PN and how many files Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-21testimage.bbclass: Don't require an image manifestRandy Witt
Sometimes an "image" may not actually have a manifest file such as when using a "baremetal kernel". This change allows for a user to set a IMAGE_NO_MANIFEST flag to 1 in order to inform the code that there is no corresponding manifest that should exist for an image. Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-16autotools.bbclass: mkdir ${B} -> mkdir -p ${B}Robert Yang
${B} is the default cwd of tasks, so there might be race issues such as: | mkdir: cannot create directory `${B}': File exists [snip] NOTE: recipe perf-1.0-r9: task do_configure: Failed Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-16image.bbclass: add do_rootfs vardeps for {COMPRESS, IMAGE}_CMD_*Christopher Larson
We want do_rootfs to rerun if the fstype or compression commands or dependencies change for any of our configured fstypes (IMAGE_FSTYPES). IMAGE_TYPEDEP isn't explicitly handled, as it's traversed already, so the end result will change if it does, and we only really care about the results, not how we got there. This uses oe.image.Image()._get_image_types() to get the info about the image and compression types in use. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-14distutils.bbclass: Handle python-backport modulesAlejandro Hernandez
When installing backport modules they stumble upon each other, complaining with the following error: ERROR: The recipe python-backports-ssl is trying to install files into a shared area when those files already exist. This is the correct behavior since thats just the way they were designed, all backport modules provide an __init__.py file (the same among all packages), and without it they simply wouldnt work. distutils handles FILES_${PN}* variables for python packages, but it uses wildcards to include the required files, hence removing the __init__.py files from each backport package during build time is impossible since it doenst actually contain that value, this patch simply removes the __init__.py* files from the staging area if they already exist on sysroot, this way, these are not included in FILES_${PN} anymore, fixing the issue mentioned above. [YOCTO #8207] Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>