[OE-core] [PATCH] populate_sdk_base.bbclass: Allow installation of ix86 SDK on x86_64 host
Mark Hatle
mark.hatle at windriver.com
Tue Jan 22 16:13:05 UTC 2013
On 1/22/13 6:18 AM, Wolfgang Denk wrote:
> Commit c04f5435 "populate_sdk_base.bbclass: use SDK_ARCH instead
> of SDKMACHINE" prevents not only the installation of 64 bit SDK
> configurations on 32 bit hosts (which indeed cannot work), but also
> the legitimate installation of a 32 bit SDK on a 64 bit host.
>
> Fix this.
>
> While there, also make sure we use the same patterns ("i[3-6]86" resp.
> "x86[-_]64" to get unified strings for both INST_ARCH and SDK_ARCH.
As far as I am aware, this is intentional. For various SDK items
pseudo/libpseudo may be used. On a 32-bit SDK, only a 32-bit pseudo/libpseudo
is available. This will prevent it from working with any host system binaries
that are x86_64.
If you don't care, the "workaround" is to use setarch and install it by telling
the system you are an ix86 target.
--Mark
> Signed-off-by: Wolfgang Denk <wd at denx.de>
> ---
> meta/classes/populate_sdk_base.bbclass | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
> index da846b4..c587af8 100644
> --- a/meta/classes/populate_sdk_base.bbclass
> +++ b/meta/classes/populate_sdk_base.bbclass
> @@ -122,11 +122,14 @@ fakeroot create_shar() {
> #!/bin/bash
>
> INST_ARCH=$(uname -m | sed -e "s/i[3-6]86/ix86/" -e "s/x86[-_]64/x86_64/")
> -SDK_ARCH=$(echo ${SDK_ARCH} | sed -e "s/i[5-6]86/ix86/")
> +SDK_ARCH=$(echo ${SDK_ARCH} | sed -e "s/i[3-6]86/ix86/" -e "s/x86[-_]64/x86_64/")
>
> if [ "$INST_ARCH" != "$SDK_ARCH" ]; then
> - echo "Error: Installation machine not supported!"
> - exit 1
> + # Allow for installation of ix86 SDK on x86_64 host
> + if [ "$INST_ARCH" != x86_64 -o "$SDK_ARCH" != ix86 ]; then
> + echo "Error: Installation machine not supported!"
> + exit 1
> + fi
> fi
>
> DEFAULT_INSTALL_DIR="${SDKPATH}"
>
More information about the Openembedded-core
mailing list