clang: add polly
This commit is contained in:
@@ -0,0 +1,9 @@
|
||||
--- llvm-4.0.0.src/tools/bugpoint/CMakeLists.txt
|
||||
+++ llvm-4.0.0.src/tools/bugpoint/CMakeLists.txt
|
||||
@@ -37,6 +37,4 @@
|
||||
|
||||
if(WITH_POLLY AND LINK_POLLY_INTO_TOOLS)
|
||||
target_link_libraries(bugpoint Polly)
|
||||
- # Ensure LLVMTarget can resolve dependences in Polly.
|
||||
- target_link_libraries(bugpoint LLVMTarget)
|
||||
endif(WITH_POLLY AND LINK_POLLY_INTO_TOOLS)
|
||||
@@ -2,9 +2,10 @@
|
||||
# Maintainer: Alexey Pavlov <alexpux@gmail.com>
|
||||
# Contributor: Ray Donnelly <mingw.android@gmail.com>
|
||||
# Contributor: Mateusz Mikuła <mati865@gmail.com>
|
||||
# Contributor: wirx6 <wirx654@gmail.com>
|
||||
|
||||
# choose the compiler that will be used to build clang
|
||||
# clang cannot build clang 64 bit due to mingw-w64 headers bugs; 32 bit clang is fine
|
||||
# clang is fine but there are problems with libcxxabi
|
||||
_compiler=gcc # clang, gcc
|
||||
|
||||
_realname=clang
|
||||
@@ -18,14 +19,15 @@ pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}"
|
||||
"${MINGW_PACKAGE_PREFIX}-lld"
|
||||
"${MINGW_PACKAGE_PREFIX}-libunwind"
|
||||
"${MINGW_PACKAGE_PREFIX}-llvm"
|
||||
"${MINGW_PACKAGE_PREFIX}-lldb")
|
||||
"${MINGW_PACKAGE_PREFIX}-lldb"
|
||||
"${MINGW_PACKAGE_PREFIX}-polly")
|
||||
pkgver=4.0.0
|
||||
pkgrel=1
|
||||
pkgdesc="C language family frontend for LLVM (mingw-w64)"
|
||||
arch=('any')
|
||||
url="http://llvm.org"
|
||||
license=("custom:University of Illinois/NCSA Open Source License")
|
||||
makedepends=("${MINGW_PACKAGE_PREFIX}-cmake"
|
||||
makedepends=("${MINGW_PACKAGE_PREFIX}-cmake>=3.4.3"
|
||||
$([[ "$_compiler" == "clang" ]] && echo \
|
||||
"${MINGW_PACKAGE_PREFIX}-clang")
|
||||
"${MINGW_PACKAGE_PREFIX}-libffi"
|
||||
@@ -46,6 +48,7 @@ source=(http://llvm.org/releases/${pkgver}/llvm-${pkgver}.src.tar.xz{,.sig}
|
||||
http://llvm.org/releases/${pkgver}/lld-${pkgver}.src.tar.xz{,.sig}
|
||||
http://llvm.org/releases/${pkgver}/lldb-${pkgver}.src.tar.xz{,.sig}
|
||||
http://llvm.org/releases/${pkgver}/libunwind-${pkgver}.src.tar.xz{,.sig}
|
||||
http://llvm.org/releases/${pkgver}/polly-${pkgver}.src.tar.xz{,.sig}
|
||||
"0001-genlib-named-as-llvm-dlltool.patch"
|
||||
"0002-mingw-w64-use-MSVC-style-ByteAlignment.patch"
|
||||
"0003-Fix-GetHostTriple-for-mingw-w64-in-msys.patch"
|
||||
@@ -53,6 +56,7 @@ source=(http://llvm.org/releases/${pkgver}/llvm-${pkgver}.src.tar.xz{,.sig}
|
||||
"0005-not-install-msvc-files.patch"
|
||||
"0006-llvm-config-look-for-unversioned-shared-lib-on-win32.patch"
|
||||
"0007-add-pthread-as-system-lib-for-mingw.patch"
|
||||
"0008-fix-bugpoint-multiple-definition.patch"
|
||||
"0101-mingw-w64-enable-support-for-__declspec-selectany.patch"
|
||||
"0102-Allow-build-static-clang-library-for-mingw.patch"
|
||||
"0103-fix-libclang-name-for-mingw.patch"
|
||||
@@ -100,6 +104,8 @@ sha256sums=('8d10511df96e73b8ff9e7abbfb4d4d432edbdbe965f1f4f07afaf370b8a533be'
|
||||
'SKIP'
|
||||
'0755efa9f969373d4d543123bbed4b3f9a835f6302875c1379c5745857725973'
|
||||
'SKIP'
|
||||
'27a5dbf95e8aa9e0bbe3d6c5d1e83c92414d734357aa0d6c16020a65dc4dcd97'
|
||||
'SKIP'
|
||||
'3f55d2114805110e370fab6630763c359d83b07c356f61b86afc32feb7cf7514'
|
||||
'78b6951956360a8e05fdc7020bc7e1996da75b499022f9213465070fc238529c'
|
||||
'aceffb61d57c7c01bc2d9d5461f961df26cffdffaaabb8dda9f219acfe59c77a'
|
||||
@@ -107,6 +113,7 @@ sha256sums=('8d10511df96e73b8ff9e7abbfb4d4d432edbdbe965f1f4f07afaf370b8a533be'
|
||||
'c840f4e2286385c4ab3503c02976fd2459516fdc05e44f702d648afaaaebd97f'
|
||||
'f06f57af203811f6a4c62ac3f1e4545628db13185f5e7d3225d4b1104ca69be1'
|
||||
'c57d5f2904158b992378906bcddbae79d0566cdb07cc74fbd9b2d76d52661a12'
|
||||
'5d1fbbe39221af57ae078e5387f43fec602541838b3608cd3f6517bb2364ae54'
|
||||
'afdd708e2431874da4e03d9f51848840ec30ef64b4d440c8dfd50446b2f5ce1a'
|
||||
'8ba3968939f9a7c6a51849aaf1ab6126f85aa612349570b3644f855929d496fc'
|
||||
'1740ffa1d23fdee2b147a46cfed4d186bf7d3dc626bb3a1d3ca925147895a2d4'
|
||||
@@ -162,6 +169,7 @@ prepare() {
|
||||
patch -p1 -i "${srcdir}/0005-not-install-msvc-files.patch"
|
||||
patch -p1 -i "${srcdir}/0006-llvm-config-look-for-unversioned-shared-lib-on-win32.patch"
|
||||
patch -p1 -i "${srcdir}/0007-add-pthread-as-system-lib-for-mingw.patch"
|
||||
patch -p1 -i "${srcdir}/0008-fix-bugpoint-multiple-definition.patch"
|
||||
|
||||
cd "${srcdir}/cfe-${pkgver}.src"
|
||||
patch -p1 -i "${srcdir}/0101-mingw-w64-enable-support-for-__declspec-selectany.patch"
|
||||
@@ -202,12 +210,13 @@ prepare() {
|
||||
# See http://llvm.org/bugs/show_bug.cgi?id=4840
|
||||
|
||||
cd "${srcdir}"/llvm-${pkgver}.src
|
||||
rm -rf tools/clang tools/clang/tools/extra tools/lld tools/lldb projects/compiler-rt projects/libcxx \
|
||||
rm -rf tools/clang tools/clang/tools/extra tools/lld tools/lldb tools/polly projects/compiler-rt projects/libcxx \
|
||||
projects/libcxxabi projects/libunwind projects/test-suite | true
|
||||
mv "${srcdir}/cfe-${pkgver}.src" tools/clang
|
||||
mv "${srcdir}/clang-tools-extra-${pkgver}.src" tools/clang/tools/extra
|
||||
mv "${srcdir}/lld-${pkgver}.src" tools/lld
|
||||
mv "${srcdir}/lldb-${pkgver}.src" tools/lldb
|
||||
mv "${srcdir}/polly-${pkgver}.src" tools/polly
|
||||
mv "${srcdir}/compiler-rt-${pkgver}.src" projects/compiler-rt
|
||||
mv "${srcdir}/libcxxabi-${pkgver}.src" projects/libcxxabi
|
||||
mv "${srcdir}/libcxx-${pkgver}.src" projects/libcxx
|
||||
@@ -257,17 +266,16 @@ build() {
|
||||
-DCMAKE_MAKE_PROGRAM="/usr/bin/make.exe" \
|
||||
-DFFI_INCLUDE_DIR="${FFI_INCLUDE_DIR}" \
|
||||
-DCMAKE_C_FLAGS="${CFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS} ${CPPFLAGS}" \
|
||||
-DCMAKE_CXX_FLAGS="${CXXFLAGS} -D_GNU_SOURCE" \
|
||||
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
|
||||
-DLLVM_TARGETS_TO_BUILD="ARM;X86" \
|
||||
-DLLVM_ENABLE_ASSERTIONS=OFF \
|
||||
-DLLVM_ENABLE_THREADS=1 \
|
||||
-DLLVM_ENABLE_THREADS=ON \
|
||||
-DPYTHON_EXECUTABLE=${MINGW_PREFIX}/bin/python2.exe \
|
||||
-DLLVM_ENABLE_FFI=ON \
|
||||
-DLLVM_ENABLE_SPHINX=ON \
|
||||
-DLLVM_BUILD_LLVM_DYLIB=ON \
|
||||
-DLLVM_LINK_LLVM_DYLIB=ON \
|
||||
-DCMAKE_CXX_FLAGS="-D_GNU_SOURCE" \
|
||||
-DLIBCLANG_BUILD_STATIC=ON \
|
||||
-DLIBCXX_ENABLE_SHARED=OFF \
|
||||
-DLIBCXXABI_ENABLE_SHARED=OFF \
|
||||
@@ -281,7 +289,7 @@ build() {
|
||||
# Disable automatic installation of components that go into subpackages
|
||||
# -i.orig to check what has been removed in-case it starts dropping more than it should
|
||||
#
|
||||
sed -i.orig '/\(clang\|lld\|lldb\)\/cmake_install.cmake/d' tools/cmake_install.cmake
|
||||
sed -i.orig '/\(clang\|lld\|lldb\|polly\)\/cmake_install.cmake/d' tools/cmake_install.cmake
|
||||
sed -i.orig '/\(extra\|scan-build\|scan-view\)\/cmake_install.cmake/d' tools/clang/tools/cmake_install.cmake
|
||||
# sed -i.orig '/\(compiler-rt\|libcxxabi\|libcxx\)\/cmake_install.cmake/d' projects/cmake_install.cmake
|
||||
sed -i.orig '/\(compiler-rt\|libcxxabi\|libcxx\|libunwind\)\/cmake_install.cmake/d' projects/cmake_install.cmake
|
||||
@@ -295,7 +303,8 @@ build() {
|
||||
|
||||
package_llvm() {
|
||||
pkgdesc="Low Level Virtual Machine (mingw-w64)"
|
||||
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs") # "compiler-rt"
|
||||
depends=("${MINGW_PACKAGE_PREFIX}-libffi"
|
||||
"${MINGW_PACKAGE_PREFIX}-gcc-libs") # "compiler-rt"
|
||||
|
||||
cd "${srcdir}"/llvm-${pkgver}.src
|
||||
|
||||
@@ -322,7 +331,7 @@ package_compiler-rt() {
|
||||
|
||||
cd "${srcdir}"/llvm-${pkgver}.src
|
||||
make -C ../build-${CARCH}/projects/compiler-rt DESTDIR="${pkgdir}" install
|
||||
}
|
||||
}
|
||||
|
||||
package_libcxxabi() {
|
||||
pkgdesc="C++ Standard Library Support (mingw-w64)"
|
||||
@@ -416,6 +425,15 @@ package_clang-tools-extra() {
|
||||
make -C ../build-${CARCH}/tools/clang/tools/extra -j1 DESTDIR="${pkgdir}" install
|
||||
}
|
||||
|
||||
package_polly() {
|
||||
pkgdesc="Polly - Polyhedral optimizations for LLVM (mingw-w64)"
|
||||
url="http://polly.llvm.org/"
|
||||
depends=("${MINGW_PACKAGE_PREFIX}-llvm=${pkgver}-${pkgrel}")
|
||||
|
||||
cd "${srcdir}"/llvm-${pkgver}.src
|
||||
make -C ../build-${CARCH}/tools/polly DESTDIR="${pkgdir}" install
|
||||
}
|
||||
|
||||
# Wrappers
|
||||
package_mingw-w64-i686-clang(){
|
||||
package_clang
|
||||
@@ -457,6 +475,10 @@ package_mingw-w64-i686-llvm(){
|
||||
package_llvm
|
||||
}
|
||||
|
||||
package_mingw-w64-i686-polly(){
|
||||
package_polly
|
||||
}
|
||||
|
||||
package_mingw-w64-x86_64-clang(){
|
||||
package_clang
|
||||
}
|
||||
@@ -497,4 +519,6 @@ package_mingw-w64-x86_64-llvm(){
|
||||
package_llvm
|
||||
}
|
||||
|
||||
# vim:set ts=2 sw=2 et:
|
||||
package_mingw-w64-x86_64-polly(){
|
||||
package_polly
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user