aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHorodniceanu Andrei <a.horodniceanu@proton.me>2023-10-19 18:37:35 +0300
committerHorodniceanu Andrei <a.horodniceanu@proton.me>2023-10-22 17:42:04 +0300
commita20177b38d4d618b20ed995b1d40e6544201dffc (patch)
tree8fb2f40ff6f794753091bd8b8614d4ab993e93b0 /dev-lang
parentdev-lang/ldc2: add 1.33.0 (diff)
downloaddlang-a20177b38d4d618b20ed995b1d40e6544201dffc.tar.gz
dlang-a20177b38d4d618b20ed995b1d40e6544201dffc.tar.bz2
dlang-a20177b38d4d618b20ed995b1d40e6544201dffc.zip
dev-lang/ldc2: add 1.35.0
- Update to EAPI 8 - drop dev-util/ninja DEPEND since it is handled by cmake.eclass - move app-eselect/eselect-dlang to IDEPEND - add github upstream metadata Signed-off-by: Horodniceanu Andrei <a.horodniceanu@proton.me>
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/ldc2/Manifest1
-rw-r--r--dev-lang/ldc2/ldc2-1.35.0.ebuild82
-rw-r--r--dev-lang/ldc2/metadata.xml9
3 files changed, 91 insertions, 1 deletions
diff --git a/dev-lang/ldc2/Manifest b/dev-lang/ldc2/Manifest
index 0d07c7f..af4b6bc 100644
--- a/dev-lang/ldc2/Manifest
+++ b/dev-lang/ldc2/Manifest
@@ -4,3 +4,4 @@ DIST ldc-1.31.0-src.tar.gz 8042077 BLAKE2B 6840b3d591b644eca5e7f3f00a39ae477981e
DIST ldc-1.32.2-src.tar.gz 8116363 BLAKE2B 2fb0c2c01bc6257dcaeca75318e241ebdb9b6212a5a368ba9e2337a143ed2c7ddc932ffb1c70587142ab755f7d36f8f27a94148de32c60fef440f15cc3e9cdec SHA512 1494c7e3905851dbb679b8c7a651f21b57fa58a6bfbf5bd83661829b69158cbd1c963db463fd6dbd60c1be1c739396b761376fc2978dd71dee968aaae3629e2b
DIST ldc-1.33.0-src.tar.gz 8139266 BLAKE2B 6c2efd0765307815563bc7bd775f1faef3f5e19c82e4aee038f668dd00a2521fa58bd32f6a45d2bc5a3854f31a2d7bd47b1be255aeafc0a4206f72d663b0021f SHA512 ef5a42934e24caf947b63ef29a62205b07b539a59292266877f2d5f5ecf06272e1fc3ca83772d02eda203e4b166fbcea788b804740b8780b07a4643e4b51bf70
DIST ldc-1.34.0-src.tar.gz 8176200 BLAKE2B 048975a3142da860540ba5378be5214884eb44e2f4492e95aa124a669ccf53bbcf9ccce24f12946948265af5a0de1f5771d21f196052ab53275aa8bb7d0dfb2e SHA512 c4ceda1d448b91f706719cdea141cb705f9996ea3f86c107620f13e2f50f6a29724a69b5e3b01c51e13dd4e50ba29a280785ce0789188641c90738d774300a06
+DIST ldc-1.35.0-src.tar.gz 8241960 BLAKE2B fb531841e57225f82cddf5135d0b0da98624d33aba76a1d39d98b13deb319556eaad3599ba1461f9f509c6b7b535632b85805de2433bae4ccf50c691c116da3f SHA512 f85871832455a8e3208f7f905b04ac249a988f8ea2cfe81ed2a67b56404d11a08653b13b6019f45d9dbcf6fbd60086e6aabb13307908d1bbf6d86bd91462dfaa
diff --git a/dev-lang/ldc2/ldc2-1.35.0.ebuild b/dev-lang/ldc2/ldc2-1.35.0.ebuild
new file mode 100644
index 0000000..08a198e
--- /dev/null
+++ b/dev-lang/ldc2/ldc2-1.35.0.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib-build cmake llvm
+
+MY_PV="${PV//_/-}"
+MY_P="ldc-${MY_PV}-src"
+SRC_URI="https://github.com/ldc-developers/ldc/releases/download/v${MY_PV}/${MY_P}.tar.gz"
+S=${WORKDIR}/${MY_P}
+
+DESCRIPTION="LLVM D Compiler"
+HOMEPAGE="https://github.com/ldc-developers/ldc"
+KEYWORDS="~amd64 ~arm64 ~x86"
+LICENSE="BSD"
+SLOT="$(ver_cut 1-2)/$(ver_cut 3)"
+
+IUSE="static-libs"
+
+# Upstream supports LLVM 11.0 through 16.0.
+DEPEND="
+ || (
+ sys-devel/llvm:16
+ sys-devel/llvm:15
+ sys-devel/llvm:14
+ )
+ <sys-devel/llvm-17:="
+IDEPEND=">=app-eselect/eselect-dlang-20140709"
+RDEPEND="
+ ${DEPEND}
+ ${IDEPEND}"
+
+LLVM_MAX_SLOT=16
+PATCHES="${FILESDIR}/ldc2-1.15.0-link-defaultlib-shared.patch"
+
+# For now, we support amd64 multilib. Anyone is free to add more support here.
+MULTILIB_COMPAT=( abi_x86_{32,64} )
+
+# Upstream supports "2.079-"
+DLANG_VERSION_RANGE="2.075-2.080 2.082-"
+DLANG_PACKAGE_TYPE="single"
+
+inherit dlang
+
+src_prepare() {
+ cmake_src_prepare
+}
+
+d_src_configure() {
+ # Make sure libphobos2 is installed into ldc2's directory.
+ export LIBDIR_${ABI}="${LIBDIR_HOST}"
+ local mycmakeargs=(
+ -DD_VERSION=2
+ -DCMAKE_INSTALL_PREFIX=/usr/lib/ldc2/$(ver_cut 1-2)
+ -DD_COMPILER="${DMD} $(dlang_dmdw_dcflags)"
+ -DLDC_WITH_LLD=OFF
+ )
+ use static-libs && mycmakeargs+=( -DBUILD_SHARED_LIBS=BOTH ) || mycmakeargs+=( -DBUILD_SHARED_LIBS=ON )
+ use abi_x86_32 && use abi_x86_64 && mycmakeargs+=( -DMULTILIB=ON )
+ cmake_src_configure
+}
+
+d_src_compile()
+{
+ cmake_src_compile
+}
+
+d_src_install() {
+ cmake_src_install
+
+ rm -rf "${ED}"/usr/share/bash-completion
+}
+
+pkg_postinst() {
+ # Update active ldc2
+ "${ROOT}"/usr/bin/eselect dlang update ldc2
+}
+
+pkg_postrm() {
+ "${ROOT}"/usr/bin/eselect dlang update ldc2
+}
diff --git a/dev-lang/ldc2/metadata.xml b/dev-lang/ldc2/metadata.xml
index 920817d..7fec064 100644
--- a/dev-lang/ldc2/metadata.xml
+++ b/dev-lang/ldc2/metadata.xml
@@ -1,3 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
-<pkgmetadata/> \ No newline at end of file
+<pkgmetadata>
+ <upstream>
+ <bugs-to>https://github.com/ldc-developers/ldc/issues</bugs-to>
+ <changelog>https://github.com/ldc-developers/ldc/blob/master/CHANGELOG.md</changelog>
+ <doc lang="en">https://wiki.dlang.org/LDC</doc>
+ <remote-id type="github">ldc-developers/ldc</remote-id>
+ </upstream>
+</pkgmetadata>