summaryrefslogtreecommitdiff
path: root/meta/classes/nativesdk.bbclass
AgeCommit message (Collapse)AuthorFiles
2016-02-06bitbake.conf/native/nativesdk: Set PKG_CONFIG_SYSTEM_ at top levelRichard Purdie1
Setting PKG_CONFIG_SYSTEM_{HEADERS/INCLUDE}_PATH for nativesdk isn't enough, we also need to deal with multlib cases where libdir from pkg-config-native isn't correct. Native builds are about the only case where this variable shouldn't be set. Therefore move the code from nativesdk to bitbake.conf and unexport it in the native case. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-05nativesdk: Set PKG_CONFIG_SYSTEM_ variablesRichard Purdie1
When building nativesdk recipes, we noticed paths going into .pc files which should have been suppressed since these were standard library search paths. pkgconfig-native sets these variables to sane values for native recipes, we need it set to values for our specific library paths in the nativesdk case. Setting these values cleans up the .pc files and suppresses the paths. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30nativesdk.bbclass: set sbindir to bindirChristopher Larson1
The sbindir vs bindir separation really doesn't mean much in this context, and toolchain-scripts.bbclass doesn't add sbindir to the PATH, so set the former to the latter. (From OE-Core rev: 51a19850700bd96e3d2e104e1626aceb73a48e72) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16nativesdk.bbclass: set PKGDATA_DIR explicitlyChen Qi1
For now, if we enable 'multilib' and execute `bitbake uninative-tarball -c populate_sdk', the command would fail, complaining nativesdk-glibc not found in package feed. The problem is that PKGDATA_DIR is not set correctly for nativesdk packages when multilib is enabled. For now, we have: meta/conf/bitbake.conf:PKGDATA_DIR = "${STAGING_DIR_HOST}/pkgdata" The above is overriden by the following is multilib is enabled. meta/conf/multilib.conf:PKGDATA_DIR = "${STAGING_DIR}/${MACHINE}/pkgdata" This is correct for normal packages. However, for nativesdk packages, this is not correctly. This is because nativesdk.bbclass set STAGING_DIR_HOST as follows. meta/classes/nativesdk.bbclass:STAGING_DIR_HOST = "${STAGING_DIR}/${MULTIMACH_HOST_SYS}" The above overrides the value in multilib.conf. That's why we need to also set PKGDATA_DIR explicitly in nativesdk.bbclass. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2014-08-27native/nativesdk: Clear MACHINEOVERRIDESKhem Raj1
In cases where we override variables e.g PACKAGE_ARCH conditionally and use a MACHINEOVERRIDE to qualify the override like PACKAGE_ARCH_<MACHINE> = "some target PACKAGE_ARCH" This would also be effective if this recipe is BBEXTENDED to native or nativesdk which is undesired This particular issue will cause wrong sysroot to be used for nativesdk case since PACKAGE_ARCH would have been modified and eventually changing value of STAGING_DIR_TARGET which we use as --sysroot option to cross and cross-canadian built SDK gcc Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-08-15sdk: change EXTRA_OECONF_FPU to EXTRA_OECONF_GCC_FLOATPeter A. Bigot1
This variable is used to ensure the proper version of --with-float=FOO is passed to gcc's configure script. gcc also has a --with-fpu=FOO option that means something different. To avoid confusion, change the names to be consistent. Signed-off-by: Peter A. Bigot <pab@pabigot.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-15nativesdk: Set LIBCOVERRIDE to a valueRichard Purdie1
nativesdk was just unsetting LIBCOVERRIDE however that causes some build failures for xorg-libs which used a libc override. This adds in a mechanism to force nativesdk to glibc and give the option of allowing another selection like uclibc if anyone ever does the work to make it operational. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-09nativesdk.bbclass: support nativesdk to override with the PACKAGES_DYNAMIC ↵Hongxu Jia1
statement While compiling nativesdk-mtools, there was failure: ... Nothing PROVIDES 'nativesdk-glibc-gconv-ibm850'. Close matches: ... This patch supports nativesdk to override with the PACKAGES_DYNAMIC statement [YOCTO #5623] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-16nativesdk: Fix pn checkRichard Purdie1
There are missing brackets in the check meaning MLPREFIX doesn't get set for nativesdk-qemu-helper when it should be. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04cross/crosssdl/native/nativesdk: Fix do_packagedata stampsRichard Purdie1
If you build nativesdk for machine A, then change to B you will see sstate manifest warnings for the packagedata files. The stamps are machine specific and should not be, ditto for native. This patch copies the populate-sysroot extra stamp entries to avoid these warnings. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-22bitbake.conf/classes/gcc: Don't hardcode -nativesdkRichard Purdie1
Hardcoding -nativesdk as the sdk package architecture is inflexible. We may have multiple different target OS and we need a way to be able to separate them. Turning this into a configurable value allows the flexibility we need to build different SDKMACHINEs with different OS targets. The commit should have no behaviour change, just makes things more configurable. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-22Revert "nativesdk: inherit relocatable"Richard Purdie1
This reverts commit f93ddea31fcf18833c9bc6e93d93ad223c62eded. We never run nativesdk binaries so it doesn't make sense to use the relocatable class. The chrpath calls at packaging time will ensure the binaries are relocated in the final packages. The binaries in the sysroot are never used. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-22gettext: Improve USE_NLS handling for nativesdk/crosssdk/cross-canadianRichard Purdie1
The gettext handling of USE_NLS has become a bit tricky to understand, or alter from the SDK context. This patch introduces a SDKUSE_NLS which can be set to configure a given SDK/ADT to use NLS or not. This is independent of the target system NLS usage. The code in gettext.bbclass is therefore simplified and the classes themselves now set USE_NLS to appropriate values. No NLS is used for native, cross and crosssdk since it is never used there and would just increase build time. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-06-14classes/conf: Add eventmasks for event handlersRichard Purdie1
Now that bitbake supports masking events for event handlers, lets use this so event handlers are only called for events they care about. This lets us simplify the code indentation a bit at least as well as mildly improving the event handling performance. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-21classes: Drop do_package stamp-extra-infoRichard Purdie1
This was needed when do_package for target recipes was target specific however since it now isn't we can remove these stale references. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-10-02nativesdk.bbclass: Ensure we have chrpath >=0.14Richard Purdie1
Versions earlier than 0.14 can't cope with 32 bit binaries on a 64 bit system and vice versa. This results in problems for certain SDKMACHINE combinations on certain hosts. By ensuring we build chrpath-replacement-native we avoid this problems and the binaries work correctly. [YOCTO #3161] [YOCTO #3201] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-31nativesdk: Switch to using nativesdk as a prefix, not a suffixRichard Purdie1
As discussed on the mailing lists, using a suffix to package names is hard and has lead to many recipes having to do PKGSUFFIX games. Its looking extremely hard to scale nativesdk much further without hacking many recipes. By comparison, using a prefix like multilib does works much better and doesn't involve "hacking" as many recipes. This change converts nativesdk to use a prefix using the existing multilib infrastructure. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-31nativesdk: Convert to use classextend.pyRichard Purdie1
This patch converts the nativesdk class itself from operating as a suffix to a prefix (see the proceeding patch for the related changes outside this class). The big benefit here is that we can reuse the generic class extension code. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17crosssdk/nativesdk: Ensure EXTRA_OECONF_FPU is unsetRichard Purdie1
If EXTRA_OECONF_FPU is left set, certain ARM variables related to hard-float can get pulled in and trigger rebuilds of the crosssdk code. The best solution is to simply force the variable to a known correct value for the SDK targets currently supported in the same way as TARGET_FPU. There is some slight rearrangement of the gcc code to ensure the variable is always used to call the fpu function. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
2012-04-26classes: Add recipe class to overridesRichard Purdie1
We have currently no override to detect a recipe being build cross, crosssdk or for target at times we can use virtclass-native and virtclass-nativesdk to override stuff in recipes but we dont have way to modify a variables based on recipe type always. This patch adds in such an override and in particular makes a target override class available. With this change now we can say: EXTRA_OECONF_class-target = "...." EXTRA_OECONF_class-native = "..." EXTRA_OECONF_class-nativesdk = "..." EXTRA_OECONF_class-crosssdk= "..." Based of an original patch by Khem Raj Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-31nativesdk.bbclass: Set PACKAGE_ARCHS to SDK_PACKAGE_ARCHS.Lianhao Lu1
This patch fixed the issue of reading incorrect pkgdata files. Previous appending '-nativesdk' suffix to PACKAGE_ARCHS would result the i686-nativesdk recipes reading in x86_64-nativesdk pkgdata files if the MACHINE is set to qemux86-64. Fixed bug [YOCTO #2203]. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-23nativesdk/misc: set PKGSUFFIX for correct variable name expansion.Lianhao Lu1
Set PKGSUFFIX in nativesdk.bbclass for correct variable name expansion. This would fix bunch of "not shipped" packaging warnings in "-nativesdk" recipes. And also bumping the corresponding PR. Signed-off-by: Lianhao Lu <lianhao.lu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-16nativesdk.bbclass: Remove historical FILES artifactRichard Purdie1
Adding everything in ${prefix} to FILES and FILES-dbg is a historical artifact left over from when this was sdk.bbclass back in 2009. The BBCLASSEXTEND changes, multilib changes and cleanups to this file over the intervening time mean this is simply no long needed. Its also outright dangerous since it can link the packages together in circular ways which don't make sense. The simplest thing to is to drop this since it no longer does anything useful. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-01classes, conf: Exclude native and nativesdk recipes from libc specific overrideKhem Raj1
Based on suggestions from RP libc-uclibc and libc-glibc overrides are for denoting system C library in use on the target and not for the host therefore we make sure that the override only takes effect for target recipes only. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-26getVar/setVar cleanupsRichard Purdie1
Complete the bb.data.getVar/setVar replacements with accesses directly to the data store object. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10Convert to use direct access to the data store (instead of bb.data.*Var*())Richard Purdie1
This is the result of running the following over the metadata: sed \ -e 's:bb.data.\(setVar([^,()]*,[^,()]*\), *\([^ )]*\) *):\2.\1):g' \ -e 's:bb.data.\(setVarFlag([^,()]*,[^,()]*,[^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -e 's:bb.data.\(getVar([^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \ -e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \ -e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^() ]*\) *):\2.\1):g' \ -e 's:bb.data.\(getVar([^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -i `grep -ril bb.data *` Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-22multilib.bbclass: Partially fix multlib image targetsRichard Purdie1
This patch partially fixes problems when building multilib extended images such as libXX-core-image-minimal. Its not a perfect/complete solution but works much better than any previous code did. [YOCTO #1496] (partial) [YOCTO #1497] (partial) [YOCTO #1498] (partial) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-12nativesdk: inherit relocatableChris Larson1
Signed-off-by: Chris Larson <chris_larson@mentor.com>
2011-08-05toolchain-scripts & other classes: add TARGET_LD_ARCH & TARGET_AS_ARCH varsNitin A Kamble1
This is comming from x32 need to pass special parameters to ld & as. Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2011-07-25bitbake.conf/classes: Variable cleanupRichard Purdie1
This patch removes the variables BASE_PACKAGE_ARCH, BASEPKG_HOST_SYS, BASEPKG_TARGET_SYS and also removes the immediate assignments in several core classes as these are no longer required. This should make it clearer what some of the core variables do and simplfy some overly complex and confusing class code. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-13nativesdk.bbclass: Correct ordering of manipulationsRichard Purdie1
OVERDIDES is the key variable that needs to be set prior to data finalisation. The other variables should be manipulated after finalisation so any DEPENDS_prepend and _append are accounted for. This patch ensures this is the case. The PACKAGES maniupulations are not enabled at this time as they don't function 100% correctly yet. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-06-09native/nativesdk: Clean up the depends ordering after bitbake override ↵Richard Purdie1
handling updates This massively cleans up the dependency handling in the two classes when interacting with BBCLASSEXTEND. This change has a dependency on the bitbake override handling change and also the existence of the RecipePreFinalise event. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-04-05native, nativesdk, crosssdk: reset TARGET_FPUIlya Yanok1
When building one of the native, nativesdk or crosssdk packages TARGET_* variables' values are no longer related to the target we set via MACHINE variable, they are now related to the BUILD (native) or SDK (nativesdk, crosssdk) targets instead. We need to change TARGET_FPU variable accordingly or some of the recipes (the ones that check for TARGET_FPU value, most notably gcc and eglibc) might be confused. It's probably cleaner not to reset TARGET_FPU but to change it to something like ${BUILD_FPU} (for native) or ${SDK_FPU} (for crosssdk and nativesdk) but as long as BUILD and SDK are x86 it's safe to just reset TARGET_FPU. Signed-off-by: Ilya Yanok <yanok@emcraft.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-01-25bitbake: machine specific sysroots implementationDongxiao Xu1
This commit changes the sysroots path to be machine specific. Changes includes: 1) STAGING_DIR_TARGET and STRAGING_DIR_HOST points to machine specific paths. 2) task stamp files. Adding ${MACHINE} info into stamp files for do_populate_sysroots and do_package tasks. Add a BB_STAMPTASK_BLACKLIST to keep native, nativesdk, crosssdk, and cross-canadian stamp unchanged. 3) siteconfig path. Separate the site config path for different machines to avoid one machine adopting the cache file of another machine. 4) sstate. Add machine name to sstate manifest file. Change relocation code for sstate paths since sysroot is machine. Keep native, nativesdk, crosssdk, and cross-canadian unchanged. 5) toolchain scripts. Change the environment path to point to machine specific sysroots in toolchain scripts bbclass. 6) Relocate la files when populating to a different machine of the same architecture. 7) Exclude STAGING_DIR_TARGET and STAGING_DIR_HOST parameter from sstate siginfo since they contain ${MACHINE} information. Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
2010-07-24nativesdk.bbckass: Fix toolchain pathRichard Purdie1
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-07-02meta-toolchain: Improve layoutRichard Purdie1
* Switch from /usr/local/poky to /opt/poky * Use a sysroots directory for both the "native" sdk binaries and the target * Drop the meta-toolchain extras packages. These are replaced with packaged-staging. * Change the nativesdk layout to match our usual filesystem layout * Clean up various hardcoded prefix references Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2010-04-27Install cross-packages into the native sysrootJoshua Lock1
Cross is no longer required so can go away, we now install cross packages into the native sysroot and use them from there. This patch includes updates to classes and some recipes which reference CROSS_DIR. Others still need fixing an image can be built and run with this patch applied. Signed-off-by: Joshua Lock <josh@linux.intel.com>
2010-03-29classes/conf: Update to handle gcc-runtimeRichard Purdie1
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-12-02nativesdk.bbclass: Disable debugRichard Purdie1
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-12-02nativesdk.bbclass: Fix DEPENDS handlingRichard Purdie1
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-09-18nativesdk.bbclass: Drop ineffective dynamic linker flagRichard Purdie1
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-09-17nativesdk/package_ipk.bbclass: Clean up sdk package architecturesRichard Purdie1
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-09-17nativesdk: Convert to use crosssdk toolchain and remove binutils/gcc ↵Richard Purdie1
nativesdk recipes Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-09-17nativesdk: Don't use search and replace on DEPENDS fieldRichard Purdie1
Search and replace on the DEPENDS field can cause problems if multiple similar names are present in the string so use an alternative approach. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-09-17sdk.bbclass: Rename to nativesdk.bbclassRichard Purdie1
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>