diff options
Diffstat (limited to 'meta/classes-recipe/xmlcatalog.bbclass')
-rw-r--r-- | meta/classes-recipe/xmlcatalog.bbclass | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/meta/classes-recipe/xmlcatalog.bbclass b/meta/classes-recipe/xmlcatalog.bbclass new file mode 100644 index 0000000000..5826d0a8b5 --- /dev/null +++ b/meta/classes-recipe/xmlcatalog.bbclass | |||
@@ -0,0 +1,32 @@ | |||
1 | # | ||
2 | # Copyright OpenEmbedded Contributors | ||
3 | # | ||
4 | # SPDX-License-Identifier: MIT | ||
5 | # | ||
6 | |||
7 | DEPENDS = "libxml2-native" | ||
8 | |||
9 | # A whitespace-separated list of XML catalogs to be registered, for example | ||
10 | # "${sysconfdir}/xml/docbook-xml.xml". | ||
11 | XMLCATALOGS ?= "" | ||
12 | |||
13 | SYSROOT_PREPROCESS_FUNCS:append = " xmlcatalog_sstate_postinst" | ||
14 | |||
15 | xmlcatalog_complete() { | ||
16 | ROOTCATALOG="${STAGING_ETCDIR_NATIVE}/xml/catalog" | ||
17 | if [ ! -f $ROOTCATALOG ]; then | ||
18 | mkdir --parents $(dirname $ROOTCATALOG) | ||
19 | xmlcatalog --noout --create $ROOTCATALOG | ||
20 | fi | ||
21 | for CATALOG in ${XMLCATALOGS}; do | ||
22 | xmlcatalog --noout --add nextCatalog unused file://$CATALOG $ROOTCATALOG | ||
23 | done | ||
24 | } | ||
25 | |||
26 | xmlcatalog_sstate_postinst() { | ||
27 | mkdir -p ${SYSROOT_DESTDIR}${bindir} | ||
28 | dest=${SYSROOT_DESTDIR}${bindir}/postinst-${PN}-xmlcatalog | ||
29 | echo '#!/bin/sh' > $dest | ||
30 | echo '${xmlcatalog_complete}' >> $dest | ||
31 | chmod 0755 $dest | ||
32 | } | ||