[libc++] Improve Python 3 compatibility for merge_archives.py
Popen.communicate() method in Python 2 returns a pair of strings, and in
Python 3 it returns a pair of byte-like objects unless universal_newlines
is set to True. This led to an error when using Python 3. With this patch,
merge_archives.py works fine with Python 3.
Thanks to Sergej Jaskiewicz for the patch.
Differential Revision: https://reviews.llvm.org/D66649
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@369764 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/utils/merge_archives.py b/utils/merge_archives.py
index 5c04bc9..4c31854 100755
--- a/utils/merge_archives.py
+++ b/utils/merge_archives.py
@@ -50,7 +50,8 @@
'stdin': subprocess.PIPE,
'stdout': subprocess.PIPE,
'stderr': subprocess.PIPE,
- 'cwd': cwd
+ 'cwd': cwd,
+ 'universal_newlines': True
}
p = subprocess.Popen(cmd, **kwargs)
out, err = p.communicate()