summaryrefslogtreecommitdiff
path: root/recipes/docbook-xml.recipe
diff options
context:
space:
mode:
authorAndoni Morales Alastruey <ylatuya@gmail.com>2012-03-07 20:11:00 +0100
committerAndoni Morales Alastruey <ylatuya@gmail.com>2012-03-20 17:19:11 +0100
commit134b7611d54c3ed27b26cba123aacc860fafc48b (patch)
tree3b434cf3cc7025b1027b716a397e48a899f447a4 /recipes/docbook-xml.recipe
parent51874f223708eb06d3ebf33e76e9b95002e0ea9e (diff)
docbook-xsl: add new recipe
Diffstat (limited to 'recipes/docbook-xml.recipe')
-rw-r--r--recipes/docbook-xml.recipe35
1 files changed, 35 insertions, 0 deletions
diff --git a/recipes/docbook-xml.recipe b/recipes/docbook-xml.recipe
new file mode 100644
index 00000000..c9a50cca
--- /dev/null
+++ b/recipes/docbook-xml.recipe
@@ -0,0 +1,35 @@
+from cerbero import recipe
+
+class Recipe(recipe.Recipe):
+ name = 'docbook-xml'
+ version = '4.3'
+
+ def prepare(self):
+ self._remove_steps(['configure', 'compile'])
+
+ def install(self):
+ import os
+ etc_catalog_path = os.path.join(self.config.prefix, 'etc', 'catalog.xml')
+ new_catalog_path = os.path.join(self.build_dir, 'catalog.xml')
+
+ def read_catalog(path):
+ try:
+ with open(path, 'r') as f:
+ lines= f.readlines()
+ if len(lines) != 0:
+ lines = lines[2:-1]
+ except Exception, ex:
+ lines = ['']
+ return ''.join(lines)
+
+ etc_catalog_lines = read_catalog(etc_catalog_path)
+ new_catalog_lines = read_catalog(new_catalog_path)
+ if new_catalog_lines in etc_catalog_lines:
+ return
+ with open(etc_catalog_path, 'w') as f:
+ f.write("<?xml version='1.0'?>\n")
+ f.write('<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">\n')
+ f.write(etc_catalog_lines)
+ f.write("\n")
+ f.write(new_catalog_lines)
+ f.write("</catalog>")