diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2016-11-01 16:24:23 +1300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-11-16 10:37:56 +0000 |
commit | 6a1ef8a965f6c5747edd7d7463f13fa394fd1436 (patch) | |
tree | ee25623d2f7fddecbd05c364d8f51ebab726d997 /meta | |
parent | 95a10d1dfc5283767a7c82c4b7e3683207425a80 (diff) | |
download | poky-6a1ef8a965f6c5747edd7d7463f13fa394fd1436.tar.gz |
classes/nativesdk: set SDK_OLDEST_KERNEL appropriately
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)
(From OE-Core rev: e02aa8e8b62eae0f83beca850466408dd060b248)
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>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/classes/nativesdk.bbclass | 2 | ||||
-rw-r--r-- | meta/classes/populate_sdk_base.bbclass | 5 | ||||
-rw-r--r-- | meta/conf/bitbake.conf | 5 | ||||
-rw-r--r-- | meta/conf/machine-sdk/i586.conf | 1 | ||||
-rw-r--r-- | meta/conf/machine-sdk/i686.conf | 1 | ||||
-rw-r--r-- | meta/conf/machine-sdk/x86_64.conf | 1 |
6 files changed, 10 insertions, 5 deletions
diff --git a/meta/classes/nativesdk.bbclass b/meta/classes/nativesdk.bbclass index a78257c192..31dde4a90f 100644 --- a/meta/classes/nativesdk.bbclass +++ b/meta/classes/nativesdk.bbclass | |||
@@ -97,3 +97,5 @@ do_populate_sysroot[stamp-extra-info] = "" | |||
97 | do_packagedata[stamp-extra-info] = "" | 97 | do_packagedata[stamp-extra-info] = "" |
98 | 98 | ||
99 | USE_NLS = "${SDKUSE_NLS}" | 99 | USE_NLS = "${SDKUSE_NLS}" |
100 | |||
101 | OLDEST_KERNEL = "${SDK_OLDEST_KERNEL}" | ||
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass index a762655347..69aae2644e 100644 --- a/meta/classes/populate_sdk_base.bbclass +++ b/meta/classes/populate_sdk_base.bbclass | |||
@@ -89,11 +89,6 @@ POPULATE_SDK_POST_HOST_COMMAND_append = " write_host_sdk_manifest; " | |||
89 | SDK_PACKAGING_COMMAND = "${@'${SDK_PACKAGING_FUNC};' if '${SDK_PACKAGING_FUNC}' else ''}" | 89 | SDK_PACKAGING_COMMAND = "${@'${SDK_PACKAGING_FUNC};' if '${SDK_PACKAGING_FUNC}' else ''}" |
90 | SDK_POSTPROCESS_COMMAND = " create_sdk_files; check_sdk_sysroots; tar_sdk; ${SDK_PACKAGING_COMMAND} " | 90 | SDK_POSTPROCESS_COMMAND = " create_sdk_files; check_sdk_sysroots; tar_sdk; ${SDK_PACKAGING_COMMAND} " |
91 | 91 | ||
92 | # Some archs override this, we need the nativesdk version | ||
93 | # turns out this is hard to get from the datastore due to TRANSLATED_TARGET_ARCH | ||
94 | # manipulation. | ||
95 | SDK_OLDEST_KERNEL = "3.2.0" | ||
96 | |||
97 | def populate_sdk_common(d): | 92 | def populate_sdk_common(d): |
98 | from oe.sdk import populate_sdk | 93 | from oe.sdk import populate_sdk |
99 | from oe.manifest import create_manifest, Manifest | 94 | from oe.manifest import create_manifest, Manifest |
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf index 54a587f1b4..9f445bb196 100644 --- a/meta/conf/bitbake.conf +++ b/meta/conf/bitbake.conf | |||
@@ -408,6 +408,11 @@ OLDEST_KERNEL = "3.2.0" | |||
408 | OLDEST_KERNEL_aarch64 = "3.14" | 408 | OLDEST_KERNEL_aarch64 = "3.14" |
409 | OLDEST_KERNEL_nios2 = "3.19" | 409 | OLDEST_KERNEL_nios2 = "3.19" |
410 | 410 | ||
411 | # SDK_OLDEST_KERNEL can't be set using overrides since there are | ||
412 | # none for the SDK architecture. Best to set it from a machine-sdk | ||
413 | # include file if you need an SDK arch-specific value | ||
414 | SDK_OLDEST_KERNEL = "3.2.0" | ||
415 | |||
411 | # Define where the kernel headers are installed on the target as well as where | 416 | # Define where the kernel headers are installed on the target as well as where |
412 | # they are staged. | 417 | # they are staged. |
413 | KERNEL_SRC_PATH = "/usr/src/kernel" | 418 | KERNEL_SRC_PATH = "/usr/src/kernel" |
diff --git a/meta/conf/machine-sdk/i586.conf b/meta/conf/machine-sdk/i586.conf index 41e5e159d1..99083fb63e 100644 --- a/meta/conf/machine-sdk/i586.conf +++ b/meta/conf/machine-sdk/i586.conf | |||
@@ -1,4 +1,5 @@ | |||
1 | SDK_ARCH = "i586" | 1 | SDK_ARCH = "i586" |
2 | SDK_CC_ARCH = "-march=i586" | 2 | SDK_CC_ARCH = "-march=i586" |
3 | ABIEXTENSION_class-nativesdk = "" | 3 | ABIEXTENSION_class-nativesdk = "" |
4 | SDK_OLDEST_KERNEL = "2.6.32" | ||
4 | 5 | ||
diff --git a/meta/conf/machine-sdk/i686.conf b/meta/conf/machine-sdk/i686.conf index fe406972c8..cf22784e9a 100644 --- a/meta/conf/machine-sdk/i686.conf +++ b/meta/conf/machine-sdk/i686.conf | |||
@@ -1,3 +1,4 @@ | |||
1 | SDK_ARCH = "i686" | 1 | SDK_ARCH = "i686" |
2 | SDK_CC_ARCH = "-march=i686" | 2 | SDK_CC_ARCH = "-march=i686" |
3 | ABIEXTENSION_class-nativesdk = "" | 3 | ABIEXTENSION_class-nativesdk = "" |
4 | SDK_OLDEST_KERNEL = "2.6.32" | ||
diff --git a/meta/conf/machine-sdk/x86_64.conf b/meta/conf/machine-sdk/x86_64.conf index 61439b4fb0..7d2e717807 100644 --- a/meta/conf/machine-sdk/x86_64.conf +++ b/meta/conf/machine-sdk/x86_64.conf | |||
@@ -1,2 +1,3 @@ | |||
1 | SDK_ARCH = "x86_64" | 1 | SDK_ARCH = "x86_64" |
2 | ABIEXTENSION_class-nativesdk = "" | 2 | ABIEXTENSION_class-nativesdk = "" |
3 | SDK_OLDEST_KERNEL = "2.6.32" | ||