diff options
Diffstat (limited to 'meta/classes-recipe/gio-module-cache.bbclass')
-rw-r--r-- | meta/classes-recipe/gio-module-cache.bbclass | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/meta/classes-recipe/gio-module-cache.bbclass b/meta/classes-recipe/gio-module-cache.bbclass new file mode 100644 index 0000000000..d12e03c4a0 --- /dev/null +++ b/meta/classes-recipe/gio-module-cache.bbclass | |||
@@ -0,0 +1,44 @@ | |||
1 | # | ||
2 | # Copyright OpenEmbedded Contributors | ||
3 | # | ||
4 | # SPDX-License-Identifier: MIT | ||
5 | # | ||
6 | |||
7 | PACKAGE_WRITE_DEPS += "qemu-native" | ||
8 | inherit qemu | ||
9 | |||
10 | GIO_MODULE_PACKAGES ??= "${PN}" | ||
11 | |||
12 | gio_module_cache_common() { | ||
13 | if [ "x$D" != "x" ]; then | ||
14 | $INTERCEPT_DIR/postinst_intercept update_gio_module_cache ${PKG} \ | ||
15 | mlprefix=${MLPREFIX} \ | ||
16 | binprefix=${MLPREFIX} \ | ||
17 | libdir=${libdir} \ | ||
18 | libexecdir=${libexecdir} \ | ||
19 | base_libdir=${base_libdir} \ | ||
20 | bindir=${bindir} | ||
21 | else | ||
22 | ${libexecdir}/${MLPREFIX}gio-querymodules ${libdir}/gio/modules/ | ||
23 | fi | ||
24 | } | ||
25 | |||
26 | python populate_packages:append () { | ||
27 | packages = d.getVar('GIO_MODULE_PACKAGES').split() | ||
28 | |||
29 | for pkg in packages: | ||
30 | bb.note("adding gio-module-cache postinst and postrm scripts to %s" % pkg) | ||
31 | |||
32 | postinst = d.getVar('pkg_postinst:%s' % pkg) | ||
33 | if not postinst: | ||
34 | postinst = '#!/bin/sh\n' | ||
35 | postinst += d.getVar('gio_module_cache_common') | ||
36 | d.setVar('pkg_postinst:%s' % pkg, postinst) | ||
37 | |||
38 | postrm = d.getVar('pkg_postrm:%s' % pkg) | ||
39 | if not postrm: | ||
40 | postrm = '#!/bin/sh\n' | ||
41 | postrm += d.getVar('gio_module_cache_common') | ||
42 | d.setVar('pkg_postrm:%s' % pkg, postrm) | ||
43 | } | ||
44 | |||