diff --git a/.gitignore b/.gitignore index c9b8a4c..34447a1 100644 --- a/.gitignore +++ b/.gitignore @@ -31,4 +31,3 @@ /ldc-0.17.4-src.tar.gz /ldc-1.3.0-src.tar.gz /ldc-1.4.0-src.tar.gz -/ldc-1.5.0-src.tar.gz diff --git a/0001-Adapt-embedded-llvm-ar-to-LLVM-5.0-final-2349.patch b/0001-Adapt-embedded-llvm-ar-to-LLVM-5.0-final-2349.patch new file mode 100644 index 0000000..a2e2ff4 --- /dev/null +++ b/0001-Adapt-embedded-llvm-ar-to-LLVM-5.0-final-2349.patch @@ -0,0 +1,58 @@ +From e8bfc4d9876f09b2bf08420998a92a002f752edb Mon Sep 17 00:00:00 2001 +From: kinke +Date: Tue, 26 Sep 2017 20:04:39 +0200 +Subject: [PATCH] Adapt embedded llvm-ar to LLVM 5.0 final (#2349) + +--- + driver/archiver.cpp | 14 +++++++++----- + 1 file changed, 9 insertions(+), 5 deletions(-) + +diff --git a/driver/archiver.cpp b/driver/archiver.cpp +index 78cafc8..7893129 100644 +--- a/driver/archiver.cpp ++++ b/driver/archiver.cpp +@@ -50,7 +50,7 @@ bool Symtab = true; + bool Deterministic = true; + bool Thin = false; + +-void fail(Twine Error) { outs() << "llvm-ar: " << Error << ".\n"; } ++void fail(Twine Error) { errs() << "llvm-ar: " << Error << ".\n"; } + + void fail(std::error_code EC, std::string Context = {}) { + if (Context.empty()) +@@ -79,6 +79,12 @@ int addMember(std::vector &Members, StringRef FileName, + fail(std::move(Error), FileName); + return 1; + } ++ ++#if LDC_LLVM_VER >= 500 ++ // Use the basename of the object path for the member name. ++ NMOrErr->MemberName = sys::path::filename(NMOrErr->MemberName); ++#endif ++ + if (Pos == -1) + Members.push_back(std::move(*NMOrErr)); + else +@@ -221,7 +227,7 @@ int performWriteOperation() { + auto Buf = MemoryBuffer::getFile(ArchiveName, -1, false); + std::error_code EC = Buf.getError(); + if (EC && EC != errc::no_such_file_or_directory) { +- fail("error opening '" + ArchiveName + "': " + EC.message() + "!"); ++ fail("error opening '" + ArchiveName + "': " + EC.message()); + return 1; + } + +@@ -230,9 +236,7 @@ int performWriteOperation() { + object::Archive Archive(Buf.get()->getMemBufferRef(), Err); + EC = errorToErrorCode(std::move(Err)); + if (EC) { +- fail( +- EC, +- ("error loading '" + ArchiveName + "': " + EC.message() + "!").str()); ++ fail(EC, ("error loading '" + ArchiveName + "': " + EC.message()).str()); + return 1; + } + return performWriteOperation(&Archive, std::move(Buf.get())); +-- +1.8.3.1 + diff --git a/ldc.spec b/ldc.spec index e225303..a7e9804 100644 --- a/ldc.spec +++ b/ldc.spec @@ -1,21 +1,21 @@ %global dmdfe_major 2 %global dmdfe_minor 0 -%global dmdfe_bump 75 +%global dmdfe_bump 74 %global dmdfe %dmdfe_major.%dmdfe_minor.%dmdfe_bump #global pre beta2 # Enable this for bootstrapping with an older version that doesn't require a # working D compiler to build itself -%global bootstrap 1 +%global bootstrap 0 %global bootstrap_version 0.17.4 %undefine _hardened_build Name: ldc Epoch: 1 -Version: 1.5.0 -Release: 1%{?pre:.%{pre}}%{?dist} +Version: 1.4.0 +Release: 3%{?pre:.%{pre}}%{?dist} Summary: A compiler for the D programming language # The DMD frontend in dmd/* GPL version 1 or artistic license @@ -28,6 +28,8 @@ Source1: https://github.com/ldc-developers/ldc/releases/download/v%{boots %endif Source3: macros.%{name} +Patch0: 0001-Adapt-embedded-llvm-ar-to-LLVM-5.0-final-2349.patch + ExclusiveArch: %{ldc_arches} %if ! 0%{?bootstrap} @@ -151,6 +153,7 @@ Active l'autocompletion pour pour la bibliothèque phobos dans geany (IDE) %prep %setup -q -n %{name}-%{version}%{?pre:-%{pre}}-src +%patch0 -p1 # temp geany config directory for allow geany to generate tags mkdir geany_config @@ -244,10 +247,6 @@ install -m0644 phobos.d.tags %{buildroot}/%{_datadir}/geany/tags/ %{_datadir}/geany/tags/phobos.d.tags %changelog -* Mon Oct 30 2017 Kalev Lember - 1:1.5.0-1 -- Update to 1.5.0 -- Enable bootstrap - * Tue Sep 26 2017 Tom Stellard - 1:1.4.0-3 - Fix build with LLVM 5.0 diff --git a/sources b/sources index d6cc9c8..bf95086 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (ldc-0.17.4-src.tar.gz) = d45abd1506387dca8d2eef6b5afe41b3015d362d09c7fc26c6ee861140d67690ee3db31cc06ca313ba39d5f75b9620db870410140e0dd78b9038361432b238ba -SHA512 (ldc-1.5.0-src.tar.gz) = 3bf3ee7f42ea6c426af375aaa20b184585af25cb133da5278b35d6d5481831abcce627dcc9f63fe20682ce5a024645e987d03bf2e36faf4d08807e4edd861ac1 +SHA512 (ldc-1.4.0-src.tar.gz) = 68bd34323733a52f56f9542f542ce9391a588d46bbdb8b277b3a44caf8b2ed4c1721f1d2f9141a93e7569e25c6072a7e9aaf2f14f0172dd6b95c335bbc6815cb