diff options
author | Stephane Desneux <stephane.desneux@iot.bzh> | 2017-03-27 16:44:59 +0200 |
---|---|---|
committer | Stephane Desneux <stephane.desneux@iot.bzh> | 2017-03-27 16:46:17 +0200 |
commit | 7fcf42ba21c2a00a60f32140924fefc3cc39ad28 (patch) | |
tree | 49b2eaa11dd2c241dd7fe77b74b7ced1ac1d1d81 /meta-app-framework/classes/aglwgt.bbclass | |
parent | 5875cc45a671b1a3e7671ec84ec6ebb1ab17696a (diff) | |
parent | 976e5d5e866d4099e55a50e0fa8d898ea36ad371 (diff) |
Merge: migrate appfw from meta-agl-extra
Change-Id: Ic56b86228bb748a54352e79acadf0da1c947be76
Signed-off-by: Stephane Desneux <stephane.desneux@iot.bzh>
Diffstat (limited to 'meta-app-framework/classes/aglwgt.bbclass')
-rw-r--r-- | meta-app-framework/classes/aglwgt.bbclass | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/meta-app-framework/classes/aglwgt.bbclass b/meta-app-framework/classes/aglwgt.bbclass new file mode 100644 index 000000000..afe9a5516 --- /dev/null +++ b/meta-app-framework/classes/aglwgt.bbclass @@ -0,0 +1,61 @@ +# +# aglwgt bbclass +# +# Jan-Simon Moeller, jsmoeller@linuxfoundation.org +# +# This class expects a "make package" target in the makefile +# which creates the wgt files in the package/ subfolder. +# The makefile needs to use wgtpkg-pack. +# + + +# 'wgtpkg-pack' in af-main-native is required. +DEPENDS_append = " af-main-native" + +# for bindings af-binder is required. +DEPENDS_append = " af-binder" + +do_aglwgt_package() { + cd ${B} + make package || ( \ + bbwarn "Your makefile must support the 'make package' target" ; \ + bbwarn "and generate a .wgt file using wgtpack in the"; \ + bbwarn "subfolder ./package/ !" ; \ + bbwarn "Fix your package as it will not work within the SDK" ; \ + bbwarn "See: https://wiki.automotivelinux.org/troubleshooting/app-recipes" \ + ) +} + +python () { + d.setVarFlag('do_aglwgt_deploy', 'fakeroot', '1') +} + + +POST_INSTALL_LEVEL ?= "10" +POST_INSTALL_SCRIPT ?= "${POST_INSTALL_LEVEL}-${PN}.sh" + +EXTRA_WGT_POSTINSTALL ?= "" + +do_aglwgt_deploy() { + install -d ${D}/usr/AGL/apps + install -m 0644 ${B}/package/*.wgt ${D}/usr/AGL/apps/ + APP_FILES="" + for file in ${D}/usr/AGL/apps/*.wgt;do + APP_FILES="${APP_FILES} $(basename $file)"; + done + install -d ${D}/${sysconfdir}/agl-postinsts + cat > ${D}/${sysconfdir}/agl-postinsts/${POST_INSTALL_SCRIPT} <<EOF +#!/bin/sh -e +for file in ${APP_FILES}; do + /usr/bin/afm-install install /usr/AGL/apps/\$file +done +sync +${EXTRA_WGT_POSTINSTALL} +EOF + chmod a+x ${D}/${sysconfdir}/agl-postinsts/${POST_INSTALL_SCRIPT} +} + +FILES_${PN} += "/usr/AGL/apps/*.wgt ${sysconfdir}/agl-postinsts/${POST_INSTALL_SCRIPT}" + +addtask aglwgt_deploy before do_package after do_install +addtask aglwgt_package before do_aglwgt_deploy after do_compile |