summaryrefslogtreecommitdiffstats
path: root/meta/classes/uninative.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'meta/classes/uninative.bbclass')
-rw-r--r--meta/classes/uninative.bbclass8
1 files changed, 6 insertions, 2 deletions
diff --git a/meta/classes/uninative.bbclass b/meta/classes/uninative.bbclass
index 1e19917a97..4d4f53ad4d 100644
--- a/meta/classes/uninative.bbclass
+++ b/meta/classes/uninative.bbclass
@@ -2,7 +2,7 @@ UNINATIVE_LOADER ?= "${UNINATIVE_STAGING_DIR}-uninative/${BUILD_ARCH}-linux/lib/
2UNINATIVE_STAGING_DIR ?= "${STAGING_DIR}" 2UNINATIVE_STAGING_DIR ?= "${STAGING_DIR}"
3 3
4UNINATIVE_URL ?= "unset" 4UNINATIVE_URL ?= "unset"
5UNINATIVE_TARBALL ?= "${BUILD_ARCH}-nativesdk-libc.tar.xz" 5UNINATIVE_TARBALL ?= "${BUILD_ARCH}-nativesdk-libc-${UNINATIVE_VERSION}.tar.xz"
6# Example checksums 6# Example checksums
7#UNINATIVE_CHECKSUM[aarch64] = "dead" 7#UNINATIVE_CHECKSUM[aarch64] = "dead"
8#UNINATIVE_CHECKSUM[i686] = "dead" 8#UNINATIVE_CHECKSUM[i686] = "dead"
@@ -34,6 +34,8 @@ python uninative_event_fetchloader() {
34 with open(loaderchksum, "r") as f: 34 with open(loaderchksum, "r") as f:
35 readchksum = f.read().strip() 35 readchksum = f.read().strip()
36 if readchksum == chksum: 36 if readchksum == chksum:
37 if "uninative" not in d.getVar("SSTATEPOSTUNPACKFUNCS"):
38 enable_uninative(d)
37 return 39 return
38 40
39 import subprocess 41 import subprocess
@@ -100,7 +102,7 @@ ${UNINATIVE_STAGING_DIR}-uninative/relocate_sdk.py \
100 ${UNINATIVE_LOADER} \ 102 ${UNINATIVE_LOADER} \
101 ${UNINATIVE_LOADER} \ 103 ${UNINATIVE_LOADER} \
102 ${UNINATIVE_STAGING_DIR}-uninative/${BUILD_ARCH}-linux/${bindir_native}/patchelf-uninative \ 104 ${UNINATIVE_STAGING_DIR}-uninative/${BUILD_ARCH}-linux/${bindir_native}/patchelf-uninative \
103 ${UNINATIVE_STAGING_DIR}-uninative/${BUILD_ARCH}-linux${base_libdir_native}/libc*.so" % chksum) 105 ${UNINATIVE_STAGING_DIR}-uninative/${BUILD_ARCH}-linux${base_libdir_native}/libc*.so*" % chksum)
104 subprocess.check_output(cmd, shell=True) 106 subprocess.check_output(cmd, shell=True)
105 107
106 with open(loaderchksum, "w") as f: 108 with open(loaderchksum, "w") as f:
@@ -167,5 +169,7 @@ python uninative_changeinterp () {
167 if not elf.isDynamic(): 169 if not elf.isDynamic():
168 continue 170 continue
169 171
172 os.chmod(f, s[stat.ST_MODE] | stat.S_IWUSR)
170 subprocess.check_output(("patchelf-uninative", "--set-interpreter", d.getVar("UNINATIVE_LOADER"), f), stderr=subprocess.STDOUT) 173 subprocess.check_output(("patchelf-uninative", "--set-interpreter", d.getVar("UNINATIVE_LOADER"), f), stderr=subprocess.STDOUT)
174 os.chmod(f, s[stat.ST_MODE])
171} 175}