summaryrefslogtreecommitdiffstats
path: root/meta/classes
Commit message (Collapse)AuthorAgeFilesLines
* distro_features_check.bbclass: fix wrong indentationSebastian Wiegand2014-05-291-2/+2
| | | | | | | | | | | | | To fix check of REQUIRED_DISTRO_FEATURES fix indentation in python code. [YOCTO #6349] Reported and written by: Sebastian Wiegand <sebastian.wiegand@gersys.de> (From OE-Core rev: 986db87a3931edce8be79f309d07497e4179a810) (From OE-Core rev: d56b29b251d94f16992726a0ed0192693265a20d) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* distutils.bbclass: only modify *.py file if it contains path to be removedRadek Dostal2014-05-291-1/+4
| | | | | | | | | | | | | | | Currently sed command touches every single *.py file. This modifies the timestamp of the file. All *.pyo files will be recompiled during the first boot, because timestamp will not match. This should be only necessary if sed command changes the file. (From OE-Core rev: 2d01c5a4989dcf03a202c27730a2a8f334e0c37a) (From OE-Core rev: 0903469ffd41c8e6a5ed8ba09817c004a16a477e) Signed-off-by: Radek Dostal <radek.dostal@streamunlimited.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* distrodata.bbclass: Fix checkpkg functionalityIrina Patru2014-05-291-27/+13
| | | | | | | | | | | | | | | Currently it wasn't working because *COMMAND variables were removed from fetcher. Now checkpkg sets the command internally and sends it as a parameter to _runwget() function from wget fetch. (From OE-Core rev: b9a51fc1901c378375cca041da27ddbd450c0412) (From OE-Core rev: 724656a399745fc1e3d270f4af5a85336cd062e7) Signed-off-by: Irina Patru <irina.patru@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel: don't populate source symbolic linkMing Liu2014-05-291-1/+1
| | | | | | | | | | | | | | | | | /usr/src/kernel/source deployed by kernel-dev package is symbolically linking to a build-time kernel source folder, which make no sense when cross-compiling. Fixed by not populating it at install stage. (From OE-Core rev: edb85a9589be54a1e9c980aa669a380222a76cf4) (From OE-Core rev: 4d04d4e6063b1a9dcd8f929e8abfa403ce87eef1) Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* native.bbclass: Override TARGET_ flags tooMike Crowe2014-05-291-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | TARGET_LDFLAGS is currently defined in bitbake.conf to contain ${TARGET_LINK_HASH_STYLE} which differs between MIPS and other targets. Since TARGET_LDFLAGS is an exported variable it affects the hash of every shell task even if it is not used. We don't want native recipe tasks to have different hashes purely because they happen to have been built in order to satisfy dependencies for different MACHINEs since this causes lots of churn in the native sysroot when switching between MACHINEs. Making native.bbclass override TARGET_LDFLAGS to use BUILD_LDFLAGS ensures consistent hashes and is a sensible thing to be doing anyway. Although they don't appear to have the same detrimental affect on task hashes TARGET_CPPFLAGS, TARGET_CFLAGS and TARGET_CXXFLAGS should be overridden too. (From OE-Core rev: 05a70ac30b37cab0952f1b9df501993a9dec70da) (From OE-Core rev: ac14407182fe1dec2e53179177344833d20eb2db) Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* report-error: Add posting in the public noteSaul Wold2014-05-291-0/+1
| | | | | | | | | (From OE-Core rev: c2eb5cd1aa4632f7ee8c261414e599dcb6f40a8b) (From OE-Core rev: cfb4539b932e9f6c686206840e0cd60d0af86adb) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* pixbufcache: add error exit in pixbufcache_sstate_postinstJoe Slater2014-05-291-2/+4
| | | | | | | | | | | | | In order to attempt recovery of a failed populate_sysroot_setscene, we need to explicitly error exit an SSTATEPOSTINSTFUNC. So, we test the return value of gdk-pixbuf-query-loaders. (From OE-Core rev: 17bdb2538e6b723e11afb1079c71363603dba63d) (From OE-Core rev: 90492efeacc7645592bbd5c4518f519f732e5f95) Signed-off-by: Joe Slater <jslater@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* recipe_sanity.bbclass: avoid error when running 'bitbake -e'Andreas Oberritter2014-05-291-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running 'bitbake -e' without further arguments causes a stack trace on stderr: | ERROR: Command execution failed: Traceback (most recent call last): | File "[...]/bitbake/lib/bb/command.py", line 99, in runAsyncCommand | commandmethod(self.cmds_async, self, options) | File "[...]/bitbake/lib/bb/command.py", line 405, in showEnvironment | command.cooker.showEnvironment(bfile) | File "[...]/bitbake/lib/bb/cooker.py", line 453, in showEnvironment | logger.plain("\npython %s () {\n%s}\n", e, data.getVar(e, envdata, 1)) | File "[...]/bitbake/lib/bb/data.py", line 89, in getVar | return d.getVar(var, exp) | File "[...]/bitbake/lib/bb/data_smart.py", line 522, in getVar | return self.getVarFlag(var, "_content", expand, noweakdefault) | File "[...]/bitbake/lib/bb/data_smart.py", line 612, in getVarFlag | value = self.expand(value, cachename) | File "[...]/bitbake/lib/bb/data_smart.py", line 350, in expand | return self.expandWithRefs(s, varname).value | File "[...]/bitbake/lib/bb/data_smart.py", line 340, in expandWithRefs | raise ExpansionError(varname, s, exc) | ExpansionError: Failure expanding variable can_delete_FILESPATH, expression was def can_delete_FILESPATH(cfgdata, d): | expected = cfgdata.get("FILESPATH") | #expected = "${@':'.join([os.path.normpath(os.path.join(fp, p, o)) for fp in d.getVar('FILESPATHBASE', True).split(':') for p in d.getVar('FILESPATHPKG', True).split(':') for o in (d.getVar('OVERRIDES', True) + ':').split(':') if os.path.exists(os.path.join(fp, p, o))])}:${FILESDIR}" | expectedpaths = d.expand(expected) | unexpanded = d.getVar("FILESPATH", 0) | filespath = d.getVar("FILESPATH", True).split(":") | filespath = [os.path.normpath(f) for f in filespath if os.path.exists(f)] | for fp in filespath: | if not fp in expectedpaths: | # __note("Path %s in FILESPATH not in the expected paths %s" % | # (fp, expectedpaths), d) | return False | return expected != unexpanded | which triggered exception AttributeError: 'NoneType' object has no attribute 'split' Removing the commented second line in can_delete_FILESPATH() hides the error. (From OE-Core rev: a84c36e0e5e8332ddc5a6c34e1f598d5cb87cee2) (From OE-Core rev: ef5892a2cd8eb85ba8de47a970122a8a6d5724ad) Signed-off-by: Andreas Oberritter <obi@opendreambox.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* icecc: don't create unnecessary 'ice' dirs in sysroots when disabledMartin Jansa2014-05-291-2/+10
| | | | | | | | | | | | | | | | | | | | | | | * parsing ICE_PATH="${@icc_path(bb, d)}" causes "ice" directories to be created in every sysroot, that could be a bit confusing for people who inherit icecc.bbclass, but disabled it * shorten ICECC_VERSION="${@icc_version(bb, d)}" path a bit by returning sooner when disabled * remove ICECC_PATH and ICECC_ENV_EXEC from signatures, we assume that using icecc doesn't influence the output, so it shouldn't matter when user supplies own version of icecc or env script * always compare ICECC_DISABLED with "1", boolean typed_value isn't used because documentation already mentions using empty value to keep icecc enabled and that's not valid boolean value when oe.data.typed_value is used: ERROR: ICECC_DISABLED: Invalid boolean value '' (From OE-Core rev: c3e8bfe30685e2357a6eb3ba8f4a014c7dc9f58e) (From OE-Core rev: 41aeb447de70b5fb3e1d0ef4aa90376ad5caef4c) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toaster.bbclass: do not fail on non-existent filesAlexandru DAMIAN2014-04-191-1/+9
| | | | | | | | | | | | | | | | Toaster may look up inexistent file paths in the build history for packages that have been referenced but not built. This triggers a failure, and this patch recovers by deleting the reference to the non-built packages. [YOCTO #6063] (From OE-Core rev: 5413e56205a9f48d8c3e419d8da468c60f5aa348) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate: Silence warnings when switching machinesRichard Purdie2014-04-101-0/+1
| | | | | | | | | | | | We recently added multiple provider warnings. These could get issued from -cross recipes due to the way these currently overlap in the native sysroot. Filter out these warnings for now, until such times as we improve the cross recipes so they don't have an overlapping namespace. (From OE-Core rev: d62f8d428831cc62b395f4c764c1e876353ddede) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: improve sed expressions for ssh_allow_empty_password()Jonathan Liu2014-04-101-2/+2
| | | | | | | | | | | The sed expression was also replacing documentation text containing PermitRootLogin in the line so "PermitRootLogin yes" was specified twice. (From OE-Core rev: 0572196158d9505a624bdee71760978f284728b0) Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package.bbclass: Add CONFFILES to list of package specific variablesRichard Purdie2014-04-081-1/+1
| | | | | | | | | | Changes to CONFFILES should change the sstate checksum. To make that happen, it needs to be listed in the list of package specific variables, therefore add it. (From OE-Core rev: 9db71fa03b9d5f5307b2d09e7aa89f46f622aa09) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toaster.bbclass: image file is missing a "/"Cristiana Voicu2014-04-081-1/+2
| | | | | | | | | | Relaced the key with the join between path and file name. [YOCTO #6090] (From OE-Core rev: 85ffc93becb31772107a5a63b09fd3c16160f3ca) Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* useradd_base.bbclass: avoid the traffic crowdingRobert Yang2014-04-051-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, it would sleep 1 second when fail to add the user, this maybe not enough when we use the sstate cache, as my test shows below, nearly all the useradd actions are doing in the same minute when mirror from ssate cache, and it would fail when the load is high, I got these time by adding strace before the useradd for debugging: 2014-03-31 14:48:22.978079781 +0800 /tmp/log/pulseaudio.4.c 2014-03-31 14:48:22.028079813 +0800 /tmp/log/pulseaudio.1.c 2014-03-31 14:48:21.949079816 +0800 /tmp/log/pulseaudio.3.c 2014-03-31 14:48:20.903079852 +0800 /tmp/log/pulseaudio.2.c 2014-03-31 14:48:20.006079883 +0800 /tmp/log/nfs-utils.9.c 2014-03-31 14:48:18.876079923 +0800 /tmp/log/xuser-account.9.c 2014-03-31 14:48:18.824079924 +0800 /tmp/log/pulseaudio.0.c 2014-03-31 14:48:17.826079959 +0800 /tmp/log/xuser-account.8.c 2014-03-31 14:48:17.766079961 +0800 /tmp/log/nfs-utils.8.c 2014-03-31 14:48:16.794079995 +0800 /tmp/log/xuser-account.7.c 2014-03-31 14:48:16.735079997 +0800 /tmp/log/nfs-utils.7.c 2014-03-31 14:48:14.719080066 +0800 /tmp/log/xuser-account.5.c 2014-03-31 14:48:14.677080068 +0800 /tmp/log/nfs-utils.5.c 2014-03-31 14:48:12.621080139 +0800 /tmp/log/nfs-utils.3.c 2014-03-31 14:48:11.589080175 +0800 /tmp/log/nfs-utils.2.c 2014-03-31 14:48:10.242080221 +0800 /tmp/log/builder.0.c 2014-03-31 14:48:09.523080246 +0800 /tmp/log/nfs-utils.0.c 2014-03-31 14:48:09.488080248 +0800 /tmp/log/openssh.0.c 2014-03-31 14:48:09.485080248 +0800 /tmp/log/rpcbind.1.c 2014-03-31 14:48:07.590080313 +0800 /tmp/log/rpcbind.0.c 2014-03-31 14:28:15.437121590 +0800 /tmp/log/avahi.0.c 2014-03-31 14:18:19.067142238 +0800 /tmp/log/dbus.0.c The nfs-utils and xuser-account are failed to add the user. The useradd command needs two locks, passwd.lock and group.lock, it may get one, but can't get another one if we look into these .c files, sleep 1 second is not enough, it needs more seconds, the reason is that, if succeed, it doesn't have any side effects, if failed, we need wait for more seconds rather than make it more crowding. I've tried to use "sleep 5", but it didn't make much better since they would sleep and wake up nearly at the same time, I also tried to use "sleep <RANDOM seconds between 1 and 10>", that didn't make much better ,either. I think that a better ways is sleep more and more seconds (up to 10 seconds) when failed, this can't fix the problem that they may do the actions at the same time, but the logic is: if it is not crowding, sleep less time should be OK, otherwise sleep more and more time. Here is the testing result which seems much better: 2014-04-03 14:09:56.605185284 +0800 dbus.0.c 2014-04-03 14:09:39.899185862 +0800 rpcbind.5.c 2014-04-03 14:09:38.400185914 +0800 distcc.4.c 2014-04-03 14:09:35.206186025 +0800 pulseaudio.1.c 2014-04-03 14:09:33.979186067 +0800 rpcbind.4.c 2014-04-03 14:09:33.364186089 +0800 pulseaudio.0.c 2014-04-03 14:09:33.360186089 +0800 distcc.3.c 2014-04-03 14:09:30.996186171 +0800 avahi-ui.0.c 2014-04-03 14:09:30.298186195 +0800 distcc.2.c 2014-04-03 14:09:29.905186208 +0800 rpcbind.3.c 2014-04-03 14:09:29.410186226 +0800 avahi-ui.2.c 2014-04-03 14:09:28.239186266 +0800 distcc.1.c 2014-04-03 14:09:27.298186299 +0800 xuser-account.0.c 2014-04-03 14:09:27.032186308 +0800 distcc.0.c 2014-04-03 14:09:26.836186315 +0800 rpcbind.2.c 2014-04-03 14:09:25.846186349 +0800 nfs-utils.1.c 2014-04-03 14:09:25.752186352 +0800 avahi-ui.1.c 2014-04-03 14:09:24.779186386 +0800 builder.0.c 2014-04-03 14:09:24.746186387 +0800 rpcbind.1.c 2014-04-03 14:09:23.916186416 +0800 openssh.1.c 2014-04-03 14:09:23.848186418 +0800 nfs-utils.0.c 2014-04-03 14:09:23.594186427 +0800 rpcbind.0.c 2014-04-03 14:09:22.609186461 +0800 ppp-dialin.0.c 2014-04-03 14:09:21.817186488 +0800 openssh.0.c [YOCTO #6085] (From OE-Core rev: 9cedc786ba132935748bdca8bc33b56c366b531e) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* siteconfig: Unbreak after sstate changes some time agoRichard Purdie2014-04-051-1/+1
| | | | | | | | | | | | Some time ago, the sstate name field was dropped. This code wouldn't have worked since then. Makes me wonder if we really need it. Anyhow, my last patch properly breaks it. This fixes the naming so it works as designed again. (From OE-Core rev: d282b276aa5e58d306be1c8ef9a985f2267a612b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate: Remove name sstate parameterRichard Purdie2014-04-051-16/+13
| | | | | | | | | | A while ago we stopped supporting sstate names which were different from the taskname. This patch finishes cleaning up some code remnants from that which were causing data duplication and confusion. (From OE-Core rev: 5a19863e389d28d8db4a86e409c1daa3c6b46eff) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate: Fix an error handling the tasknameRichard Purdie2014-04-051-0/+1
| | | | | | | | | | | | | Looking at the code, its clear 'task' is meant not to have the do_ prefix, however its also clear it can be left in through some code paths. One result of this can be files not being cleaned from the sysroot correctly. Fix this. (From OE-Core rev: 3c912102fd9ea6b360f1af209da21e8f27b845c0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* SDK default deploy directoryDavid Vincent2014-04-041-1/+1
| | | | | | | | | | | | | If the user changes the DEPLOY_DIR variable to set up a custom deploy directory for images, packages, SDKs as explained in the documentation, the variable SDK_DEPLOY does not take it into account and fallback to TMPDIR as default. Therefore, SDKs were not found in the correct location. (From OE-Core rev: 0f043e9a3fdc4b489b55e0605fee01927854205a) Signed-off-by: David Vincent <freesilicon@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity: testimage needs DISPLAY set only for qemu targetsStefan Stanacar2014-04-041-3/+5
| | | | | | | | | | | | There's no point in failing if DISPLAY isn't set if we don't boot a qemu image when using a controller like SimpleRemoteTarget or GummibootTarget. (From OE-Core rev: 9fcd3af8626e1b0979b0cde745fe0880ccc50de7) Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gdk-pixbuf: pass GDK_PIXBUF_FATAL_LOADER where relevantRoss Burton2014-04-011-1/+1
| | | | | | | | | | Pass GDK_PIXBUF_FATAL_LOADER to the sstate postinst and intercept so that any problems are flagged as errors instead of being silently ignored. (From OE-Core rev: 0a97b1571821848af11d8651c7145ed9592f9e31) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image/image-prelink/image-mklibs/sanity: Drop pointless EXPORT_FUNCTIONSRichard Purdie2014-04-014-9/+0
| | | | | | | | | | | | | I'm sick of seeing people adding to EXPORT_FUNCTIONS in these classes when they clearly have no idea what it does. Worse, these uses of it are all broken, the naming is incorrect and they do nothing. Lets remove them and try and preserve any remaining part of my sanity. (From OE-Core rev: 05a2fb19f722652c5d13be911b8ed45a264bbb40) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: add function to disable SSH DNS Lookup for QemuSaul Wold2014-04-011-0/+10
| | | | | | | | | | | | | | | | | | This function disables the reverse DNS lookup on QEMU targets to reduce the delay when using static IP address. By disabling DNS lookup we can save a great deal of time during automated testing on the autobuilder (on the order of ~400 seconds per ssh tranaction). This is seen when using the testimage, there is a delay getting logged-in from the server to target. It's enabled for all qemu imgaes by default and can be overridden by setting the SSH_DISABLE_DNS_LOOKUP variable. [YOCTO #5954] (From OE-Core rev: c93eeecb15c4acac9226a3394c93d7e99a809d6b) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/sanity: check if SDKMACHINE setting has taken effectPaul Eggleton2014-03-311-0/+2
| | | | | | | | | | | | | | | If you try to set SDKMACHINE in a distro configuration file, it won't take effect because by the time that is parsed the line in bitbake.conf which includes the appropriate conf file for SDKMACHINE has already been parsed. Check that SDK_ARCH has changed from its default value and show an error if it hasn't in order to catch this misconfiguration. Fixes [YOCTO #5861]. (From OE-Core rev: 25ba4042ae782016aaf1cb5d3dac09b2a1030a1e) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toaster.bbclass: the license.manifest is located in DEPLOY_DIRCristiana Voicu2014-03-311-2/+2
| | | | | | | | | | Replaced DEPLOY_DIR_IMAGE with DEPLOY_DIR [YOCTO #6051] (From OE-Core rev: 64c0ea3adccfc8af911b5e25e4c64a0abc578e6c) Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sstate.bbclass: update missed sstate eventAlexandru DAMIAN2014-03-311-2/+10
| | | | | | | | | | | | | | This is a patch to update the missed sstate event with info about the sstate files locations that were found. It's needed as to display the found file in the toaster ui. Also fixes a bug where a setscene task may have appeared in the missed list even if it was found in a sstate mirror. (From OE-Core rev: ad66cd521d3e661dd57c5aa02c204585101984f3) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux.bbclass: Enable additional kernel parameters for syslinuxKonrad Scherer2014-03-301-0/+5
| | | | | | | | | | | | | | | Add additional parameter 'SYSLINUX_KERNEL_ARGS' in order to allow for specific kernel parameters to be set when using syslinux. The extra kernel parameters are added to btype[1] and then written out as part of the APPEND field. (From OE-Core rev: d78c4d51ed266c14b0425f6abf553392c6ebe408) Signed-off-by: Konrad Scherer <Konrad.Scherer@windriver.com> Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_*.bbclass: Simplify addtaskRichard Purdie2014-03-303-3/+3
| | | | | | | | | The package_write task was previously removed. Remove a remaining superfluous reference to it. (From OE-Core rev: 76bbf9e8f07f3e6f20c890dd4c82c72641e2ca88) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_*: Drop now unneeded recrdeptask flagsRichard Purdie2014-03-303-5/+0
| | | | | | | | | Now populate_sdk_base has the appropriate flags, we can drop these from the individual classes. (From OE-Core rev: 388bfe2dc168d31ba3c5c85684f3c96d2ae13800) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: add dependency of do_package_write_* tasksLaurentiu Palcu2014-03-301-1/+1
| | | | | | | | | | | | | | | | | | | | nativesdk packages were created only for the first backend listed in PACKAGE_CLASSES. Hence, if one had it set to "package_rpm package_ipk" and did a 'bitbake -c populate_sdk core-image-something', the nativesdk packages were created only for rpm. This is particularily bad for adt-installer which is based on opkg repos. Credits go to richard.purdie@linuxfoundation.org who suggested me this fix. [YOCTO #5900] (From OE-Core rev: 85c3238ee713bc27e99a2e393e3bf8438ed4d91f) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image.bbclass: replace rootfs with /dev/rootChen Qi2014-03-271-1/+1
| | | | | | | | | | | | | | | Replace 'rootfs' with '/dev/root' in read_only_rootfs_hook function to match the latest change in fstab file from the base-files recipe. The related commit is as follows. commit e8bc7a136a81a0d8df2d32dfba0920c1b2835141 base-files: use /dev/root in /etc/fstab for systemd support (From OE-Core rev: 31b5aeb5a0b82842e1dd8545bf5d43778d8c218b) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base.bbclass: Merge two ConfigParsed event handlersRichard Purdie2014-03-271-7/+1
| | | | | | | | | There were two ConfigParsed event handlers in base.bbclass, this merges them together for small efficiency wins. (From OE-Core rev: ff919ed132b543f70e9635be7a31f799aafcf8d6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity.bbclass: Update against bitbake sanity event changesRichard Purdie2014-03-271-7/+6
| | | | | | | | | | Bitbake will now trigger sanity events when it needs the checks to run in all cases so we can drop the ConfigParsed hook. We now control whether events are generated or errors are raised from the event itself. (From OE-Core rev: 97108a5647f9278280c923ef69d2b0b945a26eef) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* base.bbclass: Run oe_import before other INHERITsRichard Purdie2014-03-271-1/+5
| | | | | | | | | | | | | Its possible for classes listed in INHERIT directives to use things like the oe.utils functions. If that happens the user sees a traceback since the modules don't become available until the ConfigParsed event. This change to use immediate expansion means that the oe modules become available much sooner and can be used in the core classes, including within base.bbclass. (From OE-Core rev: a9ecad713f37f2703e99c6b856207abeb6c5ad1f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cpio rootfs build: Avoid modifying rootfs dirJonas Eriksson2014-03-271-3/+5
| | | | | | | | | | | | | | | | | | | The Linux kernel requires that initrd images contain a /init file for the image to be used as an initrd, even if it is empty. Adding it into the rootfs directory creates a race, that can upset tar when building both a .tar and .cpio image file ("tar: .: file changed as we read it"). Additionally, whether or not the tar file will contain the /init file is also up to the race condition. To avoid this problem, move the /init addition out from the rootfs directory, and thus only include it in the .cpio image. (From OE-Core rev: 706055503f493a5af73240c0983c46dbe31d8fe9) Signed-off-by: Jonas Eriksson <jonas.eriksson@enea.com> Signed-off-by: Josep Puigdemont <josep.puigdemont@enea.com> Cc: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toaster.bbclass: update buildstats event dataAlexandru DAMIAN2014-03-251-3/+3
| | | | | | | | | | | We add the PN to the buildstats event data in order to proper select database task when multiple similar tasks are executed for the same recipe file. (From OE-Core rev: 43d717df16312a8f0333aff6b8b037b4b9d51bf3) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/binconfig: fix indentation in python functionPaul Eggleton2014-03-251-22/+22
| | | | | | | | | | | | | | If we don't fix this, the recently added dependency from do_populate_sysroot on functions in SYSROOT_PREPROCESS_FUNCS in staging.bbclass triggers warnings that the get_binconfig_mangle function contains tabs for all recipes that inherit binconfig. Related to fix for [YOCTO #5852]. (From OE-Core rev: a30a204270ee5b91d9c0904d3c3dda34bdb9ce1c) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/staging: ensure do_populate_sysroot re-execs on changes to sysroot ↵Paul Eggleton2014-03-251-0/+2
| | | | | | | | | | | | | | | preprocessing funcs Without this dependency, changes to functions added to SYSROOT_PREPROCESS_FUNCS do not change do_populate_sysroot's signature and thus don't cause it to re-execute. Fixes [YOCTO #5852]. (From OE-Core rev: 9950a88906bd701d0892b3ed222717ff78a93921) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildstats: use TaskBase time for elapsed timeMarius Avram2014-03-251-8/+15
| | | | | | | | | | | To avoid any further inconsistencies between buildstats and buildinfohelper from toaster, buildstats will measure task duration using the time field from within the TaskBase events: TaskStarted and TaskSucceeded/TaskFailed. (From OE-Core rev: 406acd647a288694c2f776a9faa1f5607f3e8e7a) Signed-off-by: Marius Avram <marius.avram@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* staging: Save out provider information into the sysrootRichard Purdie2014-03-251-0/+10
| | | | | | | | | | | | | | This patch saves out provider information into the sysroot for all providers except those in MULTI_PROVIDER_WHITELIST. This means that we will start seeing warnings when two providers for the same thing are installed into the sysroot. In the future those warnings can be turned into errors. Partially addresses [YOCTO #4102] (From OE-Core rev: 9e696b9d32e33ba37dc09ff312328e540fc25de2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver.bbclass: emit patch series files for original srcRobert Yang2014-03-251-0/+13
| | | | | | | | | | | | | Emit patch series files for original src so that the user knows how to apply the patch orderly. [YOCTO #5113] (From OE-Core rev: 053631bc3cf7c7c2d090decaa3b5e5690963e64a) Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver.bbclass: make it can filter the licenseRobert Yang2014-03-253-57/+88
| | | | | | | | | | | | | | | | | | | * Filter the license (default: no), the recipe whose license in COPYLEFT_LICENSE_INCLUDE will be included, and in COPYLEFT_LICENSE_EXCLUDE will be excluded. * The user can set the recipe type that would be archived (native, target, and so on), deafult to all. The copyleft_filter.bbclass is come from copyleft_compliance.bbclass, which is used by both copyleft_compliance.bbclass and archiver.bbclass. [YOCTO #5740] (From OE-Core rev: 0e798d5cbcf585535e19633828dc540a282261fc) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/image: ignore modules.* changing during multilib image constructionPaul Eggleton2014-03-221-1/+1
| | | | | | | | | | | | | | | | | | Since we now run depmod when building images (as the postinst that does this is now on kernel-base instead of kernel-image) it is possible to have module file differences between the two halves of the multilib image, and the code that checks for such differences detects this and fails. Whitelist this file to avoid the failure. Specifically, modules.alias, modules.dep and modules.symbol can differ along with their .bin counterparts. Related to fix for [YOCTO #5392]. (From OE-Core rev: 0a315804bf991664c0948e3024b8e8b9e9085808) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/kernel: move module postinst commands to kernel-basePaul Eggleton2014-03-221-2/+5
| | | | | | | | | | | | | Since kernel-base is the package that contains the files that depmod needs to run, we should be running depmod from the kernel-base postinstall rather than kernel-image. Fixes [YOCTO #5392]. (From OE-Core rev: f7d2cb383281ec8dfa90950ba04d87dd29ffc676) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/image: disable pam nullok_secure with debug-tweaksPaul Eggleton2014-03-211-0/+4
| | | | | | | | | | | | | | | If you want passwordless logins to work with pam enabled, then you can't have "nullok_secure" enabled on pam_unix entries. Add some postprocessing to change these to "nullok" when debug-tweaks is in IMAGE_FEATURES, in order to make passwordless logins with PAM work again. Fixes [YOCTO #5973]. (From OE-Core rev: a973fe10305c7d080d5c017ddd9b2bd860221659) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver.bbclass: move a few code to copyleft_compliance.bbclassRobert Yang2014-03-212-21/+53
| | | | | | | | | | | | | | | | | | Move the code which is only used by copyleft_compliance.bbclass from archiver.bbclassc, and remove the "inherit archiver" from copyleft_compliance.bbclass. The archiver.bbclass is used for archiving various types of sources, but the copyleft_compliance.bbclass is used for analysing the license, they don't have much relationships. [YOCTO #4986] [YOCTO #5113] (From OE-Core rev: 578830fe2ff279ea620916ea711b80dc1b29a275) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_rpm.bbclass: archive the source to srpm packageRobert Yang2014-03-211-21/+12
| | | | | | | | | | | | | The archiver.bbclass will put the sources to ARCHIVER_OUTDIR according to configuration, then the rpmbuild -bs will create the srpm. [YOCTO #4986] [YOCTO #5113] (From OE-Core rev: f9ba047afb8780c8bd7cb1ba45470d30abf92e92) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* archiver.bbclass: refactor itRobert Yang2014-03-211-554/+275
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The archiver didn't work, and there were a few problems, for example: 1) There was no src_dir.org (or orig), but the diff command still use it 2) There were a few duplicated code 3) It didn't archive the source for the native or gcc 4) The work flow is not very well 5) The "subprocess.call('fakeroot cp xxxx'" should be removed 6) And others ... So that we have to refactor it, the benefits are: 1) Fix the problems and make it work well. 2) Reduce more than 300 lines 3) Make it easy to use. Hre are the explanation about the bbclass: This bbclass is used for creating archive for: 1) original (or unpacked) source: ARCHIVER_MODE[src] = "original" 2) patched source: ARCHIVER_MODE[src] = "patched" (default) 3) configured source: ARCHIVER_MODE[src] = "configured" 4) The patches between do_unpack and do_patch: ARCHIVER_MODE[diff] = "1" And you can set the one that you'd like to exclude from the diff: ARCHIVER_MODE[diff-exclude] ?= ".pc autom4te.cache patches" 5) The environment data, similar to 'bitbake -e recipe': ARCHIVER_MODE[dumpdata] = "1" 6) The recipe (.bb and .inc): ARCHIVER_MODE[recipe] = "1" All of the above can be packed into a .src.rpm package: (when PACKAGES != "") ARCHIVER_MODE[srpm] = "1" [YOCTO #4986] [YOCTO #5113] (From OE-Core rev: e5b20199ddddfa2146dc112c0a81f3fd292258e5) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/archive*.bbclass: remove archive-*-source.bbclassRobert Yang2014-03-214-196/+62
| | | | | | | | | | | | | | | | Nearly all of the codes in the following 3 files are the same, we can move the code to archiver.bbclass and remove them: archive-configured-source.bbclass archive-original-source.bbclass archive-patched-source.bbclass [YOCTO #5113] (From OE-Core rev: d2d3428a0fc746e56c0a0046bd12a393dedb4dda) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* kernel-arch.bbclass: add arm64 support to U-Boot architecture mapFathi Boudra2014-03-211-0/+1
| | | | | | | | | | | | to define UBOOT_ARCH, we map kernel architectures to U-Boot architectures. In the case of arm64 kernel, we should map to arm U-boot architecture. This patch add the exception rule to the map_uboot_arch function. (From OE-Core rev: 0b891265716c414ade29d587fc1a3c4ea7beadbe) Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>