diff options
| -rw-r--r-- | meta/classes/cross.bbclass | 4 | ||||
| -rw-r--r-- | meta/classes/crosssdk.bbclass | 4 | ||||
| -rw-r--r-- | meta/classes/native.bbclass | 4 | ||||
| -rw-r--r-- | meta/classes/sstate.bbclass | 9 |
4 files changed, 14 insertions, 7 deletions
diff --git a/meta/classes/cross.bbclass b/meta/classes/cross.bbclass index ee8e150e4c..2602153a97 100644 --- a/meta/classes/cross.bbclass +++ b/meta/classes/cross.bbclass | |||
| @@ -38,6 +38,10 @@ TOOLCHAIN_OPTIONS = "" | |||
| 38 | 38 | ||
| 39 | DEPENDS_GETTEXT = "gettext-native" | 39 | DEPENDS_GETTEXT = "gettext-native" |
| 40 | 40 | ||
| 41 | # This class encodes staging paths into its scripts data so can only be | ||
| 42 | # reused if we manipulate the paths. | ||
| 43 | SSTATE_SCAN_CMD ?= "${SSTATE_SCAN_CMD_NATIVE}" | ||
| 44 | |||
| 41 | # Path mangling needed by the cross packaging | 45 | # Path mangling needed by the cross packaging |
| 42 | # Note that we use := here to ensure that libdir and includedir are | 46 | # Note that we use := here to ensure that libdir and includedir are |
| 43 | # target paths. | 47 | # target paths. |
diff --git a/meta/classes/crosssdk.bbclass b/meta/classes/crosssdk.bbclass index c5c29ea3da..a5ffd977b0 100644 --- a/meta/classes/crosssdk.bbclass +++ b/meta/classes/crosssdk.bbclass | |||
| @@ -10,6 +10,10 @@ python () { | |||
| 10 | 10 | ||
| 11 | STAGING_BINDIR_TOOLCHAIN = "${STAGING_DIR_NATIVE}${bindir_native}/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}" | 11 | STAGING_BINDIR_TOOLCHAIN = "${STAGING_DIR_NATIVE}${bindir_native}/${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS}" |
| 12 | 12 | ||
| 13 | # This class encodes staging paths into its scripts data so can only be | ||
| 14 | # reused if we manipulate the paths. | ||
| 15 | SSTATE_SCAN_CMD ?= "${SSTATE_SCAN_CMD_NATIVE}" | ||
| 16 | |||
| 13 | TARGET_ARCH = "${SDK_ARCH}" | 17 | TARGET_ARCH = "${SDK_ARCH}" |
| 14 | TARGET_VENDOR = "${SDK_VENDOR}" | 18 | TARGET_VENDOR = "${SDK_VENDOR}" |
| 15 | TARGET_OS = "${SDK_OS}" | 19 | TARGET_OS = "${SDK_OS}" |
diff --git a/meta/classes/native.bbclass b/meta/classes/native.bbclass index 4d4aaadc02..ec91fc3c80 100644 --- a/meta/classes/native.bbclass +++ b/meta/classes/native.bbclass | |||
| @@ -115,6 +115,10 @@ MACHINEOVERRIDES = "" | |||
| 115 | 115 | ||
| 116 | PATH_prepend = "${COREBASE}/scripts/native-intercept:" | 116 | PATH_prepend = "${COREBASE}/scripts/native-intercept:" |
| 117 | 117 | ||
| 118 | # This class encodes staging paths into its scripts data so can only be | ||
| 119 | # reused if we manipulate the paths. | ||
| 120 | SSTATE_SCAN_CMD ?= "${SSTATE_SCAN_CMD_NATIVE}" | ||
| 121 | |||
| 118 | python native_virtclass_handler () { | 122 | python native_virtclass_handler () { |
| 119 | classextend = e.data.getVar('BBCLASSEXTEND') or "" | 123 | classextend = e.data.getVar('BBCLASSEXTEND') or "" |
| 120 | if "native" not in classextend: | 124 | if "native" not in classextend: |
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index 31789da50a..aeb7466d35 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass | |||
| @@ -34,7 +34,8 @@ SSTATE_DUPWHITELIST += "${DEPLOY_DIR_SRC}" | |||
| 34 | SSTATE_DUPWHITELIST += "${DEPLOY_DIR}/sdk/README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt" | 34 | SSTATE_DUPWHITELIST += "${DEPLOY_DIR}/sdk/README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt" |
| 35 | 35 | ||
| 36 | SSTATE_SCAN_FILES ?= "*.la *-config *_config" | 36 | SSTATE_SCAN_FILES ?= "*.la *-config *_config" |
| 37 | SSTATE_SCAN_CMD ?= 'find ${SSTATE_BUILDDIR} \( -name "${@"\" -o -name \"".join(d.getVar("SSTATE_SCAN_FILES").split())}" \) -type f' | 37 | SSTATE_SCAN_CMD ??= 'find ${SSTATE_BUILDDIR} \( -name "${@"\" -o -name \"".join(d.getVar("SSTATE_SCAN_FILES").split())}" \) -type f' |
| 38 | SSTATE_SCAN_CMD_NATIVE ??= 'grep -Irl -e ${RECIPE_SYSROOT} -e ${RECIPE_SYSROOT_NATIVE} ${SSTATE_BUILDDIR}' | ||
| 38 | 39 | ||
| 39 | BB_HASHFILENAME = "False ${SSTATE_PKGSPEC} ${SSTATE_SWSPEC}" | 40 | BB_HASHFILENAME = "False ${SSTATE_PKGSPEC} ${SSTATE_SWSPEC}" |
| 40 | 41 | ||
| @@ -94,12 +95,6 @@ python () { | |||
| 94 | d.setVar('BB_HASHFILENAME', "True ${SSTATE_PKGSPEC} ${SSTATE_SWSPEC}") | 95 | d.setVar('BB_HASHFILENAME', "True ${SSTATE_PKGSPEC} ${SSTATE_SWSPEC}") |
| 95 | d.setVar('SSTATE_EXTRAPATHWILDCARD', "*/") | 96 | d.setVar('SSTATE_EXTRAPATHWILDCARD', "*/") |
| 96 | 97 | ||
| 97 | # These classes encode staging paths into their scripts data so can only be | ||
| 98 | # reused if we manipulate the paths | ||
| 99 | if bb.data.inherits_class('native', d) or bb.data.inherits_class('cross', d) or bb.data.inherits_class('sdk', d) or bb.data.inherits_class('crosssdk', d): | ||
| 100 | scan_cmd = "grep -Irl -e ${RECIPE_SYSROOT} -e ${RECIPE_SYSROOT_NATIVE} ${SSTATE_BUILDDIR}" | ||
| 101 | d.setVar('SSTATE_SCAN_CMD', scan_cmd) | ||
| 102 | |||
| 103 | unique_tasks = sorted(set((d.getVar('SSTATETASKS') or "").split())) | 98 | unique_tasks = sorted(set((d.getVar('SSTATETASKS') or "").split())) |
| 104 | d.setVar('SSTATETASKS', " ".join(unique_tasks)) | 99 | d.setVar('SSTATETASKS', " ".join(unique_tasks)) |
| 105 | for task in unique_tasks: | 100 | for task in unique_tasks: |
