comparison dev/llvm/llvm.sh @ 649:c4039d2948b6

vanilla: upgrade LLVM toolchain to 8.0.1
author David Demelier <markand@malikania.fr>
date Sat, 27 Jul 2019 23:11:09 +0200
parents 25cecc6dca48
children 71e6b0d31f00
comparison
equal deleted inserted replaced
648:e7bebea8c0eb 649:c4039d2948b6
14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 14 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
15 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
16 # 16 #
17 17
18 PKGNAME=llvm 18 PKGNAME=llvm
19 PKGVERSION=8.0.0 19 PKGVERSION=8.0.1
20 PKGREVISION=1 20 PKGREVISION=1
21 PKGLICENSE="MIT CUSTOM" 21 PKGLICENSE="MIT CUSTOM"
22 PKGSUMMARY="low level virtual machine compiler infrastructure" 22 PKGSUMMARY="low level virtual machine compiler infrastructure"
23 PKGDOWNLOAD="http://releases.llvm.org/$PKGVERSION/$PKGNAME-$PKGVERSION.src.tar.xz" 23 PKGDOWNLOAD="https://github.com/llvm/llvm-project/releases/download/llvmorg-$PKGVERSION/$PKGNAME-$PKGVERSION.src.tar.xz"
24 PKGDEPENDS="python/python compression/zlib dev/cmake:build" 24 PKGDEPENDS="lib/ncurses python/python compression/zlib dev/cmake:build"
25 PKGOPTIONS="DOXYGEN LIBCXX LLD SPHINX TARGETS" 25 PKGOPTIONS="DOXYGEN LIBCXX LLD SPHINX STATIC TARGETS"
26 26
27 : ${CHOST:=$(uname -m)-linux-musl} 27 : ${CHOST:=$(uname -m)-linux-musl}
28 : ${CC:=clang} 28 : ${CC:=clang}
29 : ${CFLAGS:=-O2} 29 : ${CFLAGS:=-O2}
30 : ${CXX:=clang++} 30 : ${CXX:=clang++}
31 : ${CXXFLAGS:=-O2} 31 : ${CXXFLAGS:=-O2}
32 : ${DOXYGEN:=yes} 32 : ${DOXYGEN:=yes}
33 : ${LIBCXX:=yes} 33 : ${LIBCXX:=yes}
34 : ${LLD:=yes} 34 : ${LLD:=yes}
35 : ${SPHINX:=yes} 35 : ${SPHINX:=yes}
36 : ${STATIC:=no}
36 : ${TARGETS:=all} 37 : ${TARGETS:=all}
37 38
38 if [ "$LIBCXX" = "yes" ]; then 39 if [ "$LIBCXX" = "yes" ]; then
39 with_libcxx="-DLLVM_ENABLE_LIBCXX=On" 40 with_libcxx="-DLLVM_ENABLE_LIBCXX=On"
40 else 41 else
59 with_sphinx="-DLLVM_ENABLE_SPHINX=On" 60 with_sphinx="-DLLVM_ENABLE_SPHINX=On"
60 else 61 else
61 with_sphinx="-DLLVM_ENABLE_SPHINX=Off" 62 with_sphinx="-DLLVM_ENABLE_SPHINX=Off"
62 fi 63 fi
63 64
65 if [ "$STATIC" = "yes" ]; then
66 with_static="-DLLVM_BUILD_LLVM_DYLIB=Off -DLLVM_LINK_LLVM_DYLIB=Off"
67 else
68 with_static="-DLLVM_BUILD_LLVM_DYLIB=On -DLLVM_LINK_LLVM_DYLIB=On"
69 fi
70
64 build() 71 build()
65 { 72 {
66 rm -rf $PKGNAME-$PKGVERSION.src 73 rm -rf $PKGNAME-$PKGVERSION.src
67 tar xvf $PKGNAME-$PKGVERSION.src.tar.xz 74 tar xvf $PKGNAME-$PKGVERSION.src.tar.xz
68 cd $PKGNAME-$PKGVERSION.src 75 cd $PKGNAME-$PKGVERSION.src
77 -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ 84 -DCMAKE_CXX_FLAGS="$CXXFLAGS" \
78 -DLLVM_ENABLE_EH=On \ 85 -DLLVM_ENABLE_EH=On \
79 -DLLVM_ENABLE_RTTI=On \ 86 -DLLVM_ENABLE_RTTI=On \
80 -DLLVM_HOST_TRIPLE=$CHOST \ 87 -DLLVM_HOST_TRIPLE=$CHOST \
81 -DLLVM_TARGETS_TO_BUILD=$TARGETS \ 88 -DLLVM_TARGETS_TO_BUILD=$TARGETS \
82 -DLLVM_BUILD_LLVM_DYLIB=On \
83 -DLLVM_LINK_LLVM_DYLIB=On \
84 $with_doxygen \ 89 $with_doxygen \
85 $with_libcxx \ 90 $with_libcxx \
86 $with_lld \ 91 $with_lld \
87 $with_sphinx 92 $with_sphinx \
93 $with_static
88 make 94 make
89 make DESTDIR=$DESTDIR install 95 make DESTDIR=$DESTDIR install
90 cd .. 96 cd ..
91 97
92 cd .. 98 cd ..