Skip to content
Snippets Groups Projects

openharmony: Initial support for building on 64-bit targets and qemuarm-efi

1 file
+ 21
6
Compare changes
  • Side-by-side
  • Inline
@@ -70,9 +70,24 @@ inherit python3native gn_base ptest
B = "${S}/out/ohos-arm-release"
COMPATIBLE_MACHINE = "qemuarm"
OHOS_DEVICE_CPU_ARCH = "arm"
COMPATIBLE_MACHINE = "(qemuarm|qemuarm64|raspberrypi4-64)"
def get_ohos_arch(d):
arch = get_musl_loader_arch(d)
if arch.startswith("aarch64"):
return "arm64"
elif arch.startswith("arm"):
return "arm"
return arch
def get_ohos_libdir(d):
if get_ohos_arch(d).endswith("64"):
return "lib64"
else:
return "lib"
OHOS_DEVICE_CPU_ARCH = "${@get_ohos_arch(d)}"
#OHOS_DEVICE_NAME = "${MACHINE}"
OHOS_DEVICE_NAME = "qemuarm"
OHOS_DEVICE_COMPANY = "oniro"
OHOS_PRODUCT_NAME = "yocto-ohos-${OHOS_DEVICE_NAME}"
@@ -156,9 +171,9 @@ do_install () {
# then setup /system/lib and /system/bin symlinks to avoid breaking use of
# hard-coded paths.
mkdir -p ${D}/system ${D}${libdir} ${D}${bindir}
cp -r ${OHOS_PACKAGE_OUT_DIR}/system/lib/* ${D}${libdir}/
cp -r ${OHOS_PACKAGE_OUT_DIR}/system/${@get_ohos_libdir(d)}/* ${D}${libdir}/
install -m 755 -t ${D}${bindir}/ ${OHOS_PACKAGE_OUT_DIR}/system/bin/*
ln -sfT ..${libdir} ${D}/system/lib
ln -sfT ..${libdir} ${D}/system/${@get_ohos_libdir(d)}
ln -sfT ..${bindir} ${D}/system/bin
# system ability configurations
@@ -202,7 +217,7 @@ FILES:${PN}:remove = "${libdir}/${BPN}/*"
FILES:${PN}-configs = "${sysconfdir}"
FILES:${PN}-fonts = "${datadir}/fonts"
FILES:${PN} += "/system/bin /system/lib /system/profile"
FILES:${PN} += "/system/bin /system/${@get_ohos_libdir(d)} /system/profile"
FILES:${PN}-configs += "/system/etc"
FILES:${PN}-fonts += "/system/fonts"
Loading