Bug 1302891 - Part x - Use newer clang (with dlopen support) (Bug 1303644) draft
authorEnes Goktas <egoktas@mozilla.com>
Mon, 19 Sep 2016 01:12:41 -0700
changeset 418769 2a01b49551151188600ff989aa1ced67a5fa4b35
parent 418768 a875f74c0879abe8596b2321212fd5ad91b12f2f
child 532435 2fb4b5c5f640f9902b515f391c2ca5641d27bac6
push id30776
push userbmo:enes.goktas@gmail.com
push dateThu, 29 Sep 2016 05:44:28 +0000
bugs1302891, 1303644
milestone52.0a1
Bug 1302891 - Part x - Use newer clang (with dlopen support) (Bug 1303644) MozReview-Commit-ID: F0rlyQgqkqb
old-configure.in
--- a/old-configure.in
+++ b/old-configure.in
@@ -201,17 +201,38 @@ AC_SUBST(OBJCOPY)
 dnl ========================================================
 dnl = Use Control-Flow Integrity in Clang
 dnl ========================================================
 MOZ_ARG_ENABLE_BOOL(cfi,
 [  --enable-cfi Enable CFI (default=no)],
     MOZ_CFI=1,
     MOZ_CFI= )
 if test -n "$MOZ_CFI"; then
+
+
+## REMOVE OLD CLANG
+rm -rf $_topsrcdir/clang
+
+## PREPARE NEW CLANG
+wget -c -O $_topsrcdir/clang.patched.tar.xz http://www.goktas.nl/clang.patched.tar.xz
+md5sumofclang=`md5sum $_topsrcdir/clang.patched.tar.xz | cut -d' ' -f1`
+echo $md5sumofclang
+if test "$md5sumofclang" = "b0ea5b3ada3ee8328c2f9212fbf97be7"; then
+        echo "md5sum of clang.patched.tar.xz is correct."
+        echo "Extracting clang.patched.tar.xz to $_topsrcdir"
+        echo tar -xf $_topsrcdir/clang.patched.tar.xz -C $_topsrcdir
+        tar -xf $_topsrcdir/clang.patched.tar.xz -C $_topsrcdir
+        echo "Extracting clang is done."
+else
+        echo "md5sum of clang.patched.tar.xz is incorrect. ($md5sumofclang)"
+        exit 1
+fi
+
     # add vcall cfi flags
+
     CFLAGS="$CFLAGS -flto -fsanitize=cfi-vcall -fsanitize-cfi-cross-dso"
     CXXFLAGS="$CXXFLAGS -flto -fsanitize=cfi-vcall -fsanitize-cfi-cross-dso"
     LDFLAGS="$LDFLAGS -flto -fsanitize=cfi-vcall -fsanitize-cfi-cross-dso -ldl"
 
     # enable/disable code based on this flag
     CFLAGS="$CFLAGS -DMOZ_CFI"
     AC_DEFINE(MOZ_CFI)