summaryrefslogtreecommitdiffstats
path: root/meta/classes/populate_sdk_base.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* meta: remove remaining True option to getVar callsMing Liu2017-01-311-1/+1
| | | | | | | | | | | | | | | | This is a complementary fix to commit 7c552996: [ meta: remove True option to getVar calls ] it intended to remove all True option to getVar calls, but there are still some remaining. Search made with the following regex: getVar ?\((.*), True\) (From OE-Core rev: 87d03ffe03d6f01e360bfd51714be96e62506e0a) Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toolchain-shar-extract: compare SDK and host gcc versionsEd Bartosh2017-01-311-0/+1
| | | | | | | | | | | | | | | | | | | | If ext sdk is built by gcc version higher than host gcc version and host gcc version is 4.8 or 4.9 the installation is known to fail due to the way uninative sstate package is built. It's a known issue and we don't have a way to fix it for above mentioned combinations of build and host gcc versions. Detected non-installable combinations of gcc versions and print an installation error. [YOCTO #10881] (From OE-Core rev: bfb9ea2604557804bd8c16adb57ccdd868a4020f) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image/packagegroup/populate_sdk: Drop do_populate_sysroot task properlyRichard Purdie2017-01-261-1/+1
| | | | | | | | | | | | | Setting do_populate_sysroot as noexec means the code keeps thinking it can find a manifest file for it. It also complicates sstate installtion since the code would believe there is an sstate object there it should look for. Instead, delete the task. This causes sdk failures as the dependencies are wrong so fix those as well. (From OE-Core rev: bd7d0314038a4c1a8e8c9ebdb7194f8e17db3fef) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_base: Add write_sdk_test_data to postprocessAníbal Limón2017-01-231-1/+8
| | | | | | | | | | | This function will generates testdata.json per SDK type. [YOCTO #10231] (From OE-Core rev: bff1b66c6b88fd2d99d14cecba27ee2f7462711f) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk: don't force target debug packages into SDKRoss Burton2017-01-051-4/+1
| | | | | | | | | | | | | | TOOLCHAIN_TARGET_TASK doesn't need to explicitly list sdk-target-dbg because if SDKIMAGE_FEATURES contains dbg-pkgs (as it does by default) then they'll all be installed anyway. This means that if the user removes dbg-pkgs from SDKIMAGE_FEATURES then the SDK correctly doesn't have debug packages in. [ YOCTO #9078 ] (From OE-Core rev: 4c711830ae26008f73bbf557964bdb86b8c922da) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: remove True option to getVar callsJoshua Lock2016-12-161-18/+18
| | | | | | | | | | | | | 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>
* populate_sdk_base.bbclass: add documentation packages to SDKs if ↵Alexander Kanavin2016-11-061-1/+1
| | | | | | | | | | api-documentation is in DISTRO_FEATURES (From OE-Core rev: d2b7b3fca328449cd87997be7f897b59433a153d) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/nativesdk: set SDK_OLDEST_KERNEL appropriatelyPaul Eggleton2016-11-061-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | SDK_OLDEST_KERNEL currently only controls the check on SDK installation, however as with OLDEST_KERNEL it should be controlling the OLDEST_KERNEL value for building glibc used in the SDK. Thus, set it in nativesdk.bbclass. This means we need to move the default to bitbake.conf so that it can be seen in both places. Also set a more reasonable default for SDK_OLDEST_KERNEL for x86/x86-64 as glibc 2.24 still supports back to 2.6.32 there and there are still people wanting to build SDKs that will install on older distros (e.g. CentOS 6). However it's not possible to set this with overrides since there aren't any for the SDK_ARCH, however we can instead set the variable from conf files in conf/machine-sdk especially as there is now a soft default for SDKMACHINE. Fixes [YOCTO #10561]. (From OE-Core rev: 42d5781e31c5bf76b5b7e27abed4f6f3fd65bf40) 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>
* classes/populate_sdk_base: fix usage of & character in SDK_TITLEPaul Eggleton2016-11-061-1/+1
| | | | | | | | | | | | | If you used an & character in SDK_TITLE (possibly indirectly from DISTRO_NAME) then sed interpreted this as a directive to paste in the replaced string (@SDK_TITLE@ in this case). Escape any & characters in SDK_TITLE to avoid that. (From OE-Core rev: acb85689c13cfdac21435509001048af5c3a7e99) 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>
* populate_sdk_base.bbclass: Make do_populate_sdk depend on ↵Peter Kjellerstedt2016-10-061-1/+1
| | | | | | | | | PACKAGE_EXCLUDE_COMPLEMENTARY (From OE-Core rev: 06c732bb8e2896d789716e7f0635aac9ff3a2d42) Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base.bbclass: fix broken variablesIoan-Adrian Ratiu2016-09-281-1/+2
| | | | | | | | | | | | | | This function never worked because the SDK_OUTPUT and SDKPATH vars are written bash-style in a python function. The only reason it never failed a build is because the function bails out the start because of the flag CHECK_SDK_SYSROOTS. And I guess nobody tested with CHECK_SDK_SYSROOTS enabled until now. (From OE-Core rev: 9f60dfdaaa74b90ebcfcdd9f3817c62a56243e92) Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: fix support for changing SDKMACHINE settingsJoshua Lock2016-09-211-2/+2
| | | | | | | | | | | | | | | | | Include SDKMACHINE in the tasks stamp information and the name of the sstate-inputdirs so that changing SDKMACHINE doesn't result in valid output of the task being deleted when SDKMACHINE is changed. Without this patch changing SDKMACHINE and building an SDK resulted in toolchain installers for other SDKMACHINE's being deleted from the deploy directoy. [YOCTO #10275] (From OE-Core rev: d7a06b53af0066bd12f5f42e10e82b307fd069ce) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Put populate_sdk under sstate controlEd Bartosh2016-09-041-2/+11
| | | | | | | | | | | | | | | | | | | | | | | Adding populate_sdk task to SSTATE_TASKS should make sstate machinery to generate manifest for deployed sdk artifacts and do final deployment to SDK_DEPLOY. Set stamp-extra-info flag for do_populate_sdk task. This flag is used in the name of sstate manifest. Setting it to predetermined value for populate_sdk task should help to get correct manifest filenames when processing runQueueTask events. The do_populate_sdk function is also executed by do_populate_sdk_ext so in order to avoid conflicts with the sstate postfuncs, split the main code into a separate function. We also need to set SDKDEPLOYDIR as do_populate_sdk_ext expects it in order not to break ESDK generation. (From OE-Core rev: 8361376b8ef0147276c9ee31349e904d86900593) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Deploy images to SDKDEPLOYDIRRichard Purdie2016-09-041-10/+10
| | | | | | | | | | Changed deployment directory from DEPLOY_DIR_IMAGE to SDKDEPLOYDIR to make sstate machinery to do final deployment and generate manifest. (From OE-Core rev: 1c8c8d8a0e2c73b3bb8a9a222bf5e8aa9927e526) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image/populate_sdk_base: Add *DEPLOYDIR variablesEd Bartosh2016-09-041-0/+2
| | | | | | | | | | | | | This is a preparation for changing deployment directory for image and populate_sdk targets. Introduced new variables, IMGDEPLOYDIR and SDKDEPLOYDIR. Set it to current image/sdk deployment locations. (From OE-Core rev: 8969b885044eb46dba3dbf62a0243aef673443d3) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* conf: bump minimum kernel to 3.2.0Khem Raj2016-05-131-1/+1
| | | | | | | | | | | | glibc 2.24 have raised the bar for minimum supported kernel for more details see http://repo.or.cz/glibc.git/commit/5b4ecd3f95695ef593e4474b4ab5a117291ba5fc (From OE-Core rev: 2722a7acb7f7d812f01fa93b764c9bb1ee725436) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: handle empty SDK_PACKAGING_FUNCChristopher Larson2016-03-021-1/+2
| | | | | | | | | | | | Currently, the pre/post process command variables are parsed as shell, even though they're not shell anymore. As a result, an empty SDK_PACKAGING_FUNC results in a parsing error. Rather than manually adding their vardeps, only append its ; when the var is set. (From OE-Core rev: f836f4bfd83862a1a0da7d4cc20ae9eaf62118da) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* image/populate_sdk: seprate variables to fix dependencyChen Qi2016-02-181-0/+13
| | | | | | | | | | | | | | | | Previously, do_rootfs depends on variables like SDK_OS, SDK_OUTPUT, etc. And changing variables like POPULATE_SDK_POST_HOST_COMMAND doesn't cause do_populate_sdk to rerun. This patch separates variables so that do_rootfs and do_populate_sdk could correctly depend on their related variables. [YOCTO #8670] (From OE-Core rev: 590cf4be70f1355622d3a94d76b4cc6d525d4a34) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk: Use pixz instead of xzRichard Purdie2016-01-241-2/+2
| | | | | | | | | xz is slow at compressing the SDKs, we can speed it up by using the parallel compressor, pixz. (From OE-Core rev: f4ec14b986fee791da33b8900c28c956f17b28b0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk*: add dependencies on script filesPaul Eggleton2016-01-241-0/+3
| | | | | | | | | | | If the script files we use to construct the SDK installer change then that really ought to trigger re-execution of the do_populate_sdk(_ext) task, so add file-checksums varflags to ensure that happens. (From OE-Core rev: 59fc4bdefb3853d6893b9e3792018d54bb6bf99f) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/oe/rootfs: Use list_pkgs() instead of list()Mariano Lopez2016-01-201-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | This patch changes the use list_pkgs() instead of list() from class RpmPkgsList. The change is in two functions, image_list_installed_packages from rootfs.py and sdk_list_installed_packages from sdk.py. With this change the functions calling the functions listed above, must format the output as they required. The formatting can be done using format_pkg_list() from oe.utils. The classes calling the afected functions are changed too with this patch, to keep the same functionality using the new data structure. [YOCTO #7427] (From OE-Core rev: 983ea373362514e5888bd1d7d9c4f136c94b00f2) 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>
* populate_sdk: Switch from bzip2 to xzRichard Purdie2016-01-111-4/+4
| | | | | | | | | | | | | | | xz gives *much* faster decompression times for the SDK which in itself is a good reason to use it. It also gives better compression. One downside is its slower but we care about the end user case first, build performance secondary. It also assumes the SDK user has a tar capable of understanding a xz compressed file but that should be common enough now. (From OE-Core rev: 193086137b899a0a4e774ffc337ed0da9947fd4f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Add sysroot symlink checkHaris Okanovic2015-12-011-1/+52
| | | | | | | | | | | | | | | | | | Add optional check to do_populate_sdk() that verifies SDK sysroots don't contain dangling or escaping symlinks before attempting to tar an archive. Such links may fail a `tar -h` operation (-h => follow symlinks) or archive the build system's files. Set CHECK_SDK_SYSROOTS = "1" to enable this check. Use case: The -h option may be set via SDKTAROPTS in some configurations to create symlink-less SDK archives for Windows file systems. (From OE-Core rev: 2658200fa2b3df08880ee937a3de5cb2866f8a50) Signed-off-by: Haris Okanovic <haris.okanovic@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Ensure PKGDATA_DIR existsRichard Purdie2015-10-271-1/+1
| | | | | | | | | | | | | The code assumes that PKG_DATADIR exists and will fail if an image has not been generated which creates it. This occurs when something like buildtools-tarball is built which doesn't have target packages, only nativesdk ones. Since this shouldn't be fatal, workaround this by creating the missing directory. (From OE-Core rev: 319c5d55bb0c7e429766f46dd42a15e16a43c4dd) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Simplify postprocess commandsRichard Purdie2015-10-011-9/+1
| | | | | | | | | | | | | 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. (From OE-Core rev: baa4e43a29e45df17eaa3456acc179b08d571db6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Fix aarch64 OLDEST_KERNEL sdk issuesRichard Purdie2015-09-121-1/+6
| | | | | | | | | | | | | | | | aarch64 sets OLDEST_KERNEL to 3.14. This stops the aarch64 SDK installing on anything with an older kernel which is clearly incorrect. I attempted to extract the correct non-overridden version from the data store but it proved problematic and I was running into data store issues. Those are a separate problem but there isn't time to fix this right now. Instead just code the SDK kernel version separately to work around this for now (and fix the autobuilder tests and SDK usage). (From OE-Core rev: 522ba4c51fff53566678b2689d0d63c393e417b3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toolchain-shar-extract.sh: better default install path for extensible SDKBrendan Le Foll2015-09-091-0/+2
| | | | | | | | | | | | Extensible SDK cannot be installed as root so by default offer to install it in user's home directory under distro/distro_version replacing the normal SDK version '+' char with a '_' as that's a restricted character for bitbake (From OE-Core rev: 5486e76cd8abb946b81cff78719d67cfb87cddc6) Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* extensible sdk: Error when trying to install as root.Randy Witt2015-07-201-2/+10
| | | | | | | | | | | | | | | | | | | Since the extensible sdk uses bitbake, which can't run as root, the sdk shouldn't be installed as root. Previously it would error out late into setup when bitbake errored saying not to run bitbake as root. Now the script errors with a message saying the extensible sdk can't be installed as root. [Yocto #7545] (From OE-Core rev: 309e8f4e536148056223f50637ed291c48d148ca) 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>
* populate_sdk_base.bbclass: don't inherit toolchain-scripts.bbclassRobert Yang2015-07-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed when enable multilib: require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "x86" $ bitbake core-image-minimal No lib32 package should be built since we don't build lib32-core-image-minimal, but a lot them are built: lib32-opkg-utils lib32-cryptodev-linux lib32-sqlite3 lib32-libtool-cross lib32-ncurses lib32-db lib32-diffutils lib32-zlib lib32-gcc-cross-i686 lib32-gcc-cross-initial-i686 lib32-flex lib32-libgcc-initial lib32-libffi lib32-linux-libc-headers lib32-expat lib32-openssl lib32-glibc lib32-binutils-cross-i686 lib32-gcc-runtime The are introduced by toolchain-scripts.bbclass' anonymous function (the MULTILIB_VARIANTS), but it doesn't need toolchain-scripts.bbclass, in fact, so remove it to fix the problem. [YOCTO #7961] (From OE-Core rev: 000ff33729854b1a41206a087cde1e50f49017e0) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base.bbclass: use pbzip2 to compress SDK tarfilesAndre McCurdy2015-06-271-3/+3
| | | | | | | (From OE-Core rev: 670f5cda06070ae888d17cca7a07aa74d751c2f7) Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: also record the host part into manifestChen Qi2015-04-281-3/+14
| | | | | | | | | | | | | | | | | | For now, we can create manifest for the target part for SDK. I think it's nice to have a place for users to look into to examine contents of the host part of SDK. This also affects uninative-tarball and buildtools-tarball as they inherit populate_sdk.bbclass. After this change, we could have a manifest file created in the deploy directory containing a list of packages used to construct them. [YOCTO #7604] (From OE-Core rev: 3069641589942f52b11e88cfea564ebba4beb3c2) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: avoid executing empty functionChen Qi2015-04-241-1/+3
| | | | | | | | | | | | | | | | `bitbake uninative-tarball' raises the following warning. WARNING: Function doesn't exist This is because SDK_PACKAGING_FUNC is set to "" in its recipe. Anyway, we need to check this variable to avoid executing empty function. [YOCTO #7598] (From OE-Core rev: 4c0ae7cce06de15f6881654ecec7f8bb743ff389) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_base: Show title in SDK installerPaul Eggleton2015-04-241-0/+4
| | | | | | | | | | | | Show a friendly title when running the SDK installer, so the user knows what SDK they are installing. The title is controlled by the SDK_INSTALLER_TITLE variable and includes the distro name and SDK version by default. (From OE-Core rev: 0af913887f4c0a79c6b950bd5d57c06333520a14) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* toolchain-shar-template.sh: Make relocation optional.Randy Witt2015-02-241-2/+8
| | | | | | | | | | | | | | If the buildsystem is copied into the sdk and its toolchain is to be used, then the relocation provided in toolchain-shar-template.sh isn't needed and will actually fail. So break the relocation aspect out and essentially make it another SDK_POST_INSTALL_COMMAND script. (From OE-Core rev: 9721378688a05cd8d8443c6ee4be823e5c0688f6) Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk: Handle OLDEST_KERNELRichard Purdie2015-02-171-0/+1
| | | | | | | | | | | Add a check to the SDK so that it only runs on systems with kernel versions it supports. [YOCTO #6856] (From OE-Core rev: b4caa8085aa15674162ff5135b13409998db9510) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sed-native: dropPaul Eggleton2015-02-021-1/+1
| | | | | | | | | | | | | | | | | This was added back in the depths of history (around 2006 in OE-Classic) when apparently the host sed couldn't always be relied upon. We now call the host sed all over the place without this dependency and don't have any problems. On the other hand, having it around can lead to races where we're calling sed in one task and staging it to the sysroot in another, the result being nasty failures compiling binutils for example. Since it isn't needed, let's just drop it completely. Fixes [YOCTO #7264]. (From OE-Core rev: 863a3966e1a200e7a15fbdbb8e04dce6e3f6c1a2) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base/meta-environment: Remove overlap from the twoRichard Purdie2014-09-221-26/+1
| | | | | | | | | | | | | | | | | | | | 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] (From OE-Core rev: 063355e5965439c7b3253d692d7ab0ed1189d123) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_base: enable adding custom commands to SDK install script1.7_M3Paul Eggleton2014-09-111-0/+7
| | | | | | | | | | | | Add an SDK_POST_INSTALL_COMMAND variable which allows additional commands to be added towards the end of the SDK install script, for e.g. additional processing that needs to be done as part of installing the SDK. (From OE-Core rev: 10df0718d6a626d99beb68cde8d914ee0820d7eb) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Remap TOOLCHAIN_HOST_TASK variableRichard Purdie2014-08-281-0/+7
| | | | | | | | | | | | | | | | | Currently this variable isn't passed through the magic rename mangling. This means that if you try adding "nativesdk-eglibc" to an image directly, you can't since the package is renamed by debian.bbclass and nothing sees the renaming. This is annoying since I wanted to exactly that. This code change passes it through the standard renaming function, the tricky part is that we have to set PKGDATA_DIR to point to the correct sysroot during the call. We create a copy of the datastore for the purposes of the call to do this. (From OE-Core rev: d2fbc55d6863a767e69092bac686c02c3ec34650) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_base.bbclass: add a manifest for target sdkCorneliu Stoicescu2014-08-271-0/+12
| | | | | | | | | Similar to the way BSP images have rootfs a manifest, the toolchain now also has a manifest file created alongside the sdk image. (From OE-Core rev: 3d42fd1f050a1382b15c3c4d59fd02d0ed7091b2) Signed-off-by: Corneliu Stoicescu <corneliux.stoicescu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Move toolchain installation script to a separate fileRichard Purdie2014-08-151-184/+9
| | | | | | | | | | | It makes sense to move the script to a separate file, making the bbclass clearer and allowing the end user to more easily customise or replace it. There are no functionality changes, just the addition of some substitution variables. (From OE-Core rev: f99732a29689c65083ad09abb302f372042c8cd4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: Combine rootfs_<pkgtype> and populate_sdk_<pkgtype>Richard Purdie2014-08-151-1/+1
| | | | | | | | | | | There is no real reason to have these separate files any longer. It does mean in meta-toolchain type recipes some extra variables are defined but it also means the common code can be grouped and maintained together which I believe is more beneficial. We therefore merge the classes. (From OE-Core rev: 2cf42b49003494e1b10775523c9a2547eaf16ea4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Fix grep command usage on old hosts1.7_M2Richard Purdie2014-07-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | "man grep" on centos: -R, -r, --recursive Read all files under each directory, recursively; this is equivalent to the -d recurse option. "man grep" on a more recent ubuntu system: -r, --recursive Read all files under each directory, recursively, following symbolic links only if they are on the command line. This is equivalent to the -d recurse option. So we have an issue when the SDK installer (even with buildtools-tarball) is used on old hosts since it may try and dereference paths which it should not. This is caused by differences in the behaviour of grep -r on older systems. The fix is to wrap this in find so that only real files are found (as elsewhere in the script. [YOCTO #6577] (From OE-Core rev: 7986adeac16550b33f65fded39a55f668e0e543f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Include do_rootfs depends for do_populate_sdkRichard Purdie2014-07-271-1/+1
| | | | | | | | | | | | | | "bitbake core-image-minimal -c populate_sdk; rm tmp -rf; bitbake core-image-minimal -c populate_sdk" breaks due to missing dependencies on things like update-rc.d. Since we're effecitvely building a rootfs, we need all the same depends as do_rootfs has. The easiest was to achieve this is to simply load them. This resolves the failure when targeting the task from sstate. (From OE-Core rev: cdb0bcef28493edd4cad2a882fb8ba402485a2f1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Extend TOOLCHAIN_TARGET_TASK to include multilib variantsRichard Purdie2014-07-251-1/+4
| | | | | | | | | | Most people expect the toolchain from a multilib build to contain multilib components. This change makes that happen and is easy for users to override should they want something different. (From OE-Core rev: 396371588c7fd2d691ca9c39cd02287e43cb665b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: ensure that filenames with empty space character are handledJoão Henrique Ferreira de Freitas2014-07-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | When extracting toolchain, if the list $executable_files has filenames with empty space character, the list will created but relocate_sdk.sh will not handle it well. This will lead to the below erro: ./tmp/deploy/sdk/buildtools-mytools-x86_64-nativesdk-standalone-1.6.1.0.sh Enter target directory for SDK (default: /opt/mydistro/mytoolset/1.6.1.0): You are about to install the SDK to "/opt/mydistro/mytoolset/1.6.1.0". Proceed[Y/n]? Extracting SDK...done Setting it up.../opt/mydistro/mytoolset/1.6.1.0/relocate_sdk.sh: line 2: sintaxe error `token' `(' /opt/mydistro/mytoolset/1.6.1.0/relocate_sdk.sh: line 2: `e The same occurs with replacement of ${SDKPATH} in configs/scripts/etc files. We should ensure that full path is protected before relocate_sdk.sh and ${SDKPATH} replacement calls. (From OE-Core rev: d7adf8349a65da6f0fdd0f00e606e8bc27ce3f28) Signed-off-by: João Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base: Remove confusing echoRichard Purdie2014-06-291-2/+0
| | | | | | | | | | | Remove a confusing echo after the previous commit, thanks for a suggestion from Laurentiu. (From OE-Core rev: cd1fdd05cc7457706d1e40042854c154cbb3d9e9) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> A
* populate_sdk_base: add auto-completion in setupDennis Meier2014-06-291-2/+1
| | | | | | | (From OE-Core rev: d6c55f6910270e395f668c9114ec374b44c57538) Signed-off-by: Dennis Meier <meier.dennis@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk: Fix TOOLCHAIN_TARGET_TASK_ATTEMPTONLY implementationMark Hatle2014-06-251-0/+1
| | | | | | | | | | The variable was only partially implemented, and the part that was there was named incorrectly to, missing the 'TASK' piece. (From OE-Core rev: d0cb34cfe9a51fd8bc1e6e28c8eda60a25adc1ec) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Revert "populate_sdk: verify executable or dynamically linked library"Roy Li2014-06-171-1/+1
| | | | | | | | | | | It is introduced a bug, since The return of "file ld-linux-x86-64.so.*" does not include "dynamically linked" in redhat 5.9/6.0(32 bit), and lead to that ld-linux-x86-64.so.* is not in executable file list. (From OE-Core rev: fc9603d7d7042efe8941172091cca8578bdde15b) Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>