[OE-core] [PATCH 1/9] xmlcatalog: new class to update the XML catalogue
Ross Burton
ross.burton at intel.com
Wed Apr 3 17:04:04 UTC 2019
This is a new class to handle recipes that need to add/remove entries in the XML
Catalog(ue)[1]. In the future it will handle updating the catalogue on the
target, but the immediate requirement is during the build so currently this only
works with native recipes.
Note that as this is a new class and target use hasn't been implemented yet, it
is possible that the behaviour of this class will change.
[1] https://en.wikipedia.org/wiki/XML_catalog
Signed-off-by: Ross Burton <ross.burton at intel.com>
---
meta/classes/xmlcatalog.bbclass | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
create mode 100644 meta/classes/xmlcatalog.bbclass
diff --git a/meta/classes/xmlcatalog.bbclass b/meta/classes/xmlcatalog.bbclass
new file mode 100644
index 00000000000..dc63a0beb4d
--- /dev/null
+++ b/meta/classes/xmlcatalog.bbclass
@@ -0,0 +1,22 @@
+XMLCATALOGS ?= ""
+
+DEPENDS_append_class-native = " libxml2-native"
+SYSROOT_PREPROCESS_FUNCS_append = " xmlcatalog_sstate_postinst"
+
+xmlcatalog_complete() {
+ ROOTCATALOG="${STAGING_ETCDIR_NATIVE}/xml/catalog"
+ if [ ! -f \$ROOTCATALOG ]; then
+ xmlcatalog --noout --create \$ROOTCATALOG
+ fi
+ for CATALOG in ${XMLCATALOGS}; do
+ xmlcatalog --noout --add nextCatalog unused file://\$CATALOG \$ROOTCATALOG
+ done
+}
+
+xmlcatalog_sstate_postinst() {
+ mkdir -p ${SYSROOT_DESTDIR}${bindir}
+ dest=${SYSROOT_DESTDIR}${bindir}/postinst-${PN}-xmlcatalog
+ echo '#!/bin/sh' > $dest
+ echo "${xmlcatalog_complete}" >> $dest
+ chmod 0755 $dest
+}
--
2.11.0
More information about the Openembedded-core
mailing list