Guest User

Untitled

a guest
Nov 29th, 2012
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.96 KB | None | 0 0
  1. #!/bin/bash -xv
  2. ( (
  3. if [ "$(uname -o 2> /dev/null)" = "Cygwin" ]
  4. then
  5.   export CFLAGS=-mno-cygwin
  6. fi
  7.  
  8. HERE=$(dirname "$0")
  9. HERE=$(cd "$HERE" ; echo $PWD)
  10. cd $HERE/..
  11. LLVM_VERSION=3.1
  12. LLVM_SRC_LINK=http://llvm.org/releases/$LLVM_VERSION/llvm-$LLVM_VERSION.src.tar.gz
  13. CLANG_SRC_LINK=http://llvm.org/releases/$LLVM_VERSION/clang-$LLVM_VERSION.src.tar.gz
  14. COMPILER_RT_SRC_LINK=http://llvm.org/releases/$LLVM_VERSION/compiler-rt-$LLVM_VERSION.src.tar.gz
  15. LLVM_OBJECTS=/tmp/llvm-objects
  16. PROCESSORS=$(cat /proc/cpuinfo 2> /dev/null | grep processor | wc -l)
  17. INSTALL_PREFIX=$PWD/llvm_install
  18. if [ "$PROCESSORS" -eq 0 ]
  19. then
  20.     PROCESSORS=$(system_profiler | grep -i "total number of cores" | sed -e 's/.*: *\([0-9]*\).*/\1/g')
  21.     if [ "$PROCESSORS" -eq 0 ]
  22.     then
  23.        PROCESSORS=1
  24.     fi
  25. fi
  26.  
  27.  
  28. rm -rf $INSTALL_PREFIX $LLVM_OBJECTS
  29. rm -rf llvm
  30. mkdir -p llvm/tools/clang
  31. mkdir -p llvm/project/compiler-rt
  32. wget "$LLVM_SRC_LINK" -O - | tar --strip-components=1 -x -z -f - -C llvm || exit
  33. wget "$CLANG_SRC_LINK" -O - | tar --strip-components=1 -x -z -f - -C llvm/tools/clang || exit
  34. wget "$COMPILER_RT_SRC_LINK" -O - | tar --strip-components=1 -x -z -f - -C llvm/project/compiler-rt || exit
  35.  
  36. mkdir -p $LLVM_OBJECTS
  37. cd $LLVM_OBJECTS || exit
  38. CAML_LLVM_LIB=$(opam config -var lib)/llvm
  39. rm -rf $CAML_LLVM_LIB
  40. mkdir -p $CAML_LLVM_LIB || exit
  41. $HERE/../llvm/configure --prefix=$INSTALL_PREFIX \
  42.                     --enable-docs \
  43.                     llvm_cv_cxx_visibility_inlines_hidden=no \
  44.                     --enable-shared \
  45.                     --enable-debug-runtime \
  46.                     --enable-debug-symbols \
  47.                     --enable-jit \
  48.                     --enable-doxygen \
  49.                     --enable-assertions \
  50.                     --with-ocaml-libdir=$CAML_LLVM_LIB \
  51.                     || exit
  52. make -j$PROCESSORS || exit
  53. make install -k || exit
  54. ln $CAML_LLVM_LIB/META.llvm $CAML_LLVM_LIB/META
  55. rm -rf $LLVM_OBJECTS
  56. ) 2>&1 ) | tee llvm.log
Advertisement
Add Comment
Please, Sign In to add comment