summaryrefslogtreecommitdiffstats
path: root/waf_generator.py
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2016-04-27 12:03:17 +1000
committerChris Johns <chrisj@rtems.org>2016-04-27 12:08:23 +1000
commitf1fcdba8631b0d792c865f9611b1890bc02bfbe0 (patch)
tree61186d81fa441424b11f95e88c84b6568be2fb4b /waf_generator.py
parentAdd root bus support functions (diff)
downloadrtems-libbsd-f1fcdba8631b0d792c865f9611b1890bc02bfbe0.tar.bz2
waf: Refector the builder to work with Python3 and UTF-8 source files.
Python 3 requires better UTF-8 handling of files and FreeBSD has UTF-8 characters in some files. Refactor builder.py to clean up the code and remove the need to have a temporary file. Update other scripts to use the new code.
Diffstat (limited to 'waf_generator.py')
-rwxr-xr-xwaf_generator.py17
1 files changed, 3 insertions, 14 deletions
diff --git a/waf_generator.py b/waf_generator.py
index ed00e98d..81ba02b8 100755
--- a/waf_generator.py
+++ b/waf_generator.py
@@ -147,20 +147,9 @@ class ModuleManager(builder.ModuleManager):
self.script += line + os.linesep
def write(self):
- try:
- out = tempfile.NamedTemporaryFile(delete = False)
- try:
- out.write(bytes(self.script, sys.stdin.encoding))
- except:
- out.write(self.script)
- out.close()
- wscript = builder.RTEMS_DIR + '/libbsd_waf.py'
- builder.processIfDifferent(out.name, wscript, "libbsd_waf.py")
- finally:
- try:
- os.remove(out.name)
- except:
- pass
+ name = os.path.join(builder.RTEMS_DIR, 'libbsd_waf.py')
+ converter = builder.Converter()
+ converter.convert(name, name, src_contents = self.script)
def setGenerators(self):
self.generator['convert'] = builder.Converter