summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Wennborg <hans@hanshq.net>2016-01-27 00:19:05 +0000
committerHans Wennborg <hans@hanshq.net>2016-01-27 00:19:05 +0000
commit6c52b02e7d0df765da608d8119ae8a20de142cff (patch)
treea95bbd944bcd6743c3e2416ddcd6a94d192041a8
parent763545c6d7db9d930cbd532c0b2c1ff0b68d2829 (diff)
downloadbcm5719-llvm-6c52b02e7d0df765da608d8119ae8a20de142cff.tar.gz
bcm5719-llvm-6c52b02e7d0df765da608d8119ae8a20de142cff.zip
test-release.sh: Ignore LC_CTYPE in sed invocation on Darwin
Here, sed is used to prepare object files for comparison via cmp. On my Darwin 15.4.0 machine, LC_CTYPE is set to UTF-8 (by default, I believe). Under these circumstances, anything sed is made to read will be treated as UTF-8, prompting it to signal an error if it is not, like so: % sed s/a/b/ <(head -n1 /dev/random) >/dev/null; echo $? sed: RE error: illegal byte sequence 1 % To make sed work as expected, I need to set LC_CTYPE to C: % env LC_CTYPE=C sed s/a/b/ <(head -n1 /dev/random) >/dev/null; echo $? 0 % Without this change, sed will exit with an error for every single file that it compares between phase 2 and phase 3, thereby making it look as if the differences were far larger than they are. Patch by Elias Pipping! Differential Revision: http://reviews.llvm.org/D16548 llvm-svn: 258891
-rwxr-xr-xllvm/utils/release/test-release.sh5
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/utils/release/test-release.sh b/llvm/utils/release/test-release.sh
index 8d4348304da..81166d46ffd 100755
--- a/llvm/utils/release/test-release.sh
+++ b/llvm/utils/release/test-release.sh
@@ -541,8 +541,9 @@ for Flavor in $Flavors ; do
# Substitute 'Phase2' for 'Phase3' in the Phase 2 object file in
# case there are build paths in the debug info. On some systems,
# sed adds a newline to the output, so pass $p3 through sed too.
- if ! cmp -s <(sed -e 's,Phase2,Phase3,g' $p2) <(sed -e '' $p3) \
- 16 16 ; then
+ if ! cmp -s \
+ <(env LC_CTYPE=C sed -e 's,Phase2,Phase3,g' $p2) \
+ <(env LC_CTYPE=C sed -e '' $p3) 16 16; then
echo "file `basename $p2` differs between phase 2 and phase 3"
fi
done
OpenPOWER on IntegriCloud