aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes/base.bbclass
AgeCommit message (Collapse)Author
2016-12-16meta: remove True option to getVar callsJoshua Lock
getVar() now defaults to expanding by default, thus remove the True option from getVar() calls with a regex search and replace. Search made with the following regex: getVar ?\(( ?[^,()]*), True\) (From OE-Core rev: 7c552996597faaee2fbee185b250c0ee30ea3b5f) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-14classes/base: fix license file checksumming when source not under TMPDIRPaul Eggleton
With the changes to the code for extracting source for a recipe, we are properly executing the tasks for a recipe, which means their stamps (and therefore signatures) are important. When running devtool extract on the lsof recipe I noticed that do_fetch and do_unpack were executing a second time when we called for do_patch, and this turned out to be because LIC_FILES_CHKSUM in that recipe contains an entry which is an absolute path (has ${S} at the start). Normally this wouldn't be an issue since S is under TMPDIR and thus the existing code would ignore it, however devtool's extraction code extracts to a temporary directory which is not under TMPDIR; the result was the path to this file was not being ignored and the second time around when the license file had been extracted it was incorporated into the signature. We don't want this, so explicitly exclude S as well as B and WORKDIR for good measure. (From OE-Core rev: 1c99d74a862f25e23ea6465fab7ddc9ce74d6974) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-04base.bbclass: Use bb.fatal() instead of raising FuncFailedUlf Magnusson
This sets a good example and avoids unnecessarily contributing to perceived complexity and cargo culting. Motivating quote below: < kergoth> the *original* intent was for the function/task to error via whatever appropriate means, bb.fatal, whatever, and funcfailed was what you'd catch if you were calling exec_func/exec_task. that is, it's what those functions raise, not what metadata functions should be raising < kergoth> it didn't end up being used that way < kergoth> but there's really never a reason to raise it yourself FuncFailed.__init__ takes a 'name' argument rather than a 'msg' argument, which also shows that the original purpose got lost. (From OE-Core rev: 9635af9785509a39c1ac2509740d46276119a0ca) Signed-off-by: Ulf Magnusson <ulfalizer@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-28SDK: Allow changing SDKMACHINE without wiping TMP folderJuro Bystricky
When changing SDKMACHINE, we may encounter an error forcing us to wipe the TMP folder. Since only SDK_ARCH is captured in the PN of the crosssdk recipes, changes to SDK_OS result in conflicts. Eventually we hit the error: ERROR: ...: The recipe <...> is trying to install files into a shared area when those files already exist. The build has stopped as continuing in this scenario WILL break things This patchset addresses the problem by SDK_SYS as the recipe name suffix instead of SDK_ARCH. [YOCTO #9281] (From OE-Core rev: d2eccccb70e809d482c493922f23aef4409cfd82) Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-22base.bbclass: Drop unnecessary dirs settingRichard Purdie
${D} is listed in cleandirs so no need to list it in dirs as well. The default directory is ${B} so this is a cleanup which should have no changes to the execution. [YOCTO #10017] (From OE-Core rev: 7e0f95bf359bc3b5bb1578024a993e184de155cd) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-14meta: cleanup d.getVar(var, 0)Robert Yang
(From OE-Core rev: 33b0d940b09a5ce1462476614213a58d3d62e80d) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-03base, autotools: Append PACKAGECONFIG_CONFARGS to EXTRA_OECONF only in ↵Martin Jansa
autotools.bbclass * recipes which don't inherit autotools or cmake bbclass and want to use the configure options from PACKAGECONFIG need to handle PACKAGECONFIG_CONFARGS themselves. (From OE-Core rev: c98fb5f5129e71829ffab4449b3d28082bc95ab4) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-25license: simple verification of LICENSE_<pkg> valuesMarkus Lehtonen
LICENSE should be a superset of all LICENSE_<pkg> values. That is, LICENSE should contain all licenses and LICENSE_<pkg> can be used to "filter" this on a per-package basis. LICENSE_<pkg> shouldn't contain anything that isn't specified in LICENSE. This patch implements simple checking of LICENSE_<pkg> values. It does do not do advanced parsing/matching of license expressions, but, checks that all licenses mentioned in LICENSE_<pkg> are also specified in LICENSE. A warning is printed if problems are found. (From OE-Core rev: 0f4163a12ea431d0ba6265880ee1e557333d3211) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-08-04base.bbclass wipe ${S} before unpacking sourceMarkus Lehtonen
Make sure that we have a pristine source tree after do_unpack. [YOCTO #9064] (From OE-Core rev: eccae514b71394ffaed8fc45dea7942152a334a1) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-06-17base.bbclass: p4 fetcher supports srcrevAndrew Bradford
Enable the perforce fetcher to call bb.fetch2.get_srcrev() as it can use 'SRCREV = "${AUTOREV}"'. (From OE-Core rev: 9d6ac71e4d954d857ecb1708ab4fe4bc552244aa) Signed-off-by: Andrew Bradford <andrew.bradford@kodakalaris.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-06-02classes/lib: Complete transition to python3Richard Purdie
This patch contains all the other misc pieces of the transition to python3 which didn't make sense to be broken into individual patches. (From OE-Core rev: fcd6b38bab8517d83e1ed48eef1bca9a9a190f57) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-21meta: Update to modern exception syntaxRichard Purdie
Update older exception syntax to modern one required by python 3. Compatible with python 2.7. (From OE-Core rev: d13f0ac614f1d1e2ef2c8ddc71cbfcf76a8dc3f2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-05-17classes/base: get_lic_checksum_file_list imporve validaton of url'sAníbal Limón
When specify an URL different that supported file:// the function returns an empty path causing an exception without notice the user that the URL is Malformed. [YOCTO #9211] (From OE-Core rev: 6c28251d3d187b60ceb534055dbd8b4fffd06429) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-19base.bbclass: Introduce PACKAGECONFIG_CONFARGS variableMartin Jansa
* add separate variable for configuration options generated from PACKAGECONFIG setting, this helps other bbclasses and recipes to take advantage of PACKAGECONFIG mechanism, without including other options from EXTRA_OECONF * e.g. meta-qt5 recipes are abusing EXTRA_OECONF to get options from PACKAGECONFIG: EXTRA_QMAKEVARS_PRE += but with conf/distro/include/no-static-libs.inc it means getting --disable-static as invalid option inside EXTRA_QMAKEVARS_PRE as reported by Alexandre Belloni who tried to use poky with meta-qt5. * once we migrate all bbclasses and recipes to PACKAGECONFIG_CONFARGS we should also restrict EXTRA_OECONF append only to autotools.bbclass like I did for cmake.bbclass (From OE-Core rev: 0ea4a47bfc27d02594d489b27c029d3d3badf3d4) 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>
2016-04-03base: Fixup PACKAGECONFIG incorrect mappingsRichard Purdie
PACKAGECONFIG doesn't work in cross-canadian recipes at the moment as DEPENDS are prepended with mlprefix. A recipe is either nativesdk, native or target so adjust the if statements accordingly, use inherits_class for more accurate recipe classification and add cross-canadian support. (From OE-Core rev: 4a172868a9423afb8a602413ef4935423ce51a5d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-01base.bbclass: avoid duplicate call to d.getVar('LICENSE', True)Andre McCurdy
Reuse the 'license' variable, instead of calling d.getVar('LICENSE', True) again. (From OE-Core rev: 32a1df86877cd8e70baccd858847fa927508f159) Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-01base.bbclass: drop obsolete HOSTTOOLS_WHITELIST_GPL-3.0Andre McCurdy
base.bbclass sets 'check_license' to False (and therefore skips license checking completely) for native, nativesdk, etc recipes (ie anything which could potentially be classed as "host tools"), so supporting a dedicated whitelist of GPLv3 host tools is not necessary. (From OE-Core rev: 8fc8b60005e7641861324c8541fb45058e7aab8e) Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-28base: Add nodejs-native dependency for npm:// urlsRichard Purdie
With the addition of the npm fetcher, we add the native dependency handling too. (From OE-Core rev: 500c432419739e2be247d6feea3f4d85eb7ddfd0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-12base.bbclass: fix support for gitsm://Patrick Ohly
Before the "Improve handling of SRCPV" change, gitsm SRC_URI entries were merely missing a dependency on git for do_fetch. But after that change, the special handling for "needsrcrev" was not applied, leading to a fetcher error (older bitbake) or even a parse error (recent bitbake). (From OE-Core rev: 41d06f512504cb24bb727308d08490b8741f332d) Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-10base: Make do_cleansstate nostampRichard Purdie
We always want the cleansstate task to run so it should be 'nostamp' like the other clean tasks. (From OE-Core rev: 187190bfe3f589a7d1acaa22fab4607f976635ce) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-10bitbake.conf/base: Improve handling of SRCPVRichard Purdie
If SRCPV is set, it can be expanded when SRC_URI doesn't support it leading to errors. Avoid doing this by setting it only when it makes sense. This patch depends on the bitbake python expansion patch series. [YCOTO #7772] (From OE-Core rev: ce64da2b80f99c82d96513d8dfb5e572757b0cda) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-04meta: add ASSUME_PROVIDED dependency on wget-native for http fetchesRoss Burton
For clarity and consistency, add a dependency on wget-native for any URIs that will be fetched using the wget fetcher, and add wget-native to ASSUME_PROVIDED. (From OE-Core rev: 91583704383aef3d4742630380fd3f1d38c4b00a) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-31Make sure that the directory for CONFIGURESTAMPFILE existsMarkus Lehtonen
(From OE-Core rev: bb82dc384bda48d746634ba1f4e315737993c794) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-31base: Move COMPATIBLE_MACHINE out the scope of SOURCE_MIRROR_FETCHRichard Purdie
Recipes setting COMPATIBLE_MACHINE are likely to have SRC_URI entries which can heavily depend on the configured machine. Skipping them for SOURCE_MIRROR_FETCH is therefore not advised and leads to build errors whilst not particularly improving source mirrors. [YOCTO #8802] (From OE-Core rev: b53038303374debf91ed73039cf79912f266acfe) 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>
2015-12-28classes/base: don't print header if BUILDCFG_HEADER not setPaul Eggleton
If we don't want a header printed at the start of task execution (which we'd prefer not to within the extensible SDK) we can accomplish that by clearing BUILDCFG_VARS and BUILDCFG_HEADER, but that was still printing a load of blank lines. To keep things simple, check if BUILDCFG_HEADER is set to something before printing a header. (From OE-Core rev: d896d77c1d0fc56ff7019bfee3cf06fbc3ede8f3) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-09base: check for existing prefix when expanding names in PACKAGECONFIGRoss Burton
When the DEPENDS are added as part of the PACKAGECONFIG logic the list of packages are expanded so that any required nativesdk-/-native/multilib prefixes and suffixes are added. However the special handling of virtual/foo names doesn't check that the prefix already exists, which breaks under nativesdk as in that situation there's an explicit nativesdk- prefix *and* MLPREFIX is set to nativesdk-. This results in the same prefix being applied twice, and virtual packages such as virtual/libx11 ending up as virtual/nativesdk-nativesdk-libx11. (From OE-Core rev: 55ca1fb8f0e81ff739b3c46897e43356d1f760c3) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-08base: Improve handling of switching virtual/x providersRichard Purdie
If you build virtual/kernel, then change PREFERRED_PROVIDER_virtual/kernel from say "linux-yocto" to "linux-yocto-dev", you see errors from the sysroot about overlapping files. The automatic uninstall logic doesn't trigger since the other recipes is still technically parsed/buildable. What we can do is look at the value of PREFERRED_PROVIDER_virtual/X and raise SkipRecipe (skip parsing) if it provides this thing and its not selected. We skip cases no preferred provider is set, or the value is in MULTI_PROVIDER_WHITELIST.We also inform the user if they try to build something which conflicts with the configuration: $ bitbake linux-yocto-tiny ERROR: Nothing PROVIDES 'linux-yocto-tiny' ERROR: linux-yocto-tiny was skipped: PREFERRED_PROVIDER_virtual/kernel set to linux-yocto, not linux-yocto-tiny [YOCTO #4102] (From OE-Core rev: 9a3b992b7339f7aa892f1dff7d159747630b045d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01base: add automatic dependency on lzip-native for .lz SRC_URIRoss Burton
Now that the SRC_URI is parsed this can be done without false-positives. (From OE-Core rev: 6fac3caf3d70823c830178f2299ceee275a1edd1) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-12-01base: decode SRC_URI before adding implicit fetch dependenciesRoss Burton
To avoid false positives such as a SRC_URI for http://foo.xz/foo.zip gaining a dependnecy on xz-native decode the URI so that precise tests can be done. (From OE-Core rev: a98a14844bc0b2ef8fc0426768fde40516279bf8) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-11-24classes: Ensure pass setVar/setVarFlag strings, not integersRichard Purdie
This doesn't cause any issues right now but it make sense to standardise on consistently using strings in the data store. (From OE-Core rev: 99203fbe5ad470ef65cff93cec9d7f332883b5ee) 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>
2015-10-27base.bbclass: considering multilib when setting LICENSE_EXCLUSIONJian Liu
The PACKAGES is not mapped with MLPREFIX when setting LICENSE_EXCLUSION in base.bbclass. For example, For libgcc-dev, LICENSE_EXCLUSION-libgcc-dev=1 but for lib32-libgcc-dev, LICENSE_EXCLUSION-libgcc-dev=1 Obviously it is wrong for lib32-libgcc-dev. Add MLPREFIX before the package name during setting LICENSE_EXCLUSION (From OE-Core rev: 6597130256a1609c3e05ec5891aceaf549c37985) Signed-off-by: Jian Liu <jian.liu@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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. (From OE-Core rev: ead4a552464309e6ef3381590994b6cea225ca20) Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-11Revert "base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()"Ross Burton
This deletes and therefore breaks PACKAGECONFIG[doc], so revert. This reverts commit b741780d43ad412f6a1ae91d8489ec3522447ea2. (From OE-Core rev: 45cff248f5f9f4fb2498c34963e6652cc1166737) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()Robert Yang
The FOO[doc] is set in meta/conf/documentation.conf, we need remove it from d.getVarFlags()'s return dict when it causes many loops. (From OE-Core rev: 595a7af8d0a52b24e2bdb5c373c64d27b54bb25b) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01base.bbclass: move invalid PACKAGECONFIG checking to insane.bbclassRobert Yang
There was a problem when check invalid PACKAGECONFIG in the anonymous function (when parsing), for example, there are two versions of a recipe: foo_1.0.bb foo_2.0.bb While foo_2.0.bb has a "PACKAGECONFIG[item] = 'x,y,z'", but foo_1.0.bb doesn't, if we set PACKAGECONFIG_pn-foo = "item" in a conf file, we would get the warning about invalid PACKAGECONFIG for foo_1.0.bb. Delay the checking to build time will fix the problem. [YOCTO #8065] (From OE-Core rev: 0a64dfcdb9f5a37771f881895be230392c4d0aff) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01base.bbclass: Note when including pn with INCOMPATIBLE_LICENSESBeth Flanagan
We need to be able to tell people if we WHITELIST a recipe that contains an incompatible licese. Example: If we set WHITELIST_GPL-3.0 ?= "foo", foo will end up on an image even if GPL-3.0 is incompatible. This is the correct behaviour but there is nothing telling people that it is even happening. (From OE-Core rev: c9da529943b2f563b7b0aeb43576c13dd3b6f932) Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-31pixbufcache: Use sceneQueueComplete event to simplify usageRichard Purdie
Ensuring the native pixbuf cache is correct after new loaders have been installed is tricky. This needs to be done without races and work regardless of whether the build is from sstate or freshly built for one or more modules. This adds a hook into base.bbclass which is then triggered by the code from pixbufcache. This patch is an improved version which means base.bbclass has no pixbuf knowledge and the mechanism can be reused in other cases. (From OE-Core rev: b411085fefc8582d24c172db5f6610705eb44c2f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16classes/base: fix die() to print the full logPaul Eggleton
The recent change to connect through the shell logging functions caused a regression - bb.error() and bb.fatal() cause a flag to be set internally such that BitBake's UI will not print the full task log on failure; unfortunately we have in a lot of places called die() or bbfatal() within shell functions with a very terse message as a means of exiting out, where we still want to see the full log (and we were previously). We do still want to have fatal errors with proper messages that don't result in the full log being printed, however we can't ignore the typical usage of die(). Having added a mechanism to BitBake to log an error and reset the flag, create a bbfatal_log() function that uses this and call it from die() to restore the previous behaviour. (From OE-Core rev: beec1cf3d22d7dbe85f332a055c72649f4bd3e92) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16do_unpack: move qa check of unpack into insane.bbclassBian Naimeng
Some source archive are not standard format. For example, sometimes, we still need decompress file once again after base_do_unpack, in such case, the following warning will be caught. WARNING: xxx : the directory ${WORKDIR}/xxxx (xxxxxx) pointed to by the S variable doesn't exist \ - please set S within the recipe to point to where the source has been unpacked to So, we should do this QA check after all of unpack jobs been completed. (From OE-Core rev: 81216da9fa90dc8a67a0f367742b1e73afec0aa1) Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-12oeqa/sstatetests: Add NATIVELSB sstate signature equivalence testRichard Purdie
The sstate checksums should be independent of whichever NATIVELSBSTRING is detected. Add an automated QA test which tests this using bitbake -S. To make this possible, we need to be able to override the value of NATIVELSBSTRING so make a small change to allow this. (From OE-Core rev: 2da156d491caf25dfa3efd567d6dbb451dd7e9dc) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23meta: Add explict getVar param for (non) expansionRichard Purdie
Rather than just use d.getVar(X), use the more explict d.getVar(X, False) since at some point in the future, having the default of expansion would be nice. This is the first step towards that. This patch was mostly made using the command: sed -e 's:\(getVar([^,()]*\)\s*):\1, False):g' -i `grep -ril getVar *` (From OE-Core rev: ab7c1d239b122c8e549e8112c88fd46c9e2b061b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23base.class: warn for invalid PACKAGECONFIGRobert Yang
There may be typos or out of date values in PACKAGECONFIG, check and warn them. (From OE-Core rev: be085657bbab34bb8a822682897f96871bb2d8f4) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03base: Fix license checksum rebuild problemsRichard Purdie
"MACHINE=qemux86-64 bitbake init-ifupdown; MACHINE=genericx86-64 bitbake init-ifupdown" shows a rebuild when it would be expected. The reason is a LIC_FILES_CHKSUM which contains file://${WORKDIR}, an absolute path which doesn't exist in the first build but does in the second, causing a signature change and a rebuild. Fix the problem by ignoring any file:// url which resolves since TMPDIR for license file dependency purposes. (From OE-Core rev: f27ddf0de23871fc72cfc31f514f0e144aaa2082) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-14base: Avoid find raceRichard Purdie
In a similar way to http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=aa1438b56f30515f9c31b306decef7f562dda81f and http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=527b28c10955daf0387597020d69593ce24bcaa4 there is a find race in base.bbclass. For recipes with PACKAGES_remove = "${PN}", the find which removes .la files can race against deletion of other directories in WORKDIR e.g.: find: '/home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/sstate-build-populate_lic': No such file or directory | WARNING: /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/temp/run.do_configure.6558:1 exit 1 from | find /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7 -name \*.la -delete Fix the race in the same way. [YOCTO #7522] (From OE-Core rev: 90861b8908d254154f4d1d613471070df8013da8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-05bitbake.conf/base.bbclass: Drop PRINC supportRichard Purdie
PRINC is no longer needed since we have the PR service instead which people should be using. Drop the PRINC code. This has been deprecated with a warning and then an error for quite some time so we can remove it now. (From OE-Core rev: a4d530bcf55f03258078c10a123e2717444e1060) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-30gcc-shared-source: Add PV to PNRichard Purdie
This means you can have one gcc version for some gcc recipes (e.g. crosssdk/nativesdk) and another gcc version for target code. Also remove the preferred version entry from the default toolchains list since the version issue is now handled automatically. We also need to specifically handle gcc-source in the license handling code since expanding ${PV} in the base class isn't possible. Since gcc-source doesn't generate any packages directly this shouldn't be an issue and whitelisting in this way is easiest (and matches the rest of the toolchain handling). (From OE-Core rev: 67db7182faf6742b0d971d61d8c5ba34f69d2e12) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-19classes/base: clarify S not set correctly warningPaul Eggleton
Hopefully make it a bit clearer to the user which recipe needs fixing and what needs to be done to fix it. (From OE-Core rev: 50e75d0cd7190a009776d72a4ae5c3e835895e6b) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20base.bbclass: clean up warning message for 'S'Jonathan Liu
(From OE-Core rev: ddac4f3c1350c3a4e0ea4ae732de0689325d883f) Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10base.bbclass: Add LIC_FILES_CHKSUM files to checksum files.Randy Witt
Previously, files with absolute paths in LIC_FILES_CHKSUM such as "file://${COMMON_LICENSE_DIR}/foo" would not result in a qa failure when the license file changed. To fix this problem, add any files with absolute paths from LIC_FILES_CHKSUM to the file-checksums varflag, so that changes in the license file are detected and cause the qa task for licenses to run. [Yocto #6450] (From OE-Core rev: 5df681259ae078c9d04d426fb5971eaa79d35ba5) Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-23base.bbclass: detect when S has been set incorrectlyPetter Mabäcker
Currently base.bbclass is creating S if it's not created by unpacking an archive or fetching a repository. If we avoid creating S we can detect when S hasn't been set correctly, since it will not exist. Then we can tell the user that they should set S to a proper value, instead of just failing with odd errors in later tasks. Besides removing the auto-creation of S this change will introduce a warning if S is set incorrectly. The reason for not display an error and return is due to all external layers that might have recipes that will fail otherwise and that might be a bit to hard to start with. So use a warning until people have had a chance to cleanup affected recipes. [YOCTO #5627] (From OE-Core rev: 0d84b9a8ba408d168cb8a92e895d2f7338d6da1b) Signed-off-by: Petter Mabäcker <petter@technux.se> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>