From db1552c6354b8f22a3c70a66bd6697b9b3dd52e4 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Fri, 19 Feb 2021 13:07:02 +0000 Subject: [PATCH] community/ldc to 1.24.0-4 --- community/ldc/PKGBUILD | 12 +++++++++--- community/ldc/llvm-11.1.0.patch | 12 ++++++++++++ 2 files changed, 21 insertions(+), 3 deletions(-) create mode 100644 community/ldc/llvm-11.1.0.patch diff --git a/community/ldc/PKGBUILD b/community/ldc/PKGBUILD index dbd55f3f9..e4776d426 100644 --- a/community/ldc/PKGBUILD +++ b/community/ldc/PKGBUILD @@ -13,9 +13,9 @@ groups=('dlang' 'dlang-ldc') pkgver=1.24.0 _pkgcommit=7b306c5ed148e39bcbd7143ca32416afe1a9ee5f _dversion=2.094.1 -_clangversion=11.0.1 # related to where ldc2 looks for compiler-rt sanitizers +_clangversion=11.1.0 # related to where ldc2 looks for compiler-rt sanitizers epoch=2 -pkgrel=3 +pkgrel=4 pkgdesc="A D Compiler based on the LLVM Compiler Infrastructure including D runtime and libphobos2" arch=('x86_64') url="https://github.com/ldc-developers/ldc" @@ -27,12 +27,14 @@ source=( "ldc-druntime::git+https://github.com/ldc-developers/druntime.git" "ldc-phobos::git+https://github.com/ldc-developers/phobos.git" "ldc-testsuite::git+https://github.com/ldc-developers/dmd-testsuite.git" + "llvm-11.1.0.patch" ) sha256sums=('SKIP' 'SKIP' 'SKIP' - 'SKIP') + 'SKIP' + 'a26958fbfb958d055d02db4695ace6ce225f42e218a9bcb6e17452e06a717550') prepare() { cd "$srcdir/ldc" @@ -45,6 +47,10 @@ prepare() { # Set version used for path construction in getFullClangCompilerRTLibPath() sed -i "s/ldc::llvm_version_base/\"$_clangversion\"/" driver/linker-gcc.cpp + + # Fix build with LLVM 11.1.0 + patch -Np1 -d runtime/druntime <../llvm-11.1.0.patch + cp -v tools/ldc-profdata/llvm-profdata-11.{0,1}.cpp } build() { diff --git a/community/ldc/llvm-11.1.0.patch b/community/ldc/llvm-11.1.0.patch new file mode 100644 index 000000000..3771ea8d8 --- /dev/null +++ b/community/ldc/llvm-11.1.0.patch @@ -0,0 +1,12 @@ +diff --git a/src/ldc/intrinsics.di b/src/ldc/intrinsics.di +index f5d2c207..4502ac26 100644 +--- a/src/ldc/intrinsics.di ++++ b/src/ldc/intrinsics.di +@@ -26,6 +26,7 @@ else version (LDC_LLVM_800) enum LLVM_version = 800; + else version (LDC_LLVM_900) enum LLVM_version = 900; + else version (LDC_LLVM_1000) enum LLVM_version = 1000; + else version (LDC_LLVM_1100) enum LLVM_version = 1100; ++else version (LDC_LLVM_1101) enum LLVM_version = 1101; + else static assert(false, "LDC LLVM version not supported"); + + enum LLVM_atleast(int major) = (LLVM_version >= major * 100);