Skip to content

Instantly share code, notes, and snippets.

@geoff-nixon
Created January 26, 2015 06:34
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save geoff-nixon/b238198fdba85566b453 to your computer and use it in GitHub Desktop.
Save geoff-nixon/b238198fdba85566b453 to your computer and use it in GitHub Desktop.
#!/bin/sh -x
unset AR
unset LIBTOOL
unset LD
PREFIX=/cores/llvm-trunk
TMP_PREFIX=/tmp/llvm
BUILD=x86_64-apple-darwin11
LLVM_VER=3.5.1 # Use release version.
# DEVEL=git # Use git.
# DEVEL=trunk # Use svn.
DEVEL=branches/release_36 # Use svn.
ZLIB_VER=1.2.8
LIBFFI_VER=3.2.1
LIBEDIT_VER=20141030-3.1
LIBXML2_VER=2.9.2
PYTHON_VER=2.7.9
DEPLOYMENT_TARGET=10.7
SYSROOT=/cores/SDKs/MacOSX10.7.sdk
CC=clang
CXX=clang++
# ISL_VER= # Use git, so we can pull in imath as submodule.
# NCURSES_VER= # Use git, so we get up-to-date patches.
LLVM_SRC_DIR=$TMP_PREFIX/src
DEPS_DIR=$TMP_PREFIX/deps
DEPS_SRC_DIR=$DEPS_DIR/src
LLVM_REL_URI=http://llvm.org/releases/$LLVM_VER
LLVM_REL_SUF=-$LLVM_VER.src.tar.xz
NCURSES_TMP_DIR=/tmp/ncurses
dl(){ curl -L\# "$@" ;} # wget -qo-
untar(){ bsdtar x "$@" ;}
export CPPFLAGS="-Ofast -flto -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -Qunused-arguments -Wno-error -fPIC -fblocks -flimit-debug-info -fgnu-keywords -Xarch_i386 -march=yonah -Xarch_x86_64 -march=native -Xarch_x86_64 -mtune=core-avx-i -stdlib=libc++ -g0 -mmacosx-version-min=10.7 -isysroot /cores/SDKs/MacOSX10.7.sdk -w -DNDEBUG -I$DEPS_DIR/include"
export LFLAGS="-Wl,-S,-w,-dead_strip,-dead_strip_dylibs,-headerpad_max_install_names,-no_eh_labels,-no_uuid,-no_version_load_command,-search_paths_first,-macosx_version_min,10.7,-syslibroot,/cores/SDKs/MacOSX10.7.sdk"
export CFLAGS="$CPPFLAGS -std=gnu11"
export CXXFLAGS="$CPPFLAGS -std=gnu++14"
export LDFLAGS="$CPPFLAGS $LFLAGS -L$DEPS_DIR/lib -lc++ -lc++abi -lunwind"
export PKG_CONFIG_PATH=$DEPS_DIR/lib/pkgconfig
export PATH=$TMP_PREFIX/bin:$NCURSES_TMP_DIR/bin:$DEPS_DIR/bin:/tmp/llvm-old/bin:$PATH
rm -rf $TMP_PREFIX; mkdir -p $DEPS_SRC_DIR; mkdir -p $DEPS_DIR/lib; cd $DEPS_DIR/lib
for each in libc++ libc++abi libunwind; do ln -s /usr/lib/libc++.dylib $each.a ||:; done
zlib()
{
cd $DEPS_SRC_DIR; rm -rf zlib*
dl http://zlib.net/zlib-$ZLIB_VER.tar.xz | untar; cd zlib*
./configure --prefix=$DEPS_DIR --static
make uninstall ||:; make; make check; make install
}
libffi()
{
cd $DEPS_SRC_DIR; rm -rf libffi*
dl ftp://sourceware.org/pub/libffi/libffi-$LIBFFI_VER.tar.gz | untar; cd libffi*
./configure --prefix=$DEPS_DIR --build=$BUILD --disable-shared --with-pic
make uninstall ||:; make; make install
rm -rf $DEPS_DIR/include/ffi
mv $DEPS_DIR/lib/libffi-*/include $DEPS_DIR/include/ffi; rm -rf $DEPS_DIR/lib/libffi-*
rm -rf $DEPS_DIR/lib/*.la
}
isl(){
cd $DEPS_SRC_DIR; rm -rf isl*
dl http://repo.or.cz/w/isl.git/snapshot/master.tar.gz | untar; cd isl*
rm -rf imath
dl https://github.com/creachadair/imath/archive/master.tar.gz | untar; mv imath-master imath
autoreconf -ifWnone
./configure --prefix=$DEPS_DIR --build=$BUILD --disable-shared --with-pic --with-int=imath
make uninstall ||:; make; make check; make install
rm -rf $DEPS_DIR/lib/*.la
}
ncurses(){
cd $DEPS_SRC_DIR; rm -rf ncurses; git clone git://ncurses.scripts.mit.edu/ncurses; cd ncurses
rm -rf $NCURSES_TMP_DIR
TINFO=ansi,dtterm,linux,nsterm,rxvt,vt52,vt100,vt102,xterm,xterm-new,xterm-16color,xterm-256color
./configure \
--prefix=$NCURSES_TMP_DIR \
--build=$BUILD \
--enable-colorfgbg \
--enable-const \
--enable-ext-colors \
--enable-ext-mouse \
--enable-pc-files \
--enable-pthreads-eintr \
--enable-sigwinch \
--enable-symlinks \
--enable-tcap-names \
--enable-weak-symbols \
--enable-wgetch-events \
--enable-widec \
--enable-xmc-glitch \
--enable-sp-funcs \
--enable-const \
--enable-interop \
--with-sysmouse \
--with-pkg-config-libdir=$NCURSES_TMP_DIR/lib/pkgconfig \
--without-ada \
--without-debug \
--without-manpages \
--without-cxx-binding \
--without-tests
make; make install
git pull; git clean -dxf; git reset --hard
./configure \
--prefix=$DEPS_DIR \
--build=$BUILD \
--enable-colorfgbg \
--enable-const \
--enable-ext-colors \
--enable-ext-mouse \
--enable-pc-files \
--enable-pthreads-eintr \
--enable-sigwinch \
--enable-symlinks \
--enable-tcap-names \
--enable-weak-symbols \
--enable-wgetch-events \
--enable-widec \
--enable-xmc-glitch \
--enable-sp-funcs \
--enable-const \
--enable-interop \
--with-sysmouse \
--with-pkg-config-libdir=$DEPS_DIR/lib/pkgconfig \
--without-ada \
--without-debug \
--without-manpages \
--without-cxx-binding \
--without-tests \
--without-progs \
--disable-database \
--disable-db-install \
--with-fallbacks=$TINFO
make uninstall ||:; make; make install; rm -rf $NCURSES_TMP_DIR
cd $DEPS_DIR/include; ln -s ncursesw ncurses ||:
cd $DEPS_DIR/lib/pkgconfig; for i in $(ls *w.a); do ln -s $i $(echo $i | sed 's|w||') ||:; done
cd $DEPS_DIR/lib; for i in $(ls *w.a); do ln -s $i $(echo $i | sed 's|w||') ||:; done
ln -s libncursesw.a libncurses.a ||:
ln -s libncursesw.a libcurses.a ||:
ln -s libncursesw.a libtermcap.a ||:
cd $DEPS_DIR/bin; for i in $(ls); do echo $i | grep config >/dev/null 2>&1 || rm $i; done
ln -s ncursesw6-config ncursesw-config ||:
ln -s ncursesw6-config ncurses-config ||:
ln -s ncursesw6-config ncurses5.4-config ||:
}
libedit()
{
cd $DEPS_SRC_DIR; rm -rf libedit*
dl http://thrysoee.dk/editline/libedit-$LIBEDIT_VER.tar.gz | untar; cd libedit*
./configure \
--prefix=$DEPS_DIR \
--build=$BUILD \
--disable-shared \
--with-pic \
--enable-widec
make uninstall ||:; make; make install
cd $DEPS_DIR/include; ln -s editline readline ||:
cd $DEPS_DIR/lib; ln -s libedit.a libreadline.a ||:
rm -rf $DEPS_DIR/lib/*.la
}
libxml2()
{
cd $DEPS_SRC_DIR; rm -rf libxml2*
dl http://xmlsoft.org/sources/libxml2-$LIBXML2_VER.tar.gz | untar; cd libxml2*
./configure \
--prefix=$DEPS_DIR \
--build=$BUILD \
--disable-shared \
--with-pic \
--without-zlib \
--with-readline=$DEPS_DIR \
--without-iconv \
--without-lzma
make uninstall ||:; make; make install
rm -rf $DEPS_DIR/lib/*.la $DEPS_DIR/lib/xml2conf.sh
cd $DEPS_DIR/bin; for i in $(ls); do echo $i | grep config >/dev/null 2>&1 || rm $i; done
}
libpython(){
cd $DEPS_SRC_DIR; rm -rf Python*
dl http://www.python.org/ftp/python/$PYTHON_VER/Python-$PYTHON_VER.tar.xz | untar; cd Python*
./configure \
--prefix=$DEPS_DIR \
--build=$BUILD \
--disable-shared \
--disable-framework \
--disable-toolbox-glue \
--enable-ipv6 \
--enable-unicode \
--with-threads \
--without-gcc
make uninstall ||:; make install -i
rm -rf $DEPS_DIR/lib/*.la $DEPS_DIR/lib/python2.7; chmod -x $DEPS_DIR/lib/libpython2.7.a
cd $DEPS_DIR/bin; for i in $(ls); do echo $i | grep config >/dev/null 2>&1 || rm $i; done
rm python*config
}
getllvm(){
mkdir -p $LLVM_SRC_DIR; cd $LLVM_SRC_DIR; rm -rf *
if [ -$DEVEL- = -- ]; then for project in \
cfe \
clang-tools-extra \
compiler-rt \
dragonegg \
libcxx \
libcxxabi \
lld \
llvm \
openmp \
polly \
# lldb \
# test-suite
do dl $LLVM_REL_URI/$project$LLVM_REL_SUF | tar x; mv $project* $project &
done; wait
mv polly lld llvm/tools; mv cfe llvm/tools/clang
# mv lldb llvm/tools
mv clang-tools-extra llvm/tools/clang/tools/extra
mv compiler-rt dragonegg libcxx libcxxabi openmp llvm/projects
# mv test-suite llvm/projects
mv llvm llvm-project
cd llvm-project
echo 'H4sIADzAt1QCA7VXXXOiShB951f0Nam6WipKJNHcqq1aVDZhFz8K2WzyRA3MGGeDYAFGra38
99sDmOsHJi9eH6To7jk90+dMz0D5dAr1+jNPgDR6A/LCTB4nsZysE3APDBIPKFtD+6pDVEpk
+VZpMaoQUJrNG1WV6vX6EYZUrVaPcb5+hXrrqtaCavqPrzFLyqb5MHAedGtijIbOWLN796BU
JOBTKA9HNoy13g/tTt9GVKQ6pMMO7FC6/LOHNNC+j6w3+dBqDAusada3+DUoVaTq/wWP2MAC
yqflikR3y+/NsUqNeUiXPouPyfjInVPjddrKbYsiNTfXtO0dUPMhQEbUhyGCNlWwpv5Hmu+/
zp10lOMuuU8pj95L1DWGmvXk9A3rrZGbjOHE1kzT2VZV+EQ9nlniLKJwwaJkkwlBfxyPLHsC
d+aoq5kwtkZj3bKfYNeJGmDrRRglZVuz7nSMztPk/jep+rEfxqHvbyQA+GaYOnoLlvPWEEP0
FCeWU98Bbzjx38xL4obPXW+9Ji4/Ju/TmJxB0r5RGW3Kcpuqt2RK9xn8HCWj8fM4weWV2q4p
SGf+RNNWliDV8Sl2nWl0e4+PWtdw9KHWNXVncq9Zej/dfRdgj/qjf+AbX0MyYyCSYfq0RDDl
qCCIQ/SQJHfhPMAjAbgM4oQk3CNYffQFL4zKGaIWA9aUxxCEq9oWccV9HxYRm7IojebBM5Bn
woMYyw90E5A593Zy8EDMJwOMN3HC5sIZkWgDC5LMYghfEYnkkzgaCOEyAWQeKxhGGxnsGY8z
sFW49CkkDPOKuAPsCLERFxecwwQMVgx+LzFcqCmpwWrGvRkuL/g7yRBxIhuYMX8xXfppCeYs
jskzK//SrKExvIOS/V5ZMUOROwYSMfCWUcSCBAsYBvj3SnxOEZ8FUBI4h7/SCSZFrcOghvUG
b8a8F0hIhLsxqzkSVQxGXgn3ieuzv0piE/oxQ9VUL+Az1WDI2XWTY55TOTnkubSTw51VPTnm
vn5S41kUlCKdT0PFcHsqwpBcR+gilDrx0n0vZFnMWigtb1AiuOgITcLQx67nU/e4BZ/05a33
ViXKVUeRZXbldVrM22+9p0dnLfe0P221Sqd2i502faBhTrwoLItVihHOVgMoR5auf7s43Hvi
/jMY9X+aeiXbiumxy13UMoUdhyieiM0ocZAqC0/fgjE7HXy7cYWSdvOkhuJMqetUroJx7zt/
Oy4j+CDI1myjl01py3Aavz2P8GVs9FBgCQSMUUZRb/CLByfZR+SGoEG0k312dj0589SbUrfl
ynLHc5tUZSeZ3xt7xPueV7CuXNeuoZr+42tepaE20OELiBESXGQ3Eazh5GnQHZlOeg/5Apdl
vPB8dyZWT1yRKo1LvBT1u46pP+hmpRGxOFxGHsvy1qcRymYVRi/5bQgPq+HI6f40zL6jWb17
40FAKlK1wNqUcF7DH4LCCd7OthtahNf32c0gjmwIcJKEbJYf7sTCkJwWt+OqtIkfGlRpKkqr
eZKWYpAjforDsu3ZFPfa7IEGoW1IDzJR9b4xSZvd+Mm+xy+Anet7XYj4oCT4zVItMDfFrepf
BRE0Nm4NAAA=' | base64 -D | gzcat | patch -p1
elif [ -$DEVEL- = -trunk- ]; then for project in \
cfe \
clang-tools-extra \
compiler-rt \
dragonegg \
libcxx \
libcxxabi \
lld \
llvm \
openmp \
polly \
lldb \
# test-suite
do svn export http://llvm.org/svn/llvm-project/$project/trunk $project &
done; wait
mv polly lld lldb llvm/tools; mv cfe llvm/tools/clang
mv clang-tools-extra llvm/tools/clang/tools/extra
mv compiler-rt dragonegg libcxx libcxxabi openmp llvm/projects
# mv test-suite llvm/projects
mv llvm llvm-project
elif [ -$DEVEL- = -git- ]; then for project in \
clang \
clang-tools-extra \
compiler-rt \
dragonegg \
libcxx \
libcxxabi \
lld \
llvm \
openmp \
polly \
lldb \
# llgo \
# test-suite
do git clone http://git.llvm.org/git/$project.git &
done; wait
mv clang polly lld lldb llvm/tools
# mv llgo llvm/tools
mv clang-tools-extra llvm/tools/clang/tools/extra
mv compiler-rt dragonegg libcxx libcxxabi openmp llvm/projects
# mv test-suite llvm/projects
mv llvm llvm-project
else for project in \
cfe \
clang-tools-extra \
compiler-rt \
dragonegg \
libcxx \
libcxxabi \
lld \
llvm \
openmp \
polly \
lldb \
# llgo \
# test-suite
do svn export http://llvm.org/svn/llvm-project/$project/$DEVEL $project &
done; wait
# svn export http://llvm.org/svn/llvm-project/llgo/trunk llgo
mv polly lld lldb llvm/tools; mv cfe llvm/tools/clang
# mv llgo llvm/tools
mv clang-tools-extra llvm/tools/clang/tools/extra
mv compiler-rt dragonegg libcxx libcxxabi openmp llvm/projects
# mv test-suite llvm/projects
mv llvm llvm-project
fi
}
deps()
{
zlib &
libffi &
isl &
ncurses &
libxml2 &
wait
libedit
libpython
rm -rf deps/share deps/src ;}
buildllvm(){
MAKEJOBS=$(sysctl -n hw.ncpu)
LINKJOBS=$(($(sysctl -n hw.memsize)/1024/1024/1024/4))
stage1(){
cd $LLVM_SRC_DIR; rm -rf build; mkdir -p build; cd build
TARGETS=host
if [ -$DEVEL- = -- ]; then
cmake \
../llvm-project \
-Wno-dev \
-DCMAKE_INSTALL_PREFIX="$TMP_PREFIX" \
-DBUILD_SHARED_LIBS=0 \
-DCLANG_BUILD_EXAMPLES=0 \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER="$CC" \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_C_FLAGS_RELEASE="$CFLAGS" \
-DCMAKE_CXX_COMPILER="$CXX" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_EXPORT_COMPILE_COMMANDS=1 \
-DCMAKE_OSX_DEPLOYMENT_TARGET="$DEPLOYMENT_TARGET" \
-DCMAKE_OSX_SYSROOT="$SYSROOT" \
-DCMAKE_USE_RELATIVE_PATHS=1 \
-DFFI_INCLUDE_DIR="$DEPS_DIR/include" \
-DFFI_INCLUDE_PATH="$DEPS_DIR/include" \
-DFFI_LIBRARY_DIR="$DEPS_DIR/lib" \
-DFFI_LIBRARY_PATH="$DEPS_DIR/lib/libffi.a" \
-DISL_INCLUDE_DIR="$DEPS_DIR/include" \
-DISL_LIBRARY="$DEPS_DIR/lib/libisl.a" \
-DLIBCLANG_BUILD_STATIC=1 \
-DLIBCXXABI_ENABLE_ASSERTIONS=0 \
-DLIBCXXABI_ENABLE_PEDANTIC=0 \
-DLIBCXXABI_ENABLE_SHARED=0 \
-DLIBCXXABI_ENABLE_WERROR=0 \
-DLIBCXXABI_LIBCXX_INCLUDES="$LLVM_SRC_DIR/llvm-project/projects/libcxx/include" \
-DLIBCXXABI_USE_LLVM_UNWINDER=1 \
-DLIBCXX_CXX_ABI=libcxxabi \
-DLIBCXX_ENABLE_ASSERTIONS=0 \
-DLIBCXX_ENABLE_CXX0X=1 \
-DLIBCXX_ENABLE_EXCEPTIONS=1 \
-DLIBCXX_ENABLE_PEDANTIC=0 \
-DLIBCXX_ENABLE_RTTI=1 \
-DLIBCXX_ENABLE_SHARED=0 \
-DLIBCXX_ENABLE_WERROR=0 \
-DLIBCXX_HOST_TRIPLE=$BUILD \
-DLIBCXX_INSTALL_SUPPORT_HEADERS=1 \
-DLIBCXX_LIBCXXABI_INCLUDE_PATHS="$LLVM_SRC_DIR/llvm-project/projects/libcxxabi/include" \
-DLIBCXX_TARGET_TRIPLE=$BUILD \
-DLIBXML2_INCLUDE_DIR="$DEPS_DIR/include/libxml2" \
-DLIBXML2_LIBRARIES="$DEPS_DIR/lib/libxml2.a" \
-DLIBXML2_XMLLINT_EXECUTABLE=/usr/bin/xmllint \
-DLINK_POLLY_INTO_TOOLS=1 \
-DLLVM_BUILD_EXAMPLES=0 \
-DLLVM_BUILD_RUNTIME=1 \
-DLLVM_BUILD_TESTS=0 \
-DLLVM_BUILD_TOOLS=0 \
-DLLVM_DEFAULT_TARGET_TRIPLE=$BUILD \
-DLLVM_ENABLE_ASSERTIONS=0 \
-DLLVM_ENABLE_BACKTRACES=1 \
-DLLVM_ENABLE_CRASH_OVERRIDES=0 \
-DLLVM_ENABLE_CXX1Y=1 \
-DLLVM_ENABLE_DOXYGEN=0 \
-DLLVM_ENABLE_EH=1 \
-DLLVM_ENABLE_FFI=1 \
-DLLVM_ENABLE_LIBCXX=1 \
-DLLVM_ENABLE_PEDANTIC=0 \
-DLLVM_ENABLE_PIC=1 \
-DLLVM_ENABLE_RTTI=1 \
-DLLVM_ENABLE_SPHINX=0 \
-DLLVM_EXTERNAL_CLANG_BUILD=1 \
-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_BUILD=0 \
-DLLVM_EXTERNAL_DRAGONEGG_BUILD=0 \
-DLLVM_EXTERNAL_LIBCXX_BUILD=1 \
-DLLVM_EXTERNAL_POLLY_BUILD=1 \
-DLLVM_HOST_TRIPLE=$BUILD \
-DLLVM_INCLUDE_TOOLS=bootstrap-only \
-DLLVM_INSTALL_TOOLCHAIN_ONLY=1 \
-DLLVM_TARGETS_TO_BUILD="$TARGETS" \
-DSubversion_SVN_EXECUTABLE=/usr/bin/svn \
-DWITH_POLLY=1 \
-DCMAKE_OSX_ARCHITECTURES='i386;x86_64' ||:
make -C projects/libcxxabi; make -C projects/libcxx
rm -rf $DEPS_DIR/lib/libc++* $DEPS_DIR/lib/libunwind*
cp lib/libc++* lib/libunwind* $DEPS_DIR/lib; rm -rf *
cmake ../llvm-project/projects/openmp/runtime -Darch=32; make
libtool -static $(find . -name \*.o) -o $DEPS_DIR/lib/libiomp5.a; rm -rf *
cmake ../llvm-project/projects/openmp/runtime -Darch=32e; make; cp *.h $DEPS_DIR/include
libtool -static $(find . -name \*.o) -o libiomp5.a
lipo -create libiomp5.a $DEPS_DIR/lib/libiomp5.a -output $DEPS_DIR/lib/libiomp5.a; rm -rf *
cd $DEPS_DIR/lib; ln -s libiomp5.a libgomp.a ||:
cd $LLVM_SRC_DIR; rm -rf build; mkdir -p build; cd build
cmake \
../llvm-project \
-Wno-dev \
-DCMAKE_INSTALL_PREFIX="$TMP_PREFIX" \
-DBUILD_SHARED_LIBS=0 \
-DCLANG_BUILD_EXAMPLES=0 \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER="$CC" \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_C_FLAGS_RELEASE="$CFLAGS" \
-DCMAKE_CXX_COMPILER="$CXX" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_EXPORT_COMPILE_COMMANDS=1 \
-DCMAKE_OSX_DEPLOYMENT_TARGET="$DEPLOYMENT_TARGET" \
-DCMAKE_OSX_SYSROOT="$SYSROOT" \
-DCMAKE_USE_RELATIVE_PATHS=1 \
-DFFI_INCLUDE_DIR="$DEPS_DIR/include" \
-DFFI_INCLUDE_PATH="$DEPS_DIR/include" \
-DFFI_LIBRARY_DIR="$DEPS_DIR/lib" \
-DFFI_LIBRARY_PATH="$DEPS_DIR/lib/libffi.a" \
-DISL_INCLUDE_DIR="$DEPS_DIR/include" \
-DISL_LIBRARY="$DEPS_DIR/lib/libisl.a" \
-DLIBCLANG_BUILD_STATIC=1 \
-DLIBCXXABI_ENABLE_ASSERTIONS=0 \
-DLIBCXXABI_ENABLE_PEDANTIC=0 \
-DLIBCXXABI_ENABLE_SHARED=0 \
-DLIBCXXABI_ENABLE_WERROR=0 \
-DLIBCXXABI_LIBCXX_INCLUDES="$LLVM_SRC_DIR/llvm-project/projects/libcxx/include" \
-DLIBCXXABI_USE_LLVM_UNWINDER=1 \
-DLIBCXX_CXX_ABI=libcxxabi \
-DLIBCXX_ENABLE_ASSERTIONS=0 \
-DLIBCXX_ENABLE_CXX0X=1 \
-DLIBCXX_ENABLE_EXCEPTIONS=1 \
-DLIBCXX_ENABLE_PEDANTIC=0 \
-DLIBCXX_ENABLE_RTTI=1 \
-DLIBCXX_ENABLE_SHARED=0 \
-DLIBCXX_ENABLE_WERROR=0 \
-DLIBCXX_HOST_TRIPLE=$BUILD \
-DLIBCXX_INSTALL_SUPPORT_HEADERS=1 \
-DLIBCXX_LIBCXXABI_INCLUDE_PATHS="$LLVM_SRC_DIR/llvm-project/projects/libcxxabi/include" \
-DLIBCXX_TARGET_TRIPLE=$BUILD \
-DLIBXML2_INCLUDE_DIR="$DEPS_DIR/include/libxml2" \
-DLIBXML2_LIBRARIES="$DEPS_DIR/lib/libxml2.a" \
-DLIBXML2_XMLLINT_EXECUTABLE=/usr/bin/xmllint \
-DLINK_POLLY_INTO_TOOLS=1 \
-DLLVM_BUILD_EXAMPLES=0 \
-DLLVM_BUILD_RUNTIME=1 \
-DLLVM_BUILD_TESTS=0 \
-DLLVM_BUILD_TOOLS=0 \
-DLLVM_DEFAULT_TARGET_TRIPLE=$BUILD \
-DLLVM_ENABLE_ASSERTIONS=0 \
-DLLVM_ENABLE_BACKTRACES=1 \
-DLLVM_ENABLE_CRASH_OVERRIDES=0 \
-DLLVM_ENABLE_CXX1Y=1 \
-DLLVM_ENABLE_DOXYGEN=0 \
-DLLVM_ENABLE_EH=1 \
-DLLVM_ENABLE_FFI=1 \
-DLLVM_ENABLE_LIBCXX=1 \
-DLLVM_ENABLE_PEDANTIC=0 \
-DLLVM_ENABLE_PIC=1 \
-DLLVM_ENABLE_RTTI=1 \
-DLLVM_ENABLE_SPHINX=0 \
-DLLVM_EXTERNAL_CLANG_BUILD=1 \
-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_BUILD=0 \
-DLLVM_EXTERNAL_DRAGONEGG_BUILD=0 \
-DLLVM_EXTERNAL_LIBCXX_BUILD=1 \
-DLLVM_EXTERNAL_POLLY_BUILD=1 \
-DLLVM_HOST_TRIPLE=$BUILD \
-DLLVM_INCLUDE_TOOLS=bootstrap-only \
-DLLVM_INSTALL_TOOLCHAIN_ONLY=1 \
-DLLVM_TARGETS_TO_BUILD="$TARGETS" \
-DSubversion_SVN_EXECUTABLE=/usr/bin/svn \
-DWITH_POLLY=1
else
cmake \
../llvm-project \
-Wno-dev \
-DCMAKE_INSTALL_PREFIX="$TMP_PREFIX" \
-DBUILD_SHARED_LIBS=0 \
-DCLANG_BUILD_EXAMPLES=0 \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER="$CC" \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_C_FLAGS_RELEASE="$CFLAGS" \
-DCMAKE_CXX_COMPILER="$CXX" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_EXPORT_COMPILE_COMMANDS=1 \
-DCMAKE_OSX_DEPLOYMENT_TARGET="$DEPLOYMENT_TARGET" \
-DCMAKE_OSX_SYSROOT="$SYSROOT" \
-DCMAKE_USE_RELATIVE_PATHS=1 \
-DCOMPILER_SUPPORTS_QUAD_PRECISION=1 \
-DFFI_INCLUDE_DIR="$DEPS_DIR/include" \
-DFFI_INCLUDE_PATH="$DEPS_DIR/include" \
-DFFI_LIBRARY_DIR="$DEPS_DIR/lib" \
-DFFI_LIBRARY_PATH="$DEPS_DIR/lib/libffi.a" \
-DISL_INCLUDE_DIR="$DEPS_DIR/include" \
-DISL_LIBRARY="$DEPS_DIR/lib/libisl.a" \
-DLIBCLANG_BUILD_STATIC=1 \
-DLIBCXXABI_ENABLE_ASSERTIONS=0 \
-DLIBCXXABI_ENABLE_PEDANTIC=0 \
-DLIBCXXABI_ENABLE_SHARED=0 \
-DLIBCXXABI_ENABLE_THREADS=1 \
-DLIBCXXABI_ENABLE_WERROR=0 \
-DLIBCXXABI_LIBCXX_INCLUDES="$LLVM_SRC_DIR/llvm-project/projects/libcxx/include" \
-DLIBCXXABI_USE_LLVM_UNWINDER=1 \
-DLIBCXX_CXX_ABI=libcxxabi \
-DLIBCXX_ENABLE_ASSERTIONS=0 \
-DLIBCXX_ENABLE_CXX1Y=1 \
-DLIBCXX_ENABLE_EXCEPTIONS=1 \
-DLIBCXX_ENABLE_MONOTONIC_CLOCK=1 \
-DLIBCXX_ENABLE_PEDANTIC=0 \
-DLIBCXX_ENABLE_RTTI=1 \
-DLIBCXX_ENABLE_SHARED=0 \
-DLIBCXX_ENABLE_THREADS=1 \
-DLIBCXX_ENABLE_WERROR=0 \
-DLIBCXX_HOST_TRIPLE=$BUILD \
-DLIBCXX_INSTALL_HEADERS=1 \
-DLIBCXX_INSTALL_SUPPORT_HEADERS=1 \
-DLIBCXX_LIBCXXABI_INCLUDE_PATHS="$LLVM_SRC_DIR/llvm-project/projects/libcxxabi/include" \
-DLIBCXX_TARGET_TRIPLE=$BUILD \
-DLIBXML2_INCLUDE_DIR="$DEPS_DIR/include/libxml2" \
-DLIBXML2_LIBRARIES="$DEPS_DIR/lib/libxml2.a" \
-DLIBXML2_XMLLINT_EXECUTABLE=/usr/bin/xmllint \
-DLINK_POLLY_INTO_TOOLS=1 \
-DLLVM_BUILD_EXAMPLES=0 \
-DLLVM_BUILD_LLVM_DYLIB=1 \
-DLLVM_BUILD_RUNTIME=1 \
-DLLVM_BUILD_TESTS=0 \
-DLLVM_BUILD_TOOLS=1 \
-DLLVM_DEFAULT_TARGET_TRIPLE=$BUILD \
-DLLVM_ENABLE_ASSERTIONS=0 \
-DLLVM_ENABLE_BACKTRACES=1 \
-DLLVM_ENABLE_CRASH_OVERRIDES=0 \
-DLLVM_ENABLE_CXX1Y=1 \
-DLLVM_ENABLE_DOXYGEN=0 \
-DLLVM_ENABLE_EH=1 \
-DLLVM_ENABLE_FFI=1 \
-DLLVM_ENABLE_LIBCXX=1 \
-DLLVM_ENABLE_PEDANTIC=0 \
-DLLVM_ENABLE_PIC=1 \
-DLLVM_ENABLE_RTTI=1 \
-DLLVM_ENABLE_SPHINX=0 \
-DLLVM_EXTERNAL_CLANG_BUILD=1 \
-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_BUILD=0 \
-DLLVM_EXTERNAL_DRAGONEGG_BUILD=0 \
-DLLVM_EXTERNAL_LIBCXX_BUILD=1 \
-DLLVM_EXTERNAL_POLLY_BUILD=1 \
-DLLVM_HOST_TRIPLE=$BUILD \
-DLLVM_INSTALL_TOOLCHAIN_ONLY=1 \
-DLLVM_INCLUDE_TOOLS=bootstrap-only \
-DLLVM_PARALLEL_COMPILE_JOBS=$MAKEJOBS \
-DLLVM_PARALLEL_LINK_JOBS=$LINKJOBS \
-DLLVM_TARGETS_TO_BUILD="$TARGETS" \
-DSPHINX_WARNINGS_AS_ERRORS=0 \
-DPERL_EXECUTABLE=/usr/bin/perl \
-DPYTHON_EXECUTABLE=/usr/bin/python \
-DWITH_POLLY=1 \
-DCMAKE_OSX_ARCHITECTURES='i386;x86_64' ||:
make -C projects/libcxxabi; make -C projects/libcxx
rm -rf $DEPS_DIR/lib/libc++* $DEPS_DIR/lib/libunwind*
cp lib/libc++* lib/libunwind* $DEPS_DIR/lib; rm -rf *
cmake ../llvm-project/projects/openmp/runtime -Darch=32; make
libtool -static $(find . -name \*.o) -o $DEPS_DIR/lib/libiomp5.a; rm -rf *
cmake ../llvm-project/projects/openmp/runtime -Darch=32e; make; cp *.h $DEPS_DIR/include
libtool -static $(find . -name \*.o) -o libiomp5.a
lipo -create libiomp5.a $DEPS_DIR/lib/libiomp5.a -output $DEPS_DIR/lib/libiomp5.a; rm -rf *
cd $DEPS_DIR/lib; ln -s libiomp5.a libgomp.a ||:
cd $LLVM_SRC_DIR; rm -rf build; mkdir -p build; cd build
cmake \
../llvm-project \
-Wno-dev \
-DCMAKE_INSTALL_PREFIX="$TMP_PREFIX" \
-DBUILD_SHARED_LIBS=0 \
-DCLANG_BUILD_EXAMPLES=0 \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER="$CC" \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_C_FLAGS_RELEASE="$CFLAGS" \
-DCMAKE_CXX_COMPILER="$CXX" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_EXPORT_COMPILE_COMMANDS=1 \
-DCMAKE_OSX_DEPLOYMENT_TARGET="$DEPLOYMENT_TARGET" \
-DCMAKE_OSX_SYSROOT="$SYSROOT" \
-DCMAKE_USE_RELATIVE_PATHS=1 \
-DCOMPILER_SUPPORTS_QUAD_PRECISION=1 \
-DFFI_INCLUDE_DIR="$DEPS_DIR/include" \
-DFFI_INCLUDE_PATH="$DEPS_DIR/include" \
-DFFI_LIBRARY_DIR="$DEPS_DIR/lib" \
-DFFI_LIBRARY_PATH="$DEPS_DIR/lib/libffi.a" \
-DISL_INCLUDE_DIR="$DEPS_DIR/include" \
-DISL_LIBRARY="$DEPS_DIR/lib/libisl.a" \
-DLIBCLANG_BUILD_STATIC=1 \
-DLIBCXXABI_ENABLE_ASSERTIONS=0 \
-DLIBCXXABI_ENABLE_PEDANTIC=0 \
-DLIBCXXABI_ENABLE_SHARED=0 \
-DLIBCXXABI_ENABLE_THREADS=1 \
-DLIBCXXABI_ENABLE_WERROR=0 \
-DLIBCXXABI_LIBCXX_INCLUDES="$LLVM_SRC_DIR/llvm-project/projects/libcxx/include" \
-DLIBCXXABI_USE_LLVM_UNWINDER=1 \
-DLIBCXX_CXX_ABI=libcxxabi \
-DLIBCXX_ENABLE_ASSERTIONS=0 \
-DLIBCXX_ENABLE_CXX1Y=1 \
-DLIBCXX_ENABLE_EXCEPTIONS=1 \
-DLIBCXX_ENABLE_MONOTONIC_CLOCK=1 \
-DLIBCXX_ENABLE_PEDANTIC=0 \
-DLIBCXX_ENABLE_RTTI=1 \
-DLIBCXX_ENABLE_SHARED=0 \
-DLIBCXX_ENABLE_THREADS=1 \
-DLIBCXX_ENABLE_WERROR=0 \
-DLIBCXX_HOST_TRIPLE=$BUILD \
-DLIBCXX_INSTALL_HEADERS=1 \
-DLIBCXX_INSTALL_SUPPORT_HEADERS=1 \
-DLIBCXX_LIBCXXABI_INCLUDE_PATHS="$LLVM_SRC_DIR/llvm-project/projects/libcxxabi/include" \
-DLIBCXX_TARGET_TRIPLE=$BUILD \
-DLIBXML2_INCLUDE_DIR="$DEPS_DIR/include/libxml2" \
-DLIBXML2_LIBRARIES="$DEPS_DIR/lib/libxml2.a" \
-DLIBXML2_XMLLINT_EXECUTABLE=/usr/bin/xmllint \
-DLINK_POLLY_INTO_TOOLS=1 \
-DLLVM_BUILD_EXAMPLES=0 \
-DLLVM_BUILD_LLVM_DYLIB=1 \
-DLLVM_BUILD_RUNTIME=1 \
-DLLVM_BUILD_TESTS=0 \
-DLLVM_BUILD_TOOLS=1 \
-DLLVM_DEFAULT_TARGET_TRIPLE=$BUILD \
-DLLVM_ENABLE_ASSERTIONS=0 \
-DLLVM_ENABLE_BACKTRACES=1 \
-DLLVM_ENABLE_CRASH_OVERRIDES=0 \
-DLLVM_ENABLE_CXX1Y=1 \
-DLLVM_ENABLE_DOXYGEN=0 \
-DLLVM_ENABLE_EH=1 \
-DLLVM_ENABLE_FFI=1 \
-DLLVM_ENABLE_LIBCXX=1 \
-DLLVM_ENABLE_PEDANTIC=0 \
-DLLVM_ENABLE_PIC=1 \
-DLLVM_ENABLE_RTTI=1 \
-DLLVM_ENABLE_SPHINX=0 \
-DLLVM_EXTERNAL_CLANG_BUILD=1 \
-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_BUILD=0 \
-DLLVM_EXTERNAL_DRAGONEGG_BUILD=0 \
-DLLVM_EXTERNAL_LIBCXX_BUILD=1 \
-DLLVM_EXTERNAL_POLLY_BUILD=1 \
-DLLVM_HOST_TRIPLE=$BUILD \
-DLLVM_INSTALL_TOOLCHAIN_ONLY=1 \
-DLLVM_INCLUDE_TOOLS=bootstrap-only \
-DLLVM_PARALLEL_COMPILE_JOBS=$MAKEJOBS \
-DLLVM_PARALLEL_LINK_JOBS=$LINKJOBS \
-DLLVM_TARGETS_TO_BUILD="$TARGETS" \
-DSPHINX_WARNINGS_AS_ERRORS=0 \
-DPERL_EXECUTABLE=/usr/bin/perl \
-DPYTHON_EXECUTABLE=/usr/bin/python \
-DWITH_POLLY=1 ||:
fi
}
stage2(){
cd $LLVM_SRC_DIR; rm -rf build; mkdir -p build; cd build
TARGETS=all
if [ -$DEVEL- = -- ]; then
cmake \
../llvm-project \
-Wno-dev \
-DCMAKE_INSTALL_PREFIX="$PREFIX" \
-DBUILD_SHARED_LIBS=0 \
-DCLANG_BUILD_EXAMPLES=0 \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER="$CC" \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_C_FLAGS_RELEASE="$CFLAGS" \
-DCMAKE_CXX_COMPILER="$CXX" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_EXPORT_COMPILE_COMMANDS=1 \
-DCMAKE_OSX_DEPLOYMENT_TARGET="$DEPLOYMENT_TARGET" \
-DCMAKE_OSX_SYSROOT="$SYSROOT" \
-DCMAKE_USE_RELATIVE_PATHS=1 \
-DFFI_INCLUDE_DIR="$DEPS_DIR/include" \
-DFFI_INCLUDE_PATH="$DEPS_DIR/include" \
-DFFI_LIBRARY_DIR="$DEPS_DIR/lib" \
-DFFI_LIBRARY_PATH="$DEPS_DIR/lib/libffi.a" \
-DISL_INCLUDE_DIR="$DEPS_DIR/include" \
-DISL_LIBRARY="$DEPS_DIR/lib/libisl.a" \
-DLIBCLANG_BUILD_STATIC=1 \
-DLIBCXXABI_ENABLE_ASSERTIONS=0 \
-DLIBCXXABI_ENABLE_PEDANTIC=0 \
-DLIBCXXABI_ENABLE_SHARED=0 \
-DLIBCXXABI_ENABLE_WERROR=0 \
-DLIBCXXABI_LIBCXX_INCLUDES="$LLVM_SRC_DIR/llvm-project/projects/libcxx/include" \
-DLIBCXXABI_USE_LLVM_UNWINDER=1 \
-DLIBCXX_CXX_ABI=libcxxabi \
-DLIBCXX_ENABLE_ASSERTIONS=0 \
-DLIBCXX_ENABLE_CXX0X=1 \
-DLIBCXX_ENABLE_EXCEPTIONS=1 \
-DLIBCXX_ENABLE_PEDANTIC=0 \
-DLIBCXX_ENABLE_RTTI=1 \
-DLIBCXX_ENABLE_SHARED=0 \
-DLIBCXX_ENABLE_WERROR=0 \
-DLIBCXX_HOST_TRIPLE=$BUILD \
-DLIBCXX_INSTALL_SUPPORT_HEADERS=1 \
-DLIBCXX_LIBCXXABI_INCLUDE_PATHS="$LLVM_SRC_DIR/llvm-project/projects/libcxxabi/include" \
-DLIBCXX_TARGET_TRIPLE=$BUILD \
-DLIBXML2_INCLUDE_DIR="$DEPS_DIR/include/libxml2" \
-DLIBXML2_LIBRARIES="$DEPS_DIR/lib/libxml2.a" \
-DLIBXML2_XMLLINT_EXECUTABLE=/usr/bin/xmllint \
-DLINK_POLLY_INTO_TOOLS=1 \
-DLLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION=1 \
-DLLDB_TEST_ARGS='-C;clang' \
-DLLVM_BUILD_EXAMPLES=0 \
-DLLVM_BUILD_RUNTIME=1 \
-DLLVM_BUILD_TESTS=0 \
-DLLVM_BUILD_TOOLS=1 \
-DLLVM_DEFAULT_TARGET_TRIPLE=$BUILD \
-DLLVM_ENABLE_ASSERTIONS=0 \
-DLLVM_ENABLE_BACKTRACES=1 \
-DLLVM_ENABLE_CRASH_OVERRIDES=0 \
-DLLVM_ENABLE_CXX1Y=1 \
-DLLVM_ENABLE_DOXYGEN=0 \
-DLLVM_ENABLE_EH=1 \
-DLLVM_ENABLE_FFI=1 \
-DLLVM_ENABLE_LIBCXX=1 \
-DLLVM_ENABLE_PEDANTIC=0 \
-DLLVM_ENABLE_PIC=1 \
-DLLVM_ENABLE_RTTI=1 \
-DLLVM_ENABLE_SPHINX=0 \
-DLLVM_EXTERNAL_CLANG_BUILD=1 \
-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_BUILD=1 \
-DLLVM_EXTERNAL_DRAGONEGG_BUILD=0 \
-DLLVM_EXTERNAL_LIBCXX_BUILD=1 \
-DLLVM_EXTERNAL_LLDB_BUILD=0 \
-DLLVM_EXTERNAL_LLD_BUILD=1 \
-DLLVM_EXTERNAL_POLLY_BUILD=1 \
-DLLVM_HOST_TRIPLE=$BUILD \
-DLLVM_INSTALL_TOOLCHAIN_ONLY=0 \
-DLLVM_TARGETS_TO_BUILD="$TARGETS" \
-DPYTHON_EXECUTABLE=/usr/bin/python \
-DLLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION=0 \
-DPYTHON_INCLUDE_DIR="$DEPS_DIR/include" \
-DPYTHON_LIBRARY="$DEPS_DIR/lib/libpython2.7.a" \
-DSubversion_SVN_EXECUTABLE=/usr/bin/svn \
-DWITH_POLLY=1 \
-DCMAKE_OSX_ARCHITECTURES='i386;x86_64' ||:
make -C projects/libcxxabi; make -C projects/libcxx
rm -rf $DEPS_DIR/lib/libc++* $DEPS_DIR/lib/libunwind*
cp lib/libc++* lib/libunwind* $DEPS_DIR/lib; rm -rf *
cmake ../llvm-project/projects/openmp/runtime -Darch=32; make
libtool -static $(find . -name \*.o) -o $DEPS_DIR/lib/libiomp5.a; rm -rf *
cmake ../llvm-project/projects/openmp/runtime -Darch=32e; make; cp *.h $DEPS_DIR/include
libtool -static $(find . -name \*.o) -o libiomp5.a
lipo -create libiomp5.a $DEPS_DIR/lib/libiomp5.a -output $DEPS_DIR/lib/libiomp5.a; rm -rf *
cd $DEPS_DIR/lib; ln -s libiomp5.a libgomp.a ||:
cd $LLVM_SRC_DIR; rm -rf build; mkdir -p build; cd build
cmake \
../llvm-project \
-Wno-dev \
-DCMAKE_INSTALL_PREFIX="$PREFIX" \
-DBUILD_SHARED_LIBS=0 \
-DCLANG_BUILD_EXAMPLES=0 \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER="$CC" \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_C_FLAGS_RELEASE="$CFLAGS" \
-DCMAKE_CXX_COMPILER="$CXX" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_EXPORT_COMPILE_COMMANDS=1 \
-DCMAKE_OSX_DEPLOYMENT_TARGET="$DEPLOYMENT_TARGET" \
-DCMAKE_OSX_SYSROOT="$SYSROOT" \
-DCMAKE_USE_RELATIVE_PATHS=1 \
-DFFI_INCLUDE_DIR="$DEPS_DIR/include" \
-DFFI_INCLUDE_PATH="$DEPS_DIR/include" \
-DFFI_LIBRARY_DIR="$DEPS_DIR/lib" \
-DFFI_LIBRARY_PATH="$DEPS_DIR/lib/libffi.a" \
-DISL_INCLUDE_DIR="$DEPS_DIR/include" \
-DISL_LIBRARY="$DEPS_DIR/lib/libisl.a" \
-DLIBCLANG_BUILD_STATIC=1 \
-DLIBCXXABI_ENABLE_ASSERTIONS=0 \
-DLIBCXXABI_ENABLE_PEDANTIC=0 \
-DLIBCXXABI_ENABLE_SHARED=0 \
-DLIBCXXABI_ENABLE_WERROR=0 \
-DLIBCXXABI_LIBCXX_INCLUDES="$LLVM_SRC_DIR/llvm-project/projects/libcxx/include" \
-DLIBCXXABI_USE_LLVM_UNWINDER=1 \
-DLIBCXX_CXX_ABI=libcxxabi \
-DLIBCXX_ENABLE_ASSERTIONS=0 \
-DLIBCXX_ENABLE_CXX0X=1 \
-DLIBCXX_ENABLE_EXCEPTIONS=1 \
-DLIBCXX_ENABLE_PEDANTIC=0 \
-DLIBCXX_ENABLE_RTTI=1 \
-DLIBCXX_ENABLE_SHARED=0 \
-DLIBCXX_ENABLE_WERROR=0 \
-DLIBCXX_HOST_TRIPLE=$BUILD \
-DLIBCXX_INSTALL_SUPPORT_HEADERS=1 \
-DLIBCXX_LIBCXXABI_INCLUDE_PATHS="$LLVM_SRC_DIR/llvm-project/projects/libcxxabi/include" \
-DLIBCXX_TARGET_TRIPLE=$BUILD \
-DLIBXML2_INCLUDE_DIR="$DEPS_DIR/include/libxml2" \
-DLIBXML2_LIBRARIES="$DEPS_DIR/lib/libxml2.a" \
-DLIBXML2_XMLLINT_EXECUTABLE=/usr/bin/xmllint \
-DLINK_POLLY_INTO_TOOLS=1 \
-DLLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION=0 \
-DLLDB_TEST_ARGS='-C;clang' \
-DLLVM_BUILD_EXAMPLES=0 \
-DLLVM_BUILD_RUNTIME=1 \
-DLLVM_BUILD_TESTS=0 \
-DLLVM_BUILD_TOOLS=1 \
-DLLVM_DEFAULT_TARGET_TRIPLE=$BUILD \
-DLLVM_ENABLE_ASSERTIONS=0 \
-DLLVM_ENABLE_BACKTRACES=1 \
-DLLVM_ENABLE_CRASH_OVERRIDES=0 \
-DLLVM_ENABLE_CXX1Y=1 \
-DLLVM_ENABLE_DOXYGEN=0 \
-DLLVM_ENABLE_EH=1 \
-DLLVM_ENABLE_FFI=1 \
-DLLVM_ENABLE_LIBCXX=1 \
-DLLVM_ENABLE_PEDANTIC=0 \
-DLLVM_ENABLE_PIC=1 \
-DLLVM_ENABLE_RTTI=1 \
-DLLVM_ENABLE_SPHINX=0 \
-DLLVM_EXTERNAL_CLANG_BUILD=1 \
-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_BUILD=1 \
-DLLVM_EXTERNAL_DRAGONEGG_BUILD=0 \
-DLLVM_EXTERNAL_LIBCXX_BUILD=1 \
-DLLVM_EXTERNAL_LLDB_BUILD=0 \
-DLLVM_EXTERNAL_LLD_BUILD=1 \
-DLLVM_EXTERNAL_POLLY_BUILD=1 \
-DLLVM_HOST_TRIPLE=$BUILD \
-DLLVM_INSTALL_TOOLCHAIN_ONLY=0 \
-DLLVM_TARGETS_TO_BUILD="$TARGETS" \
-DPYTHON_EXECUTABLE=/usr/bin/python \
-DLLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION=0 \
-DPYTHON_INCLUDE_DIR="$DEPS_DIR/include" \
-DPYTHON_LIBRARY="$DEPS_DIR/lib/libpython2.7.a" \
-DSubversion_SVN_EXECUTABLE=/usr/bin/svn \
-DWITH_POLLY=1 ||:
else
cmake \
../llvm-project \
-Wno-dev \
-DCMAKE_INSTALL_PREFIX="$PREFIX" \
-DBUILD_SHARED_LIBS=0 \
-DCLANG_BUILD_EXAMPLES=0 \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER="$CC" \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_C_FLAGS_RELEASE="$CFLAGS" \
-DCMAKE_CXX_COMPILER="$CXX" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_EXPORT_COMPILE_COMMANDS=1 \
-DCMAKE_OSX_DEPLOYMENT_TARGET="$DEPLOYMENT_TARGET" \
-DCMAKE_OSX_SYSROOT="$SYSROOT" \
-DCMAKE_USE_RELATIVE_PATHS=1 \
-DCOMPILER_SUPPORTS_QUAD_PRECISION=1 \
-DFFI_INCLUDE_DIR="$DEPS_DIR/include" \
-DFFI_INCLUDE_PATH="$DEPS_DIR/include" \
-DFFI_LIBRARY_DIR="$DEPS_DIR/lib" \
-DFFI_LIBRARY_PATH="$DEPS_DIR/lib/libffi.a" \
-DISL_INCLUDE_DIR="$DEPS_DIR/include" \
-DISL_LIBRARY="$DEPS_DIR/lib/libisl.a" \
-DLIBCLANG_BUILD_STATIC=1 \
-DLIBCXXABI_ENABLE_ASSERTIONS=0 \
-DLIBCXXABI_ENABLE_PEDANTIC=0 \
-DLIBCXXABI_ENABLE_SHARED=0 \
-DLIBCXXABI_ENABLE_THREADS=1 \
-DLIBCXXABI_ENABLE_WERROR=0 \
-DLIBCXXABI_LIBCXX_INCLUDES="$LLVM_SRC_DIR/llvm-project/projects/libcxx/include" \
-DLIBCXXABI_USE_LLVM_UNWINDER=1 \
-DLIBCXX_CXX_ABI=libcxxabi \
-DLIBCXX_ENABLE_ASSERTIONS=0 \
-DLIBCXX_ENABLE_CXX1Y=1 \
-DLIBCXX_ENABLE_EXCEPTIONS=1 \
-DLIBCXX_ENABLE_MONOTONIC_CLOCK=1 \
-DLIBCXX_ENABLE_PEDANTIC=0 \
-DLIBCXX_ENABLE_RTTI=1 \
-DLIBCXX_ENABLE_SHARED=0 \
-DLIBCXX_ENABLE_THREADS=1 \
-DLIBCXX_ENABLE_WERROR=0 \
-DLIBCXX_HOST_TRIPLE=$BUILD \
-DLIBCXX_INSTALL_HEADERS=1 \
-DLIBCXX_INSTALL_SUPPORT_HEADERS=1 \
-DLIBCXX_LIBCXXABI_INCLUDE_PATHS="$LLVM_SRC_DIR/llvm-project/projects/libcxxabi/include" \
-DLIBCXX_TARGET_TRIPLE=$BUILD \
-DLIBXML2_INCLUDE_DIR="$DEPS_DIR/include/libxml2" \
-DLIBXML2_LIBRARIES="$DEPS_DIR/lib/libxml2.a" \
-DLIBXML2_XMLLINT_EXECUTABLE=/usr/bin/xmllint \
-DLINK_POLLY_INTO_TOOLS=1 \
-DLLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION=0 \
-DLLVM_BUILD_EXAMPLES=0 \
-DLLVM_BUILD_LLVM_DYLIB=0 \
-DLLVM_BUILD_RUNTIME=1 \
-DLLVM_BUILD_TESTS=0 \
-DLLVM_BUILD_TOOLS=1 \
-DLLVM_DEFAULT_TARGET_TRIPLE=$BUILD \
-DLLVM_ENABLE_ASSERTIONS=0 \
-DLLVM_ENABLE_BACKTRACES=1 \
-DLLVM_ENABLE_CRASH_OVERRIDES=0 \
-DLLVM_ENABLE_CXX1Y=1 \
-DLLVM_ENABLE_DOXYGEN=0 \
-DLLVM_ENABLE_EH=1 \
-DLLVM_ENABLE_FFI=1 \
-DLLVM_ENABLE_LIBCXX=1 \
-DLLVM_ENABLE_PEDANTIC=0 \
-DLLVM_ENABLE_PIC=1 \
-DLLVM_ENABLE_RTTI=1 \
-DLLVM_ENABLE_SPHINX=0 \
-DLLVM_EXTERNAL_CLANG_BUILD=1 \
-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_BUILD=1 \
-DLLVM_EXTERNAL_DRAGONEGG_BUILD=0 \
-DLLVM_EXTERNAL_LIBCXX_BUILD=1 \
-DLLVM_EXTERNAL_LLDB_BUILD=0 \
-DLLVM_EXTERNAL_LLD_BUILD=1 \
-DLLVM_EXTERNAL_POLLY_BUILD=1 \
-DLLVM_HOST_TRIPLE=$BUILD \
-DLLVM_INSTALL_TOOLCHAIN_ONLY=0 \
-DLLVM_PARALLEL_COMPILE_JOBS=$MAKEJOBS \
-DLLVM_PARALLEL_LINK_JOBS=$LINKJOBS \
-DLLVM_TARGETS_TO_BUILD="$TARGETS" \
-DSPHINX_WARNINGS_AS_ERRORS=0 \
-DPERL_EXECUTABLE=/usr/bin/perl \
-DPYTHON_EXECUTABLE=/usr/bin/python \
-DLLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION=0 \
-DPYTHON_INCLUDE_DIR="$DEPS_DIR/include" \
-DPYTHON_LIBRARY="$DEPS_DIR/lib/libpython2.7.a" \
-DWITH_POLLY=1 \
-DCMAKE_OSX_ARCHITECTURES='i386;x86_64' ||:
make -C projects/libcxxabi; make -C projects/libcxx
rm -rf $DEPS_DIR/lib/libc++* $DEPS_DIR/lib/libunwind*
cp lib/libc++* lib/libunwind* $DEPS_DIR/lib; rm -rf *
cmake ../llvm-project/projects/openmp/runtime -Darch=32; make
libtool -static $(find . -name \*.o) -o $DEPS_DIR/lib/libiomp5.a; rm -rf *
cmake ../llvm-project/projects/openmp/runtime -Darch=32e; make; cp *.h $DEPS_DIR/include
libtool -static $(find . -name \*.o) -o libiomp5.a
lipo -create libiomp5.a $DEPS_DIR/lib/libiomp5.a -output $DEPS_DIR/lib/libiomp5.a; rm -rf *
cd $DEPS_DIR/lib; ln -s libiomp5.a libgomp.a ||:
cd $LLVM_SRC_DIR; rm -rf build; mkdir -p build; cd build
cmake \
../llvm-project \
-Wno-dev \
-DCMAKE_INSTALL_PREFIX="$PREFIX" \
-DBUILD_SHARED_LIBS=0 \
-DCLANG_BUILD_EXAMPLES=0 \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER="$CC" \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DCMAKE_C_FLAGS_RELEASE="$CFLAGS" \
-DCMAKE_CXX_COMPILER="$CXX" \
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_CXX_FLAGS_RELEASE="$CXXFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_EXE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_MODULE_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS" \
-DCMAKE_SHARED_LINKER_FLAGS_RELEASE="$LDFLAGS" \
-DCMAKE_EXPORT_COMPILE_COMMANDS=1 \
-DCMAKE_OSX_DEPLOYMENT_TARGET="$DEPLOYMENT_TARGET" \
-DCMAKE_OSX_SYSROOT="$SYSROOT" \
-DCMAKE_USE_RELATIVE_PATHS=1 \
-DCOMPILER_SUPPORTS_QUAD_PRECISION=1 \
-DFFI_INCLUDE_DIR="$DEPS_DIR/include" \
-DFFI_INCLUDE_PATH="$DEPS_DIR/include" \
-DFFI_LIBRARY_DIR="$DEPS_DIR/lib" \
-DFFI_LIBRARY_PATH="$DEPS_DIR/lib/libffi.a" \
-DISL_INCLUDE_DIR="$DEPS_DIR/include" \
-DISL_LIBRARY="$DEPS_DIR/lib/libisl.a" \
-DLIBCLANG_BUILD_STATIC=1 \
-DLIBCXXABI_ENABLE_ASSERTIONS=0 \
-DLIBCXXABI_ENABLE_PEDANTIC=0 \
-DLIBCXXABI_ENABLE_SHARED=0 \
-DLIBCXXABI_ENABLE_THREADS=1 \
-DLIBCXXABI_ENABLE_WERROR=0 \
-DLIBCXXABI_LIBCXX_INCLUDES="$LLVM_SRC_DIR/llvm-project/projects/libcxx/include" \
-DLIBCXXABI_USE_LLVM_UNWINDER=1 \
-DLIBCXX_CXX_ABI=libcxxabi \
-DLIBCXX_ENABLE_ASSERTIONS=0 \
-DLIBCXX_ENABLE_CXX1Y=1 \
-DLIBCXX_ENABLE_EXCEPTIONS=1 \
-DLIBCXX_ENABLE_MONOTONIC_CLOCK=1 \
-DLIBCXX_ENABLE_PEDANTIC=0 \
-DLIBCXX_ENABLE_RTTI=1 \
-DLIBCXX_ENABLE_SHARED=0 \
-DLIBCXX_ENABLE_THREADS=1 \
-DLIBCXX_ENABLE_WERROR=0 \
-DLIBCXX_HOST_TRIPLE=$BUILD \
-DLIBCXX_INSTALL_HEADERS=1 \
-DLIBCXX_INSTALL_SUPPORT_HEADERS=1 \
-DLIBCXX_LIBCXXABI_INCLUDE_PATHS="$LLVM_SRC_DIR/llvm-project/projects/libcxxabi/include" \
-DLIBCXX_TARGET_TRIPLE=$BUILD \
-DLIBXML2_INCLUDE_DIR="$DEPS_DIR/include/libxml2" \
-DLIBXML2_LIBRARIES="$DEPS_DIR/lib/libxml2.a" \
-DLIBXML2_XMLLINT_EXECUTABLE=/usr/bin/xmllint \
-DLINK_POLLY_INTO_TOOLS=1 \
-DLLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION=0 \
-DLLVM_BUILD_EXAMPLES=0 \
-DLLVM_BUILD_LLVM_DYLIB=1 \
-DLLVM_BUILD_RUNTIME=1 \
-DLLVM_BUILD_TESTS=0 \
-DLLVM_BUILD_TOOLS=1 \
-DLLVM_DEFAULT_TARGET_TRIPLE=$BUILD \
-DLLVM_ENABLE_ASSERTIONS=0 \
-DLLVM_ENABLE_BACKTRACES=1 \
-DLLVM_ENABLE_CRASH_OVERRIDES=0 \
-DLLVM_ENABLE_CXX1Y=1 \
-DLLVM_ENABLE_DOXYGEN=0 \
-DLLVM_ENABLE_EH=1 \
-DLLVM_ENABLE_FFI=1 \
-DLLVM_ENABLE_LIBCXX=1 \
-DLLVM_ENABLE_PEDANTIC=0 \
-DLLVM_ENABLE_PIC=1 \
-DLLVM_ENABLE_RTTI=1 \
-DLLVM_ENABLE_SPHINX=0 \
-DLLVM_EXTERNAL_CLANG_BUILD=1 \
-DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_BUILD=1 \
-DLLVM_EXTERNAL_DRAGONEGG_BUILD=0 \
-DLLVM_EXTERNAL_LIBCXX_BUILD=1 \
-DLLVM_EXTERNAL_LLDB_BUILD=0 \
-DLLVM_EXTERNAL_LLD_BUILD=1 \
-DLLVM_EXTERNAL_POLLY_BUILD=1 \
-DLLVM_HOST_TRIPLE=$BUILD \
-DLLVM_INSTALL_TOOLCHAIN_ONLY=0 \
-DLLVM_PARALLEL_COMPILE_JOBS=$MAKEJOBS \
-DLLVM_PARALLEL_LINK_JOBS=$LINKJOBS \
-DLLVM_TARGETS_TO_BUILD="$TARGETS" \
-DSPHINX_WARNINGS_AS_ERRORS=0 \
-DPERL_EXECUTABLE=/usr/bin/perl \
-DLLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION=0 \
-DPYTHON_EXECUTABLE=/usr/bin/python \
-DPYTHON_INCLUDE_DIR="$DEPS_DIR/include" \
-DPYTHON_LIBRARY="$DEPS_DIR/lib/libpython2.7.a" \
-DWITH_POLLY=1 ||:
fi
}
getllvm &
deps; wait; stage1; make; make install; rm -rf *
if [ -$DEVEL- = -- ]; then
POLLY_FLAGS="-flto -O3 -mllvm -polly -mllvm -enable-polly-aligned"
else
POLLY_FLAGS="-flto -O3 -mllvm -polly -mllvm -polly-parallel -mllvm -enable-polly-aligned"
fi
export CFLAGS="$CFLAGS $POLLY_FLAGS -Ofast -flto -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -gline-tables-only"
export CPPFLAGS="$CPPFLAGS $POLLY_FLAGS -Ofast -flto -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -gline-tables-only"
export CXXFLAGS="$CXXFLAGS $POLLY_FLAGS -Ofast -flto -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -gline-tables-only"
export LDFLAGS="$CPPFLAGS $LFLAGS -L$DEPS_DIR/lib -lc++ -lc++abi -lunwind -liomp5"
cd $TMP_PREFIX/bin; for i in ar ld nm otool strip lipo libtool; do cp $(xcrun -f $i) .; done; ln -s libtool ranlib ||:
export PATH=$TMP_PREFIX/bin:$PATH
cd $LLVM_SRC_DIR; rm -rf build; mkdir -p build; cd build
cmake ../llvm-project/projects/openmp/runtime -Darch=32; make
$(find . -name \*.o) -o $DEPS_DIR/lib/libiomp5.a; rm -rf *
cmake ../llvm-project/projects/openmp/runtime -Darch=32e; make; cp *.h $DEPS_DIR/include
libtool -static $(find . -name \*.o) -o libiomp5.a
lipo -create libiomp5.a $DEPS_DIR/lib/libiomp5.a -output $DEPS_DIR/lib/libiomp5.a; rm -rf *
cd $DEPS_DIR/lib; ln -s libiomp5.a libgomp.a ||:
cp $DEPS_DIR/lib/libiomp5.a $TMP_PREFIX/lib
ln -s libiomp5.a libgomp.a
cd $TMP_PREFIX/lib; ln -s libiomp5.a libgomp.a ||:
getllvm &
deps; wait; stage2; make; make check -i; make install; rm -rf *
cmake ../llvm-project/projects/openmp/runtime -Darch=32; make
libtool -static $(find . -name \*.o) -o $PREFIX/lib/libiomp5.a; rm -rf *
cmake ../llvm-project/projects/openmp/runtime -Darch=32e; make; cp *.h $PREFIX/include
libtool -static $(find . -name \*.o) -o libiomp5.a
lipo -create libiomp5.a $PREFIX/lib/libiomp5.a -output $PREFIX/lib/libiomp5.a; rm -rf *
cd $PREFIX/bin; for i in ar ld nm otool strip lipo libtool; do cp $(xcrun -f $i) .; done; ln -s libtool ranlib ||:
cd $PREFIX/lib; ln -s libiomp5.a libgomp.a||:
}
buildllvm
# LLVM 3.5.1
###
# # -DBUG_REPORT_URL
# # -DBUILD_CLANG_FORMAT_VS_PLUGIN
# # -DBUILD_SHARED_LIBS
# # -DCARBON_LIBRARY
# # -DCLANG_BUILD_EXAMPLES
# # -DCLANG_ENABLE_ARCMT
# # -DCLANG_ENABLE_STATIC_ANALYZER
# # -DCLANG_EXECUTABLE_VERSION
# # -DCLANG_INCLUDE_DOCS
# # -DCLANG_INCLUDE_TESTS
# # -DCLANG_ORDER_FILE
# # -DCLANG_PLUGIN_SUPPORT
# # -DCLANG_REPOSITORY_STRING
# # -DCLANG_RESOURCE_DIR
# # -DCLANG_TABLEGEN
# # -DCLANG_TEST_USE_VG
# # -DCLANG_TOOLS_TEST_USE_VG
# # -DCLANG_VENDOR
# # -DCLANG_VENDOR_UTI
# # -DCLOOG_INCLUDE_DIR
# # -DCLOOG_LIBRARY
# # -DCMAKE_AR
# -DCMAKE_ASM-ATT_COMPILER
# -DCMAKE_ASM-ATT_FLAGS
# # -DCMAKE_ASM-ATT_FLAGS_DEBUG
# # -DCMAKE_ASM-ATT_FLAGS_MINSIZEREL
# -DCMAKE_ASM-ATT_FLAGS_RELEASE
# # -DCMAKE_ASM-ATT_FLAGS_RELWITHDEB
# -DCMAKE_ASM_COMPILER
# -DCMAKE_ASM_FLAGS
# # -DCMAKE_ASM_FLAGS_DEBUG
# # -DCMAKE_ASM_FLAGS_MINSIZEREL
# -DCMAKE_ASM_FLAGS_RELEASE
# # -DCMAKE_ASM_FLAGS_RELWITHDEBINFO
# -DCMAKE_BUILD_TYPE
# # -DCMAKE_COLOR_MAKEFILE
# -DCMAKE_CXX_COMPILER
# -DCMAKE_CXX_FLAGS
# # -DCMAKE_CXX_FLAGS_DEBUG
# # -DCMAKE_CXX_FLAGS_MINSIZEREL
# -DCMAKE_CXX_FLAGS_RELEASE
# # -DCMAKE_CXX_FLAGS_RELWITHDEBINFO
# -DCMAKE_C_COMPILER
# -DCMAKE_C_FLAGS
# # -DCMAKE_C_FLAGS_DEBUG
# # -DCMAKE_C_FLAGS_MINSIZEREL
# -DCMAKE_C_FLAGS_RELEASE
# # -DCMAKE_C_FLAGS_RELWITHDEBINFO
# -DCMAKE_EXE_LINKER_FLAGS
# # -DCMAKE_EXE_LINKER_FLAGS_DEBUG
# # -DCMAKE_EXE_LINKER_FLAGS_MINSIZE
# -DCMAKE_EXE_LINKER_FLAGS_RELEASE
# # -DCMAKE_EXE_LINKER_FLAGS_RELWITH
# -DCMAKE_EXPORT_COMPILE_COMMANDS
# # -DCMAKE_INSTALL_NAME_TOOL
# -DCMAKE_INSTALL_PREFIX
# # -DCMAKE_LINKER
# # -DCMAKE_MAKE_PROGRAM
# -DCMAKE_MODULE_LINKER_FLAGS
# # -DCMAKE_MODULE_LINKER_FLAGS_DEBU
# # -DCMAKE_MODULE_LINKER_FLAGS_MINS
# -DCMAKE_MODULE_LINKER_FLAGS_RELE
# # -DCMAKE_MODULE_LINKER_FLAGS_RELW
# # -DCMAKE_NM
# # -DCMAKE_OBJCOPY
# # -DCMAKE_OBJDUMP
# -DCMAKE_OSX_ARCHITECTURES
# -DCMAKE_OSX_DEPLOYMENT_TARGET
# -DCMAKE_OSX_SYSROOT
# # -DCMAKE_RANLIB
# -DCMAKE_SHARED_LINKER_FLAGS
# # -DCMAKE_SHARED_LINKER_FLAGS_DEBU
# # -DCMAKE_SHARED_LINKER_FLAGS_MINS
# -DCMAKE_SHARED_LINKER_FLAGS_RELE
# # -DCMAKE_SHARED_LINKER_FLAGS_RELW
# # -DCMAKE_SKIP_INSTALL_RPATH
# # -DCMAKE_SKIP_RPATH
# # -DCMAKE_STATIC_LINKER_FLAGS
# # -DCMAKE_STATIC_LINKER_FLAGS_DEBU
# # -DCMAKE_STATIC_LINKER_FLAGS_MINS
# # -DCMAKE_STATIC_LINKER_FLAGS_RELE
# # -DCMAKE_STATIC_LINKER_FLAGS_RELW
# # -DCMAKE_STRIP
# # -DCMAKE_VERBOSE_MAKEFILE
# # -DCOCOA_LIBRARY
# # -DCOMPILER_QUAD_TYPE
# -DCOMPILER_RT_BUILD_SHARED_ASAN
# -DCOMPILER_RT_CAN_EXECUTE_TESTS
# -DCOMPILER_RT_DEBUG
# -DCOMPILER_RT_ENABLE_WERROR
# -DCOMPILER_RT_INCLUDE_TESTS
# -DCOMPILER_RT_TEST_TARGET_TRIPLE
# -DCOMPILER_SUPPORTS_QUAD_PRECISION
# # -DCORE_FOUNDATION_LIBRARY
# # -DCORE_SERVICES_LIBRARY
# # -DCPACK_BINARY_BUNDLE
# # -DCPACK_BINARY_DEB
# # -DCPACK_BINARY_DRAGNDROP
# # -DCPACK_BINARY_IFW
# # -DCPACK_BINARY_NSIS
# # -DCPACK_BINARY_OSXX11
# # -DCPACK_BINARY_PACKAGEMAKER
# # -DCPACK_BINARY_RPM
# # -DCPACK_BINARY_STGZ
# # -DCPACK_BINARY_TBZ2
# # -DCPACK_BINARY_TGZ
# # -DCPACK_BINARY_TXZ
# # -DCPACK_SOURCE_TBZ2
# # -DCPACK_SOURCE_TGZ
# # -DCPACK_SOURCE_TXZ
# # -DCPACK_SOURCE_TZ
# # -DCPACK_SOURCE_ZIP
# # -DC_INCLUDE_DIRS
# # -DDEBUG_SYMBOLS_LIBRARY
# # -DDEFAULT_SYSROOT
# # -DDOXYGEN_DOT_EXECUTABLE
# # -DDOXYGEN_EXECUTABLE
# # -DEPYDOC_EXECUTABLE
# -DFFI_INCLUDE_DIR
# -DFFI_INCLUDE_PATH
# -DFFI_LIBRARY_DIR
# -DFFI_LIBRARY_PATH
# # -DFOUNDATION_LIBRARY
# # -DGCC_INSTALL_PREFIX
# # -DGMP_INCLUDE_DIR
# # -DGMP_LIBRARY
# -DISL_INCLUDE_DIR
# -DISL_LIBRARY
# -DLIBCLANG_BUILD_STATIC
# # -DLIBCLANG_LIBRARY_VERSION
# -DLIBCXXABI_ENABLE_ASSERTIONS
# -DLIBCXXABI_ENABLE_PEDANTIC
# -DLIBCXXABI_ENABLE_SHARED
# -DLIBCXXABI_ENABLE_WERROR
# -DLIBCXXABI_LIBCXX_INCLUDES
# -DLIBCXXABI_USE_LLVM_UNWINDER
# -DLIBCXX_CXX_ABI
# -DLIBCXX_ENABLE_ASSERTIONS
# -DLIBCXX_ENABLE_CXX0X
# -DLIBCXX_ENABLE_EXCEPTIONS
# -DLIBCXX_ENABLE_PEDANTIC
# -DLIBCXX_ENABLE_RTTI
# -DLIBCXX_ENABLE_SHARED
# -DLIBCXX_ENABLE_WERROR
# -DLIBCXX_HOST_TRIPLE
# -DLIBCXX_INSTALL_SUPPORT_HEADERS
# -DLIBCXX_LIBCXXABI_INCLUDE_PATHS
# -DLIBCXX_TARGET_TRIPLE
# -DLIBXML2_INCLUDE_DIR
# -DLIBXML2_LIBRARIES
# -DLIBXML2_XMLLINT_EXECUTABLE
# -DLINK_POLLY_INTO_TOOLS
# # -DLLDB_DISABLE_CURSES
# # -DLLDB_DISABLE_PYTHON
# -DLLDB_ENABLE_PYTHON_SCRIPTS_SWIG_API_GENERATION
# -DLLDB_TEST_ARGS=-C;clang
# # -DLLDB_TRACE_DIR
# # -DLLD_USE_VTUNE
# # -DLLVM_APPEND_VC_REV
# # -DLLVM_BUILD_32_BITS
# # -DLLVM_BUILD_DOCS
# # -DLLVM_BUILD_EXAMPLES
# -DLLVM_BUILD_EXTERNAL_COMPILER_RT=1
# # -DLLVM_BUILD_RUNTIME
# # -DLLVM_BUILD_TESTS
# # -DLLVM_BUILD_TOOLS
# -DLLVM_DEFAULT_TARGET_TRIPLE
# # -DLLVM_DOXYGEN_EXTERNAL_SEARCH
# -DLLVM_ENABLE_ASSERTIONS
# -DLLVM_ENABLE_BACKTRACES
# -DLLVM_ENABLE_CRASH_OVERRIDES
# -DLLVM_ENABLE_CXX1Y
# -DLLVM_ENABLE_DOXYGEN
# # -DLLVM_ENABLE_DOXYGEN_QT_HELP
# -DLLVM_ENABLE_EH
# -DLLVM_ENABLE_FFI
# -DLLVM_ENABLE_LIBCXX
# -DLLVM_ENABLE_PEDANTIC
# -DLLVM_ENABLE_PIC
# -DLLVM_ENABLE_RTTI
# -DLLVM_ENABLE_SPHINX
# -DLLVM_ENABLE_TERMINFO
# -DLLVM_ENABLE_THREADS
# -DLLVM_ENABLE_TIMESTAMPS
# -DLLVM_ENABLE_WARNINGS
# -DLLVM_ENABLE_WERROR
# -DLLVM_ENABLE_ZLIB
# # -DLLVM_EXPERIMENTAL_TARGETS_TO_B
# -DLLVM_EXTERNAL_CLANG_BUILD
# # -DLLVM_EXTERNAL_CLANG_SOURCE_DIR
# -DLLVM_EXTERNAL_CLANG_TOOLS_EXTRA_BUILD
# # -DLLVM_EXTERNAL_CLANG_TOOLS_EXTR
# -DLLVM_EXTERNAL_COMPILER_RT_BUILD
# # -DLLVM_EXTERNAL_COMPILER_RT_SOUR
# -DLLVM_EXTERNAL_DRAGONEGG_BUILD
# # -DLLVM_EXTERNAL_DRAGONEGG_SOURCE
# -DLLVM_EXTERNAL_LIBCXX_BUILD
# # -DLLVM_EXTERNAL_LIBCXX_SOURCE_DI
# -DLLVM_EXTERNAL_LLDB_BUILD
# # -DLLVM_EXTERNAL_LLDB_SOURCE_DIR
# -DLLVM_EXTERNAL_LLD_BUILD
# # -DLLVM_EXTERNAL_LLD_SOURCE_DIR
# # -DLLVM_EXTERNAL_MSBUILD_BUILD
# # -DLLVM_EXTERNAL_MSBUILD_SOURCE_D
# -DLLVM_EXTERNAL_POLLY_BUILD
# # -DLLVM_EXTERNAL_POLLY_SOURCE_DIR
# # -DLLVM_FORCE_USE_OLD_HOST_TOOLCH
# -DLLVM_HOST_TRIPLE
# # -DLLVM_INCLUDE_DOCS
# # -DLLVM_INCLUDE_EXAMPLES
# # -DLLVM_INCLUDE_TESTS
# # -DLLVM_INCLUDE_TOOLS
# # -DLLVM_INCLUDE_UTILS
# -DLLVM_INSTALL_TOOLCHAIN_ONLY
# # -DLLVM_LIBDIR_SUFFIX
# # -DLLVM_LIT_ARGS
# # -DLLVM_PATH_DOT
# # -DLLVM_TABLEGEN
# -DLLVM_TARGETS_TO_BUILD
# -DLLVM_TARGET_ARCH
# # -DLLVM_USE_FOLDERS
# # -DLLVM_USE_INTEL_JITEVENTS
# # -DLLVM_USE_OPROFILE
# # -DLLVM_USE_SANITIZER
# # -DLLVM_USE_SPLIT_DWARF
# -DPERL_EXECUTABLE
# # -DPKG_CONFIG_EXECUTABLE
# # -DPLUTO_INCLUDE_DIR
# # -DPLUTO_LIBRARY
# # -DPOLLY_ENABLE_GPGPU_CODEGEN
# # -DPOLLY_ENABLE_SCOPLIB
# # -DPOLLY_USE_CLOOG
# -DPYTHON_EXECUTABLE
# -DPYTHON_INCLUDE_DIR
# -DPYTHON_LIBRARY
# # -DPYTHON_LIBRARY_DEBUG
# # -DSCOPLIB_INCLUDE_DIR
# # -DSCOPLIB_LIBRARY
# # -DSECURITY_LIBRARY
# # -DSPHINX_EXECUTABLE
# # -DSPHINX_OUTPUT_HTML
# # -DSPHINX_OUTPUT_MAN
# -DSubversion_SVN_EXECUTABLE
# # -DTOOL_INFO_PLIST
# # -DUSER_ASM_FLAGS
# # -DUSER_CPP_FLAGS
# # -DUSER_CXX_FLAGS
# # -DUSER_C_FLAGS
# # -DUSER_F_FLAGS
# # -DUSER_LD_FLAGS
# # -DUSER_LD_LIB_FLAGS
# # -DUSE_ADAPTIVE_LOCKS
# # -DUSE_BUILDPL_RULES
# # -DUSE_PREDEFINED_LINKER_FLAGS
# -DWITH_POLLY
# # -Darch
# # -Dassembler_specific_include_fil
# # -Dcompiler_specific_include_file
# # -Dcreate_fortran_modules
# # -Diomp.h_path
# # -Diomp_lib.h_path
# # -Dlib_type
# # -Dlibiomp.rc_path
# # -Dmic_arch
# # -Dmic_os
# # -Domp.h_path
# # -Domp_lib.f90_path
# # -Domp_lib.f_path
# # -Domp_lib.h_path
# # -Domp_version
# # -Dos
# # -Dstats
# # -Dtest_deps
# # -Dtest_execstack
# # -Dtest_instr
# # -Dtest_relo
# # -Dtest_touch
# # -Dtests
# # -Dversion
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment