diff options
| author | Otavio Salvador <otavio@ossystems.com.br> | 2015-04-02 16:57:57 -0300 |
|---|---|---|
| committer | Otavio Salvador <otavio@ossystems.com.br> | 2015-04-02 22:49:28 -0300 |
| commit | 263bd0c7abd92f466370c498b201cae039ed0f18 (patch) | |
| tree | a1c16be373524f1e9cf4b49ffdc23db0c6d82c4e /meta-fsl-arm/classes | |
| parent | 24e0921629fd2151da468e103aa19316dfda1f8a (diff) | |
| download | meta-freescale-263bd0c7abd92f466370c498b201cae039ed0f18.tar.gz | |
fsl-dynamic-packagearch.bbclass: Fix support for empty MACHINE_SOCARCH_SUFFIX
When MACHINE_SOCARCH_SUFFIX is empty a duplicated architecture will be
included in PACKAGE_ARCHS. The expected behaviour is to not include
duplicated values and raise an error in case a MACHINE_SOCARCH package
tries to be build.
Change-Id: I98d936409554e4e7725c8af6c0a0a0344ddec751
Reported-by: Lauren Post <lauren.post@freescale.com>
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Diffstat (limited to 'meta-fsl-arm/classes')
| -rw-r--r-- | meta-fsl-arm/classes/fsl-dynamic-packagearch.bbclass | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/meta-fsl-arm/classes/fsl-dynamic-packagearch.bbclass b/meta-fsl-arm/classes/fsl-dynamic-packagearch.bbclass index 91a1b14f2..fa542fcef 100644 --- a/meta-fsl-arm/classes/fsl-dynamic-packagearch.bbclass +++ b/meta-fsl-arm/classes/fsl-dynamic-packagearch.bbclass | |||
| @@ -23,7 +23,7 @@ | |||
| 23 | # MACHINE_ARCH_FILTER = "virtual/kernel" | 23 | # MACHINE_ARCH_FILTER = "virtual/kernel" |
| 24 | # MACHINE_SOCARCH_FILTER_soc = "virtual/libgles1 ... virtual/libgl" | 24 | # MACHINE_SOCARCH_FILTER_soc = "virtual/libgles1 ... virtual/libgl" |
| 25 | # | 25 | # |
| 26 | # Copyright 2013 (C) O.S. Systems Software LTDA. | 26 | # Copyright 2013-2015 (C) O.S. Systems Software LTDA. |
| 27 | 27 | ||
| 28 | python __anonymous () { | 28 | python __anonymous () { |
| 29 | machine_arch_filter = set((d.getVar("MACHINE_ARCH_FILTER", True) or "").split()) | 29 | machine_arch_filter = set((d.getVar("MACHINE_ARCH_FILTER", True) or "").split()) |
| @@ -41,15 +41,25 @@ python __anonymous () { | |||
| 41 | if not package_arch: | 41 | if not package_arch: |
| 42 | raise bb.parse.SkipPackage("You must set MACHINE_SOCARCH as MACHINE_SOCARCH_FILTER is set for this SoC.") | 42 | raise bb.parse.SkipPackage("You must set MACHINE_SOCARCH as MACHINE_SOCARCH_FILTER is set for this SoC.") |
| 43 | 43 | ||
| 44 | machine_socarch_suffix = d.getVar("MACHINE_SOCARCH_SUFFIX", True) | ||
| 45 | if not machine_socarch_suffix: | ||
| 46 | raise bb.parse.SkipPackage("You must set MACHINE_SOCARCH_SUFFIX as MACHINE_SOCARCH_FILTER is set for this SoC.") | ||
| 47 | |||
| 44 | if package_arch: | 48 | if package_arch: |
| 45 | bb.debug(1, "Use '%s' as package archictecture for '%s'" % (package_arch, PN)) | 49 | bb.debug(1, "Use '%s' as package archictecture for '%s'" % (package_arch, PN)) |
| 46 | d.setVar("PACKAGE_ARCH", package_arch) | 50 | d.setVar("PACKAGE_ARCH", package_arch) |
| 51 | |||
| 52 | cur_package_archs = (d.getVar("PACKAGE_ARCHS", True) or "").split() | ||
| 53 | arch_extra_socarch = (d.getVar("ARM_EXTRA_SOCARCH", True) or "") | ||
| 54 | thumb_extra_socarch = (d.getVar("THUMB_EXTRA_SOCARCH", True) or "") | ||
| 55 | if not arch_extra_socarch in cur_package_archs: | ||
| 56 | d.appendVar("PACKAGE_EXTRA_ARCHS", " %s" % arch_extra_socarch) | ||
| 57 | |||
| 58 | if not thumb_extra_socarch in cur_package_archs: | ||
| 59 | d.appendVar("PACKAGE_EXTRA_ARCHS", " %s" % thumb_extra_socarch) | ||
| 47 | } | 60 | } |
| 48 | 61 | ||
| 49 | ARM_EXTRA_SOCARCH = "${ARMPKGARCH}${ARMPKGSFX_DSP}${ARMPKGSFX_EABI}${ARMPKGSFX_ENDIAN}${ARMPKGSFX_FPU}${MACHINE_SOCARCH_SUFFIX}" | 62 | ARM_EXTRA_SOCARCH = "${ARMPKGARCH}${ARMPKGSFX_DSP}${ARMPKGSFX_EABI}${ARMPKGSFX_ENDIAN}${ARMPKGSFX_FPU}${MACHINE_SOCARCH_SUFFIX}" |
| 50 | THUMB_EXTRA_SOCARCH = "${ARMPKGARCH}${ARM_THUMB_SUFFIX}${ARMPKGSFX_DSP}${ARMPKGSFX_EABI}${ARMPKGSFX_ENDIAN}${ARMPKGSFX_FPU}${MACHINE_SOCARCH_SUFFIX}" | 63 | THUMB_EXTRA_SOCARCH = "${ARMPKGARCH}${ARM_THUMB_SUFFIX}${ARMPKGSFX_DSP}${ARMPKGSFX_EABI}${ARMPKGSFX_ENDIAN}${ARMPKGSFX_FPU}${MACHINE_SOCARCH_SUFFIX}" |
| 51 | 64 | ||
| 52 | PACKAGE_EXTRA_ARCHS_append = " ${@bb.utils.contains('TUNE_FEATURES', 'arm', '${ARM_EXTRA_SOCARCH}', '', d) } \ | ||
| 53 | ${@bb.utils.contains('TUNE_FEATURES', 'thumb', '${THUMB_EXTRA_SOCARCH}', '', d) }" | ||
| 54 | |||
| 55 | MACHINE_SOCARCH = "${@bb.utils.contains('ARM_INSTRUCTION_SET', 'thumb', '${THUMB_EXTRA_SOCARCH}', '${ARM_EXTRA_SOCARCH}', d)}" | 65 | MACHINE_SOCARCH = "${@bb.utils.contains('ARM_INSTRUCTION_SET', 'thumb', '${THUMB_EXTRA_SOCARCH}', '${ARM_EXTRA_SOCARCH}', d)}" |
