[llvm] r242341 - test-release.sh: Run both .o files through sed before comparing them

Hans Wennborg hans at hanshq.net
Wed Jul 15 15:18:26 PDT 2015


Author: hans
Date: Wed Jul 15 17:18:25 2015
New Revision: 242341

URL: http://llvm.org/viewvc/llvm-project?rev=242341&view=rev
Log:
test-release.sh: Run both .o files through sed before comparing them

On some systems (e.g. Mac OS X), sed will add a newline to the end of
the output if there wasn't one already. This would cause false
cmp errors since the .o file from Phase 2 was passed through sed and
the one from Phase 3 wasn't. Work around this by passing both through
sed.

Modified:
    llvm/trunk/utils/release/test-release.sh

Modified: llvm/trunk/utils/release/test-release.sh
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/release/test-release.sh?rev=242341&r1=242340&r2=242341&view=diff
==============================================================================
--- llvm/trunk/utils/release/test-release.sh (original)
+++ llvm/trunk/utils/release/test-release.sh Wed Jul 15 17:18:25 2015
@@ -464,9 +464,10 @@ for Flavor in $Flavors ; do
         for p2 in `find $llvmCore_phase2_objdir -name '*.o'` ; do
             p3=`echo $p2 | sed -e 's,Phase2,Phase3,'`
             # Substitute 'Phase2' for 'Phase3' in the Phase 2 object file in
-            # case there are build paths in the debug info.
-            if ! cmp --ignore-initial=16 <(sed -e 's,Phase2,Phase3,g' $p2) $p3 \
-                    > /dev/null 2>&1 ; then
+            # 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 --ignore-initial=16 <(sed -e 's,Phase2,Phase3,g' $p2) \
+                    <(sed -e '' $p3) > /dev/null 2>&1 ; then
                 echo "file `basename $p2` differs between phase 2 and phase 3"
             fi
         done





More information about the llvm-commits mailing list