[oe-commits] [openembedded-core] 06/14: xmlcatalog: new class to update the XML catalogue

git at git.openembedded.org git at git.openembedded.org
Fri Apr 5 16:33:59 UTC 2019


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master
in repository openembedded-core.

commit 28c58cff76b24cea2745352c6557a81c04d85138
Author: Ross Burton <ross.burton at intel.com>
AuthorDate: Thu Apr 4 23:16:36 2019 +0100

    xmlcatalog: new class to update the XML catalogue
    
    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>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/classes/xmlcatalog.bbclass | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/meta/classes/xmlcatalog.bbclass b/meta/classes/xmlcatalog.bbclass
new file mode 100644
index 0000000..075aef8
--- /dev/null
+++ b/meta/classes/xmlcatalog.bbclass
@@ -0,0 +1,24 @@
+# A whitespace-separated list of XML catalogs to be registered, for example
+# "${sysconfdir}/xml/docbook-xml.xml".
+XMLCATALOGS ?= ""
+
+SYSROOT_PREPROCESS_FUNCS_append = " xmlcatalog_sstate_postinst"
+
+xmlcatalog_complete() {
+	ROOTCATALOG="${STAGING_ETCDIR_NATIVE}/xml/catalog"
+	if [ ! -f $ROOTCATALOG ]; then
+		mkdir --parents $(dirname $ROOTCATALOG)
+		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
+}

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list