From 2bd9638ec4c501a2f6f92e25a952f1f4696199cc Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 19 Feb 2018 11:05:06 +0100 Subject: [PATCH] Update to 1.8.0 beta1 - Package new JIT libraries in ldc-jit subpackage --- .gitignore | 1 + ...edded-llvm-ar-to-LLVM-5.0-final-2349.patch | 58 ---------------- ldc.spec | 67 +++++++++++++------ sources | 2 +- 4 files changed, 47 insertions(+), 81 deletions(-) delete mode 100644 0001-Adapt-embedded-llvm-ar-to-LLVM-5.0-final-2349.patch diff --git a/.gitignore b/.gitignore index 34447a1..5c8c7ba 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,4 @@ /ldc-0.17.4-src.tar.gz /ldc-1.3.0-src.tar.gz /ldc-1.4.0-src.tar.gz +/ldc-1.8.0-beta1-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 deleted file mode 100644 index a2e2ff4..0000000 --- a/0001-Adapt-embedded-llvm-ar-to-LLVM-5.0-final-2349.patch +++ /dev/null @@ -1,58 +0,0 @@ -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 53b80ad..43324d9 100644 --- a/ldc.spec +++ b/ldc.spec @@ -1,9 +1,9 @@ %global dmdfe_major 2 %global dmdfe_minor 0 -%global dmdfe_bump 74 +%global dmdfe_bump 78 %global dmdfe %dmdfe_major.%dmdfe_minor.%dmdfe_bump -#global pre beta2 +%global pre beta1 # Enable this for bootstrapping with an older version that doesn't require a # working D compiler to build itself @@ -14,8 +14,8 @@ Name: ldc Epoch: 1 -Version: 1.4.0 -Release: 4%{?pre:.%{pre}}%{?dist} +Version: 1.8.0 +Release: 0.1%{?pre:.%{pre}}%{?dist} Summary: A compiler for the D programming language # The DMD frontend in dmd/* GPL version 1 or artistic license @@ -28,8 +28,6 @@ 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} @@ -46,6 +44,7 @@ BuildRequires: libedit-devel BuildRequires: bash-completion Requires: %{name}-druntime-devel%{?_isa} = %{epoch}:%{version}-%{release} +Requires: %{name}-jit%{?_isa} = %{epoch}:%{version}-%{release} Requires: %{name}-phobos-devel%{?_isa} = %{epoch}:%{version}-%{release} Obsoletes: ldc-config < 1:1.1.0 @@ -92,12 +91,10 @@ D. Est inclut le code système requis pour supporter le ramasse miette, tableau associatif, gestion des exceptions, opertation sur des vecteurs, démarage/extinction, etc - %package druntime-devel Summary: Support for developing D application Requires: %{name}-druntime%{?_isa} = %{epoch}:%{version}-%{release} - %description druntime-devel The druntime-devel package contains header files for developing D applications that use druntime. @@ -106,6 +103,21 @@ applications that use druntime. Le paquet druntime-devel contient les fichiers d'entêtes pour développer des applications en D utilisant druntime. +%package jit +Summary: LDC JIT library +License: Boost + +%description jit +JIT library for the LDC compiler. + +%package jit-devel +Summary: Development files for LDC JIT library +Requires: %{name}-jit%{?_isa} = %{epoch}:%{version}-%{release} + +%description jit-devel +The %{name}-jit-devel package contains development files for the LDC JIT +library. + %package phobos Summary: Standard Runtime Library License: Boost @@ -153,7 +165,6 @@ 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 @@ -209,44 +220,56 @@ install -m0644 phobos.d.tags %{buildroot}/%{_datadir}/geany/tags/ %{_bindir}/ldc-build-runtime %{_bindir}/ldc-profdata %{_bindir}/ldc-prune-cache -%{_libdir}/libldc-profile-rt.a %{_rpmconfigdir}/macros.d/macros.ldc %dir %{_datadir}/bash-completion %dir %{_datadir}/bash-completion/completions %{_datadir}/bash-completion/completions/ldc2 +%files jit +%license runtime/phobos/LICENSE_1_0.txt +%{_libdir}/libldc-jit.so.%dmdfe +%{_libdir}/libldc-jit.so.%dmdfe_bump + +%files jit-devel +%{_libdir}/libldc-jit-rt.a +%{_libdir}/libldc-jit.so + %files druntime %license runtime/druntime/LICENSE %doc runtime/druntime/README.md runtime/README -%{_libdir}/libdruntime-ldc.so.%dmdfe -%{_libdir}/libdruntime-ldc.so.%dmdfe_bump -%{_libdir}/libdruntime-ldc-debug.so.%dmdfe -%{_libdir}/libdruntime-ldc-debug.so.%dmdfe_bump +%{_libdir}/libdruntime-ldc-debug-shared.so.%dmdfe +%{_libdir}/libdruntime-ldc-debug-shared.so.%dmdfe_bump +%{_libdir}/libdruntime-ldc-shared.so.%dmdfe +%{_libdir}/libdruntime-ldc-shared.so.%dmdfe_bump %files druntime-devel %{_includedir}/d/ldc %{_includedir}/d/core -%{_libdir}/libdruntime-ldc.so -%{_libdir}/libdruntime-ldc-debug.so +%{_libdir}/libdruntime-ldc-debug-shared.so +%{_libdir}/libdruntime-ldc-shared.so %files phobos %license runtime/phobos/LICENSE_1_0.txt -%{_libdir}/libphobos2-ldc.so.%dmdfe -%{_libdir}/libphobos2-ldc.so.%dmdfe_bump -%{_libdir}/libphobos2-ldc-debug.so.%dmdfe -%{_libdir}/libphobos2-ldc-debug.so.%dmdfe_bump +%{_libdir}/libphobos2-ldc-debug-shared.so.%dmdfe +%{_libdir}/libphobos2-ldc-debug-shared.so.%dmdfe_bump +%{_libdir}/libphobos2-ldc-shared.so.%dmdfe +%{_libdir}/libphobos2-ldc-shared.so.%dmdfe_bump %files phobos-devel %dir %{_includedir}/d %{_includedir}/d/std %{_includedir}/d/etc -%{_libdir}/libphobos2-ldc.so -%{_libdir}/libphobos2-ldc-debug.so +%{_libdir}/libphobos2-ldc-debug-shared.so +%{_libdir}/libphobos2-ldc-shared.so %files phobos-geany-tags %{_datadir}/geany/tags/phobos.d.tags %changelog +* Mon Feb 19 2018 Kalev Lember - 1:1.8.0-0.1.beta1 +- Update to 1.8.0 beta1 +- Package new JIT libraries in ldc-jit subpackage + * Wed Feb 07 2018 Fedora Release Engineering - 1:1.4.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild diff --git a/sources b/sources index bf95086..aff2b2c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (ldc-0.17.4-src.tar.gz) = d45abd1506387dca8d2eef6b5afe41b3015d362d09c7fc26c6ee861140d67690ee3db31cc06ca313ba39d5f75b9620db870410140e0dd78b9038361432b238ba -SHA512 (ldc-1.4.0-src.tar.gz) = 68bd34323733a52f56f9542f542ce9391a588d46bbdb8b277b3a44caf8b2ed4c1721f1d2f9141a93e7569e25c6072a7e9aaf2f14f0172dd6b95c335bbc6815cb +SHA512 (ldc-1.8.0-beta1-src.tar.gz) = ced531c9ff419085b8f08dfcaed8fc317607ced94df6b968964794626b84cff0da3a4f70ea8a7d24cce0d39ef6a3a2a59b221aa08f5785fd7c2d4c3c9f1eac63