graphviz: add pkg_postinst script

It needs to run `dot -c` first before call 'dot' command, otherwise it
fails with:

| Format: "png" not recognized. No formats found.
| Perhaps "dot -c" needs to be run (with installer's privileges) to
  register the plugins?

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Kai Kang
2022-03-29 13:48:38 +08:00
committed by Khem Raj
parent 144a7fff1e
commit 49139cf082
@@ -17,7 +17,7 @@ DEPENDS = " \
DEPENDS:append:class-target = " ${BPN}-native"
DEPENDS:append:class-nativesdk = " ${BPN}-native"
inherit autotools-brokensep pkgconfig gettext
inherit autotools-brokensep pkgconfig gettext qemu
SRC_URI = "https://gitlab.com/api/v4/projects/4207231/packages/generic/${BPN}-releases/${PV}/${BP}.tar.xz \
"
@@ -81,6 +81,23 @@ graphviz_sstate_postinst() {
}
SYSROOT_PREPROCESS_FUNCS:append:class-native = " graphviz_sstate_postinst"
pkg_postinst:${PN} () {
if [ -n "$D" ]; then
if ${@bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', 'true', 'false', d)}; then
${@qemu_run_binary(d, '$D', '${bindir}/dot')} -c
fi
else
dot -c
fi
}
pkg_postrm:${PN} () {
rm -f $D${libdir}/graphviz/config*
rmdir --ignore-fail-on-non-empty $D${libdir}/graphviz
}
PACKAGE_WRITE_DEPS += "qemu-native"
PACKAGES =+ "${PN}-python ${PN}-perl ${PN}-demo"
FILES:${PN}-python += "${libdir}/python*/site-packages/ ${libdir}/graphviz/python/"