summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/meta/meta-environment.bb
AgeCommit message (Collapse)Author
2021-09-23siteinfo/autotools: Ensure task checksums reflect site filesRichard Purdie
Currently, if you change the site files, nothing rebuilds since they are not accounted for in task checksums. They could/should be through the file-checksums task flag. We need to cache all the files looked for, whether the exist or not so that if they do exist and didn't, the checksum also changes. This gets complicated by the need to clean out hardcoded build paths from the variable and that other layers can have site files. This patch adds this functionality. A new variable, SITEINFO_PATHVARS is added which controls which substitutions to make on the file-checksum values to remove the hardcoded paths. Layers adding site files will need to set this to a variable that has the layer path in it and is excluded from task hashes (COREBASE is the one the core layer uses). This patch will cause yocto-check-layer to fail for some layers where site files are added yet the layer isn't a machine specific layer. This is arguable correct since these additional site files apply to all recipes and things from a layer like core could be changed by such changes so it is right they should rebuild. There is a determinism issue potentially there if not. meta-openembedded does have some such references but looking at them they should move to core or likely just be removed as most look obsolete anyway. [YOCTO #13729] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2021-07-30Convert to new override syntaxRichard Purdie
This is the result of automated script conversion: scripts/contrib/convert-overrides.py <oe-core directory> converting the metadata to use ":" as the override character instead of "_". Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-06-07toolchain-scripts: pass env to post-relocateMartin Kelly
It's useful for the post-relocate scripts to be able to see the SDK environment, for example to see the values of CC, CXX etc. in order to dynamically generate toolchain files. To enable this, source the SDK environment script prior to calling the relocate scripts. Signed-off-by: Martin Kelly <mkelly@xevo.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-02-15toolchain-shar-extract: Add post-relocate scriptsJoshua Watt
Recipes can now install post-relocation scripts which will be run when the SDK is installed. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-02-15classes: Drop now unneeded update_data callsRichard Purdie
Now that the datastore works dynamically we don't need the update_data calls so we can just remove them. They're not actually done anything at all for a while. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-02-01meta-environment: Clean up the task structure to reduce manifest warningsRichard Purdie
This puts the dependencies on the correct task and removes pointless noexec tasks allowing for a slightly cleaner task structure. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-01-28image/kernelsrc/packagegroups/recipes: Remove uneeded noexec tasksRichard Purdie
We used to have issues removing tasks like do_fetch due to implications for targets like world and universe. These have now been resolved. Removing uneeded tasks has advantages compared to noexec since it means that accidentally left in dependencies are no longer needed/processed (e.g. do_patch depends on quilt-native). This cleans up a number of cases which local analysis highlighted as being unneeded leading to slightly cleaner task graphs. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-01-20meta-environment: Ensure all multilib dependencies are accounted forRichard Purdie
Currently the recipe depends on the mulitlib libcs all being built but the dependencies don't account for this. Fix the DEPENDS so that the requires pieces are all built first rather than relying on luck. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
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\) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-10-28Remove LIC_FILES_CHKSUM from recipes without SRC_URIOlaf Mandel
LICENSE and LIC_FILES_CHKSUM apply to the sources specified by SRC_URI, not to the recipe itself. As such a license declaration for a source-less recipe makes little sense. The LICENSE declaration is mandatory, but LIC_FILES_CHKSUM can be removed in such cases. Remove the LIC_FILES_CHKSUM declarations from all recipes that do not need it. CC: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Olaf Mandel <o.mandel@menlosystems.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-26meta-environment: ensure corret TOOLCHAIN_CONFIGSITE_NOCACHE valueChen Qi
Expand TOOLCHAIN_CONFIGSITE_NOCACHE value immediately before inheriting cross-canadian to avoid HOST_ARCH being changed from TARGET_ARCH to SDK_ARCH, thus ensuring its correct value. [YOCTO #10255] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23meta-environment: Ensure we append to the default ↵Richard Purdie
TOOLCHAIN_NEED_CONFIGSITE_CACHE The toolchain-scripts class was changed to assign to the variable using ??= which allows users to override it. We therefore need to _append instead of += to have the change take effect as intended. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-01-16cross-canadian/meta-environment: Allow modification of TARGET_OS to be optionalRichard Purdie
There are some cases we want the manipulation cross-canadian performance on TARGET_OS, there are also cases like meta-environment where we do not want this manipulation. We did try and use immediate expansion to avoid this problem and it works in the non multilib case. If we have a multilib that used an extension, like for example: require conf/multilib.conf MULTILIBS = "multilib:lib32 multilib:lib64" DEFAULTTUNE = "mips32r2" DEFAULTTUNE_virtclass-multilib-lib32 = "mips64-n32" DEFAULTTUNE_virtclass-multilib-lib64 = "mips64" then the n32 extension case will be misconfigured. It turns out saving an unexpanded variable is hard. The best I could come up with was: SAVEDTOS := "${@d.getVar('TARGET_OS', False).replace("{", "*")}" and then localdata.setVar("TARGET_OS", d.getVar("SAVEDOS", False).replace('*','{')) which is rather evil, I'd challenge someone to come up with a nicer way of making it work though! Rather than the above madness, we modify cross-canadian to make the problamtic code conditional. This fixes the original issue (where a linux-gnuspe target was seeing 'linux') of http://cgit.openembedded.org/openembedded-core/commit/?id=0038634ee6e2b6035c023a2702547f20f67c103a but also fixes the multilib one. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-21meta-environment: don't mark tasks as nostampPaul Eggleton
With siggen being changed to alter the signature of nostamp tasks on the fly, having these tasks as nostamp results in the SDK being rebuilt every time, which is not desirable. In any case this is just legacy from the days before we used signatures to take care of ensuring these tasks get re-run when they need to be. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-11-12meta-environment: Fix config-site with a multilib configMark Hatle
[YOCTO #6951] The TOOLCHAIN_CONFIGSITE_SYSROOTCACHE value was defaulting to the nativesdk path and not the associated target path. Set the value in toolchain-scripts to the target path. Be sure to set the MLPREFIX within the meta-environment script as multilibs are processed. Update the config_site file name to use -BPN- not PN. Otherwise the environment processing can't find the correct filename. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-10-06meta-environment: Deal with machines which change TARGET_OSRichard Purdie
Some machines change TARGET_OS, cross-canadian resets this which is not what we want in this specific case. This fixes spe toolchains for example. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-10-01meta-environment: Set libdir correctly to fix PKGCONFIG entriesRichard Purdie
Currently libdir is coming from cross-canadian which is incorrect. We need to reset this to target_libdir so that the toolchains contain the correct value. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-09-29meta-environment: Two critical fixes to unbreak toolchainsRichard Purdie
Firstly, when multilib builds were being used, the same output files were used in each case, being overwritten each time due to the fact that REAL_MULTIMACH_TARGET_SYS has been expanded. Instead of immediate expansion, just use assignment. This overrides the problematic define in toolchain-scripts.bbclass but allows the multilib code to work. Secondly, the target sysroot was being defined incorrectly which this patch fixes. This was breaking the toolchains. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-09-22populate_sdk_base/meta-environment: Remove overlap from the twoRichard Purdie
Currently we have the horrible situation where meta-environment packages the toolchain environment files and they get included in the SDK but are broken, then, the SDK code overwrites them with good versions. This is suboptimal. This change fixes the code in meta-environment to create working files and adds in the multilib support from populate_sdk_base, then we remove the code in that base bbclass and rely on the packages being installed if/as/when needed. This removes the duplication and the broken versions of the files, hopefully making all well. [YOCTO #6608] [YOCTO #6613] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-09-22meta-environment: Fix TARGET_OS problem for ppcRichard Purdie
Due to the use of the cross-canadian inherit, TARGET_OS can be reset to values other than the correct one, leading to generation of the wrong files. By expanding REAL_MULTIMACH_TARGET_SYS before the inherit, the correct OS value is preserved and we generate the right environment files. [YOCTO #6608] [YOCTO #6613] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02Update after toplevel LICENSE file checksum changeRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02Replace one-line DESCRIPTION with SUMMARYPaul Eggleton
A lot of our recipes had short one-line DESCRIPTION values and no SUMMARY value set. In this case it's much better to just set SUMMARY since DESCRIPTION is defaulted from SUMMARY anyway and then the SUMMARY is at least useful. I also took the opportunity to fix up a lot of the new SUMMARY values, making them concisely explain the function of the recipe / package where possible. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2013-11-06toolchain-scripts/meta-environment: Further cleanup code duplicationRichard Purdie
There was still duplicated code in toolchain-scripts, this further cleans up the functions to remove it. The now unused includedir parameter is also dropped. The final scripts do end up reordered slightly and the sysroot is parametrised for the IDE scripts which is an improvement but should have no functional difference. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-06toolchain-scripts/meta-environment: Merge toolchain_create_sdk_env_script ↵Richard Purdie
and the for_installer variant Having two scripts which do basically the same thing is a nightmare. This merges them together. It also makes the sysroot location a variable in its own right which may be more useful for end users wanting to change sysroot. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-10meta-environment: change package name to include MACHINELaurentiu Palcu
Currently, the package name contains just the TRANSLATED_TARGET_ARCH. When compiling the toolchain for two machines, belonging to the same architecture (for example: qemuarm and beagleboard), this package gets overwritten and adt-installer repo will contain just one meta-environment package... This leads to situations like installing the toolchain for qemuarm and end up with meta-environment package with beagleboard cpu options. [YOCTO #4783] Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-23meta-toolchain: Popluated the libc siteconfig files.Lianhao Lu
Fixed bug [YOCTO #2159] by correctly populate the libc's siteconfig files. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-30meta-environment: Fix a typo in do_populate_sysroot[noexec]Darren Hart
I noticed with while grepping for usage of noexec. Replace do_populage_sysroot with do_populate_sysroot. Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-24meta-toolchain/environment: Collected site config files in runtime.Lianhao Lu
[YOCTO #892] Use the new cached site config files generation mechanism in toolchain-script.bbclass. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-08-04environment files: Added and unified version related variables.Lianhao Lu
[YOCTO #1306] Fixing. Added and unified version related variables in all environment files generated by package meta-toolchain, meta-ide-support, meta-environment-xxx. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-08-01meta-environment: set correct *MULTIMACH_TARGET_SYS.Lianhao Lu
Fixed [BUGID #1299]. OLD_MULTIMACH_TARGET_SYS is no longer available. Use new recipe-scope variable REAL_MULTIMACH_TARGET_SYS instead. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-04-20Replace POKYBASE with COREBASERichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-03-18toolchain-scripts.bbclass: Added --sysroot to CPPFLAGS.Lianhao Lu
[YOCTO #908] Added CPPFLAGS into the environment file and added --sysroot to it. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-03-05toolchain-script.bbclass: Added --sysroot to LDFLAGS.Lianhao Lu
[YOCTO #808] Added --sysroot to LDFALGS in environment files. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
2011-02-17toolchain-script/populate_sdk/meta-toolchain: moving common code.Lianhao Lu
moving common code between populate_sdk.bbclass and meta-environment.bb into toolchain-script.bbclass. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2011-01-20meta-environment: Remove the recursive dependency on do_compileDongxiao Xu
It is not needed to have dependency on each do_compile of its recursive depend tasks. This problem is triggered by building meta-toolchain-sdk from prebuilt result. Some packages like quilt-native, which is already been populated and packaged by do_populate_sysroot_setscene and do_package_write_xxx_setscene, however this recursive dependency of do_compile triggers the tasks flow of "do_setscene --> do_fetch --> do_unpack --> ..." again and do_setscene removes all the quilt-native files, making the other recipes failed while do_patch. Thanks for Kevin's help in root causing this issue. CC: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
2011-01-18meta-environment.bb: fix comments typosOtavio Salvador
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-01-12meta-environment: Remove c++ include dir from CXXFLAGS.Lianhao Lu
[BUGID #651]. c++ include dir is no longer needed in the environment files due to commit f13cb20. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
2010-12-21meta-environment: Added package of meta-environment-${TARGET_ARCH} forLianhao Lu
environment files. [BUGID #565] Fixing bug #565, added package of meta-environment-${TARGET_ARCH} for environment files used by cross-canadian toolchain. Also corrected the situation of empty config site file for target. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>