summaryrefslogtreecommitdiff
path: root/deps/v8/tools/gcmole/bootstrap.sh
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/tools/gcmole/bootstrap.sh')
-rwxr-xr-xdeps/v8/tools/gcmole/bootstrap.sh77
1 files changed, 37 insertions, 40 deletions
diff --git a/deps/v8/tools/gcmole/bootstrap.sh b/deps/v8/tools/gcmole/bootstrap.sh
index 05ab1cbb8e..a0386a8054 100755
--- a/deps/v8/tools/gcmole/bootstrap.sh
+++ b/deps/v8/tools/gcmole/bootstrap.sh
@@ -33,14 +33,11 @@
# that the resulting binary is easier transferable between different
# environments.
-CLANG_RELEASE=8.0
+LLVM_RELEASE=9.0.1
THIS_DIR="$(readlink -f "$(dirname "${0}")")"
-LLVM_DIR="${THIS_DIR}/../../third_party/llvm"
-CLANG_DIR="${THIS_DIR}/../../third_party/clang"
-BUILD_DIR="${THIS_DIR}/../../third_party/llvm+clang-build"
-
-LLVM_REPO_URL=${LLVM_URL:-https://llvm.org/svn/llvm-project}
+LLVM_PROJECT_DIR="${THIS_DIR}/bootstrap/llvm"
+BUILD_DIR="${THIS_DIR}/bootstrap/build"
# Die if any command dies.
set -e
@@ -72,59 +69,59 @@ if [[ "${OS}" = "Darwin" ]] && xcodebuild -version | grep -q 'Xcode 3.2' ; then
fi
fi
-echo Getting LLVM release "${CLANG_RELEASE}" in "${LLVM_DIR}"
-if ! svn co --force \
- "${LLVM_REPO_URL}/llvm/branches/release_${CLANG_RELEASE/./}" \
- "${LLVM_DIR}"; then
- echo Checkout failed, retrying
- rm -rf "${LLVM_DIR}"
- svn co --force \
- "${LLVM_REPO_URL}/llvm/branches/release_${CLANG_RELEASE/./}" \
- "${LLVM_DIR}"
+echo Getting LLVM release "${LLVM_RELEASE}" in "${LLVM_PROJECT_DIR}"
+if ! [ -d "${LLVM_PROJECT_DIR}" ] || ! git -C "${LLVM_PROJECT_DIR}" remote get-url origin | grep -q -F "https://github.com/llvm/llvm-project.git" ; then
+ rm -rf "${LLVM_PROJECT_DIR}"
+ git clone --depth=1 --branch "llvmorg-${LLVM_RELEASE}" "https://github.com/llvm/llvm-project.git" "${LLVM_PROJECT_DIR}"
+else
+ git -C "${LLVM_PROJECT_DIR}" fetch --depth=1 origin "llvmorg-${LLVM_RELEASE}"
+ git -C "${LLVM_PROJECT_DIR}" checkout FETCH_HEAD
fi
-echo Getting clang release "${CLANG_RELEASE}" in "${CLANG_DIR}"
-svn co --force \
- "${LLVM_REPO_URL}/cfe/branches/release_${CLANG_RELEASE/./}" \
- "${CLANG_DIR}"
-
# Echo all commands
set -x
NUM_JOBS=3
if [[ "${OS}" = "Linux" ]]; then
- NUM_JOBS="$(grep -c "^processor" /proc/cpuinfo)"
+ if [[ -e "/proc/cpuinfo" ]]; then
+ NUM_JOBS="$(grep -c "^processor" /proc/cpuinfo)"
+ else
+ # Hack when running in chroot
+ NUM_JOBS="32"
+ fi
elif [ "${OS}" = "Darwin" ]; then
NUM_JOBS="$(sysctl -n hw.ncpu)"
fi
# Build clang.
-if [ ! -e "${BUILD_DIR}" ]; then
- mkdir "${BUILD_DIR}"
-fi
-cd "${BUILD_DIR}"
-cmake -DCMAKE_CXX_FLAGS="-static-libstdc++" -DLLVM_ENABLE_TERMINFO=OFF \
- -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS=clang "${LLVM_DIR}"
-MACOSX_DEPLOYMENT_TARGET=10.5 make -j"${NUM_JOBS}"
-
-# Strip the clang binary.
-STRIP_FLAGS=
-if [ "${OS}" = "Darwin" ]; then
- # See http://crbug.com/256342
- STRIP_FLAGS=-x
-fi
-strip ${STRIP_FLAGS} bin/clang
-cd -
+# if [ ! -e "${BUILD_DIR}" ]; then
+# mkdir "${BUILD_DIR}"
+# fi
+# cd "${BUILD_DIR}"
+# cmake -GNinja -DCMAKE_CXX_FLAGS="-static-libstdc++" -DLLVM_ENABLE_TERMINFO=OFF \
+# -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS=clang \
+# -DLLVM_ENABLE_Z3_SOLVER=OFF "${LLVM_PROJECT_DIR}/llvm"
+# MACOSX_DEPLOYMENT_TARGET=10.5 ninja -j"${NUM_JOBS}"
+#
+# # Strip the clang binary.
+# STRIP_FLAGS=
+# if [ "${OS}" = "Darwin" ]; then
+# # See http://crbug.com/256342
+# STRIP_FLAGS=-x
+# fi
+# strip ${STRIP_FLAGS} bin/clang
+# cd -
# Build libgcmole.so
make -C "${THIS_DIR}" clean
-make -C "${THIS_DIR}" LLVM_SRC_ROOT="${LLVM_DIR}" \
- CLANG_SRC_ROOT="${CLANG_DIR}" BUILD_ROOT="${BUILD_DIR}" libgcmole.so
+make -C "${THIS_DIR}" LLVM_SRC_ROOT="${LLVM_PROJECT_DIR}/llvm" \
+ CLANG_SRC_ROOT="${LLVM_PROJECT_DIR}/clang" \
+ BUILD_ROOT="${BUILD_DIR}" libgcmole.so
set +x
echo
echo You can now run gcmole using this command:
echo
-echo CLANG_BIN=\"third_party/llvm+clang-build/bin\" lua tools/gcmole/gcmole.lua
+echo CLANG_BIN=\"tools/gcmole/gcmole-tools/bin\" python tools/gcmole/gcmole.py
echo