summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'BuildTools/DocBook')
-rw-r--r--BuildTools/DocBook/SCons/DocBook.py21
1 files changed, 17 insertions, 4 deletions
diff --git a/BuildTools/DocBook/SCons/DocBook.py b/BuildTools/DocBook/SCons/DocBook.py
index ffb0bfc..d7c95ba 100644
--- a/BuildTools/DocBook/SCons/DocBook.py
+++ b/BuildTools/DocBook/SCons/DocBook.py
@@ -7,2 +7,15 @@ import xml.dom.minidom, re, os.path, sys
+def maybeBytesToString(s):
+ if isinstance(s, bytes):
+ return s.decode('utf-8')
+ return s
+
+def prepareForWrite(s):
+ try:
+ if isinstance(s, unicode):
+ return s.encode('utf-8')
+ except NameError:
+ pass
+ return s
+
def generate(env) :
@@ -34,4 +47,4 @@ def generate(env) :
- docbook_xml_dir = source[0].get_contents()
- docbook_xsl_dir = source[1].get_contents()
+ docbook_xml_dir = maybeBytesToString(source[0].get_contents())
+ docbook_xsl_dir = maybeBytesToString(source[1].get_contents())
if env["PLATFORM"] == "win32" :
@@ -41,4 +54,4 @@ def generate(env) :
file.write(catalog % {
- "docbook_xml_dir" : docbook_xml_dir,
- "docbook_xsl_dir" : docbook_xsl_dir,
+ "docbook_xml_dir" : prepareForWrite(docbook_xml_dir),
+ "docbook_xsl_dir" : prepareForWrite(docbook_xsl_dir),
})