diff options
Diffstat (limited to 'meta/classes')
| -rw-r--r-- | meta/classes/cross-canadian.bbclass | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/meta/classes/cross-canadian.bbclass b/meta/classes/cross-canadian.bbclass index d35451dbf2..099c0daf42 100644 --- a/meta/classes/cross-canadian.bbclass +++ b/meta/classes/cross-canadian.bbclass | |||
| @@ -15,7 +15,8 @@ STAGING_BINDIR_TOOLCHAIN = "${STAGING_DIR_NATIVE}${bindir_native}/${SDK_ARCH}${S | |||
| 15 | # Update BASE_PACKAGE_ARCH and PACKAGE_ARCHS | 15 | # Update BASE_PACKAGE_ARCH and PACKAGE_ARCHS |
| 16 | # | 16 | # |
| 17 | PACKAGE_ARCH = "${SDK_ARCH}-${SDKPKGSUFFIX}" | 17 | PACKAGE_ARCH = "${SDK_ARCH}-${SDKPKGSUFFIX}" |
| 18 | CANADIANEXTRAOS = "linux-uclibc linux-musl" | 18 | BASECANADIANEXTRAOS ?= "linux-uclibc linux-musl" |
| 19 | CANADIANEXTRAOS = "${BASECANADIANEXTRAOS}" | ||
| 19 | CANADIANEXTRAVENDOR = "" | 20 | CANADIANEXTRAVENDOR = "" |
| 20 | MODIFYTOS ??= "1" | 21 | MODIFYTOS ??= "1" |
| 21 | python () { | 22 | python () { |
| @@ -34,8 +35,13 @@ python () { | |||
| 34 | 35 | ||
| 35 | tos = d.getVar("TARGET_OS", True) | 36 | tos = d.getVar("TARGET_OS", True) |
| 36 | whitelist = [] | 37 | whitelist = [] |
| 38 | extralibcs = [""] | ||
| 39 | if "uclibc" in d.getVar("BASECANADIANEXTRAOS", True): | ||
| 40 | extralibcs.append("uclibc") | ||
| 41 | if "musl" in d.getVar("BASECANADIANEXTRAOS", True): | ||
| 42 | extralibcs.append("musl") | ||
| 37 | for variant in ["", "spe", "x32", "eabi", "n32"]: | 43 | for variant in ["", "spe", "x32", "eabi", "n32"]: |
| 38 | for libc in ["", "uclibc", "musl"]: | 44 | for libc in extralibcs: |
| 39 | entry = "linux" | 45 | entry = "linux" |
| 40 | if variant and libc: | 46 | if variant and libc: |
| 41 | entry = entry + "-" + libc + variant | 47 | entry = entry + "-" + libc + variant |
| @@ -59,14 +65,20 @@ python () { | |||
| 59 | if tarch == "x86_64": | 65 | if tarch == "x86_64": |
| 60 | d.setVar("LIBCEXTENSION", "") | 66 | d.setVar("LIBCEXTENSION", "") |
| 61 | d.setVar("ABIEXTENSION", "") | 67 | d.setVar("ABIEXTENSION", "") |
| 62 | d.appendVar("CANADIANEXTRAOS", " linux-gnux32 linux-uclibcx32 linux-muslx32") | 68 | d.appendVar("CANADIANEXTRAOS", " linux-gnux32") |
| 69 | for extraos in d.getVar("BASECANADIANEXTRAOS", True).split(): | ||
| 70 | d.appendVar("CANADIANEXTRAOS", " " + extraos + "x32") | ||
| 63 | elif tarch == "powerpc": | 71 | elif tarch == "powerpc": |
| 64 | # PowerPC can build "linux" and "linux-gnuspe" | 72 | # PowerPC can build "linux" and "linux-gnuspe" |
| 65 | d.setVar("LIBCEXTENSION", "") | 73 | d.setVar("LIBCEXTENSION", "") |
| 66 | d.setVar("ABIEXTENSION", "") | 74 | d.setVar("ABIEXTENSION", "") |
| 67 | d.appendVar("CANADIANEXTRAOS", " linux-gnuspe linux-uclibcspe linux-muslspe") | 75 | d.appendVar("CANADIANEXTRAOS", " linux-gnuspe") |
| 76 | for extraos in d.getVar("BASECANADIANEXTRAOS", True).split(): | ||
| 77 | d.appendVar("CANADIANEXTRAOS", " " + extraos + "spe") | ||
| 68 | elif tarch == "mips64": | 78 | elif tarch == "mips64": |
| 69 | d.appendVar("CANADIANEXTRAOS", " linux-gnun32 linux-uclibcn32 linux-musln32") | 79 | d.appendVar("CANADIANEXTRAOS", " linux-gnun32") |
| 80 | for extraos in d.getVar("BASECANADIANEXTRAOS", True).split(): | ||
| 81 | d.appendVar("CANADIANEXTRAOS", " " + extraos + "n32") | ||
| 70 | if tarch == "arm" or tarch == "armeb": | 82 | if tarch == "arm" or tarch == "armeb": |
| 71 | d.appendVar("CANADIANEXTRAOS", " linux-musleabi linux-uclibceabi") | 83 | d.appendVar("CANADIANEXTRAOS", " linux-musleabi linux-uclibceabi") |
| 72 | d.setVar("TARGET_OS", "linux-gnueabi") | 84 | d.setVar("TARGET_OS", "linux-gnueabi") |
