commit: 93e90a6bee706d1ddeaf91d3a06eaaf2119edc92
Author: Andrei Horodniceanu <a.horodniceanu <AT> proton <DOT> me>
AuthorDate: Tue Apr 22 06:36:19 2025 +0000
Commit: Horodniceanu Andrei <a.horodniceanu <AT> proton <DOT> me>
CommitDate: Tue Apr 22 19:36:42 2025 +0000
URL: https://gitweb.gentoo.org/repo/user/dlang.git/commit/?id=93e90a6b
dev-lang/dmd: add 2.110.0
Start using pre-generated man pages.
Signed-off-by: Andrei Horodniceanu <a.horodniceanu <AT> proton.me>
dev-lang/dmd/Manifest | 4 ++++
dev-lang/dmd/dmd-2.110.0.ebuild | 13 +++++++++++
eclass/dlang-compilers-r1.eclass | 1 +
eclass/dmd-r1.eclass | 49 ++++++++++++++++++++++++----------------
profiles/use.desc | 2 ++
5 files changed, 50 insertions(+), 19 deletions(-)
diff --git a/dev-lang/dmd/Manifest b/dev-lang/dmd/Manifest
index 4dc9887..f87b65a 100644
--- a/dev-lang/dmd/Manifest
+++ b/dev-lang/dmd/Manifest
@@ -2,6 +2,8 @@ DIST dmd-2.107.0.tar.gz 5947524 BLAKE2B
11f7d5f75842b1a2657a8687f69e7bf442aff55f
DIST dmd-2.108.1.tar.gz 5984240 BLAKE2B
839dd385389590ec47450f4bcb56b48c3fcdcbda545ad2649b02ae5e491946515ca320f638e96e593b70f4734a72a8b6376b10558affc299a9507d53c0bc6583
SHA512
b2192e3138a0057b40d571b7145dd8a967660e296f1bc1bf7a14cb8f6224b672042195a4896feeba72bc34034566095e6898af21912f15c936411906cb5520b7
DIST dmd-2.109.1.tar.gz 6017602 BLAKE2B
ba5ba5c4e879b086591c77fbab4ef1bed2726a843a213f8662c3cbbcf4d4897ea01725cff2b44b785674ef511dd75c011450711e3e18a45f821dd23a81dc8526
SHA512
d4b6d4da6ff9f471ea028688fa3694440d3cf3b98f30f7a3665f0a61e667b4f78c2d4554d4ea2d78a0ab2c890e74b079150b6759fdc1ac612b9e374a730b837c
DIST dmd-2.110.0-beta.1.tar.gz 6007288 BLAKE2B
6153de8ddabb45f19e9707fb04ab4b82681938027883ee9b175a66df268ba7e70c193e9a51b691defe8f2e120b98dcba73fa24859c4c246daf24823b5155acae
SHA512
c71e101606bf76f14c3e5985c11f789a7ebca1d737277945e81d834e30602ef1a9012f2ef3987fc85bcef32c599099381fd796535d78d1251e3b4727b5e47b94
+DIST dmd-2.110.0.tar.gz 6011457 BLAKE2B
c53e39babeb69cdd5f5afef7a0a824a052f84bb1df0e2d19a57467720c8a5ea0757e3839d5b022337e5cc75fecc5e946158939fd74f181bfadc2134be60c692e
SHA512
ae16c760a7f9339e7256344dfb93bd97a13b36e04fd291973f4e8074cde845d633033307f1d312c89dbd8b7f8c280e8f22555c6225458b73ca664a0fa5987893
+DIST dmd-man-pages-2.110.0.tar.xz 3960 BLAKE2B
6caf59777b608afa9df55edb6e88179de219c14cd5c7f282957b7f358ceb2fbb983431f6ffc99805765ad3cdc50a0649f64e2af55f4b00f5d7618f93192e3103
SHA512
9c7966943ceac35b04daba980a57e3dda5671868f1f600850deb41115871bb1098af2ab36bc80e8b33fffb1a59ef038db9173373b5ff6940c8fea453a12bde1a
DIST dmd.2.101.2.linux.tar.xz 22666828 BLAKE2B
8233d9f375291d73530a677cd5180153bc758076fd135c420cbb088bf84147fa1f0dc1cd563e94737e781823db26e4e0250af31d68819c3375224a92e53876b6
SHA512
7e1ce980fce7a2a995af92b2e05acdfcb2d8abc14780e11d8234792b80edead68c455e644e1830d360651bdacefa1aace963ce652fbfd3b0951dd9002fcfb87f
DIST dmd.2.102.2.linux.tar.xz 22699620 BLAKE2B
b0a8fc0650bfe5df4a40ccf20d160765a8ed7804915a1049366ff8b4044d7036ca7f27c8bc71146dc33bf60bf03bc09a9bd8758b9850b020480774f130325abd
SHA512
a2dab6efe46176bed0dca98fcf590c6823be9e4d5ca89bce0ff088e7c59a63f8eb4bb3742df1975cc90b5efd78c11377e682b0083fe44c394a73161cbb2b3aa3
DIST dmd.2.103.1.linux.tar.xz 22747324 BLAKE2B
b00f41b4ab48be9c5467342314995e69332d4c8bff86083474a940431721d179d5e5ef64734f355df2d96637983de2262d45516594434ad3ad6c4d57a0d7a54c
SHA512
854cf08d715506bd36d791c1471f2dd1d834f439bdf4489b4addf0cc5abdecbefceb966baeb764eb5ca816a5830ac7374818ba6fbcad24668d011d56a32a1f15
@@ -12,7 +14,9 @@ DIST dmd.2.107.0.linux.tar.xz 22438472 BLAKE2B
551b2a723256b61b4c07fe44ace55c91c
DIST dmd.2.108.1.linux.tar.xz 22554596 BLAKE2B
9442455e84061fe832f93ae2658089156f567639850bd58d3a8df0f1678138c1cd1fe607d67ac5ace6fa41a930211140cba13b421fa0cff4fd9e781e1ee90025
SHA512
8b7388f5d0d1bde7cfd9c19edad99e951c8d38ccd524e876b3294509fff4436d9652aaba44dd8e2fd2fbb329075af09519b3e48b4bec7d2a85b2a58da785526f
DIST dmd.2.109.1.linux.tar.xz 22635268 BLAKE2B
1a188de152f530146461c1d58452baf7bd5fbb8eeb68f52a45a1e3e2eb79205b5226e029b1bf93c69a7e2f751ffebea52ef900d0d1c2cdc62de1ccdc44371585
SHA512
c9c977e8068ee8d6db9d7c8980b21d1bd32a2e703e11eddc963980c7c560e77bc78caf749a48a76b319d3d27027b83c4fa0d6289a31a46ddcbe59b8d46fb1282
DIST dmd.2.110.0-beta.1.linux.tar.xz 22648340 BLAKE2B
52218d3c29b4da74d509bb5092a5d7fc5b62468992b4a005e4d164124030623af57ff3a470ae5834f11a1ad5db918266059c6403d18b85026f7475c60a12345c
SHA512
b8b791c2347b52990263cc4a75ca64cd66812dd1563bf0936cbff287da02218568579ff710fcbb0cc2677407317f903d7d9e64061aa817c707a184c043bacdb6
+DIST dmd.2.110.0.linux.tar.xz 23607140 BLAKE2B
e8919d6245ea5d062b86f92c4fba048c70d22ca1ff748b4e6b3efb166329e21f3dd8c17a170526f3d88e2ce465525d55d079457a68213253d31fa52d9eacee6e
SHA512
f0ad47f0abef9f4442227bfb69f22e94a127f4c908b1f9e13e17788d9f657421266c1f64f44ec5cf7974f50f2188564b56c914c39dcfaff528c236c4302f5d1d
DIST phobos-2.107.0.tar.gz 2756892 BLAKE2B
604d19254e453f0a04e6659e46de187837f5ab82278f8a52ae9714b91d3554e3cc166086860ca32e39d722847c4e962762e26e8226ce685064d5dcc10d3a708b
SHA512
4002878851673bc4deaec66dd35d2dc3cfe5f72b7050e2b454bf53aeaa8b4a68fc425d248eab4fbea89f251298b66c726166c41666a69a5508092fd30a9903d5
DIST phobos-2.108.1.tar.gz 2749901 BLAKE2B
dcf5117d5a25b458f2eca77441ffbfb1778e559c11726730682662601035dd4c5202934d244604fdc8cfecc5aa36a92a7ad1f842014c8a77b9c43aa0ce6a9876
SHA512
0267a0efabe1f447198810e71b11cee16f0cf7cfada7907a29133ca0483c5ce4f647b7afbf627d34b746f8afbf9bafa26183b3decf2c67d2c1329ad7b81bfad5
DIST phobos-2.109.1.tar.gz 2781164 BLAKE2B
8475ec1236dac6a711839387980986530e3671da603800dcffb09cc369f86b8c04ac27ee84629285857ba4255dfbfdff14c209f02db11e140a7aeced9fbd52d0
SHA512
712478d2fb60a792ce5703062f0af3bafcddb54970cb8b9b579b8cd2ff560f958c7007d18dd4a66f7d4f25f74b8765505fe2de59c1756a4f679c2064f8025bcb
DIST phobos-2.110.0-beta.1.tar.gz 2779702 BLAKE2B
b74ab35e5c59e10352452e50f6646c787c848912988f4810ca7d111d52ff2b7b2db276fcf62b093ec30815a1e63e22dd9f9f5cd397edcc802fa62c995ae0f9ef
SHA512
68f074775d28edf349e7e424dc30b5c3d698c7fb8388cb49ccdcd51498e0708c920546b8bd6aad6c46064423e5b4861577abd80ddb768c9ec071f9662a1ac52f
+DIST phobos-2.110.0.tar.gz 2781787 BLAKE2B
1f8ff3fd8d24e236506c3da27bfb07eb064fa5291ce57ae8a8c0e50a9922d5e37b009ad4a55eea538da7d287562b89bcd6df90955377562b3df76c868e45e8e1
SHA512
ef28943e5f94f37965dc0ea0a2bb6edeaed2f217395ddb26c56f187ee6536eeaf109e1566bb9cd157a549379bbca8329e5fa8121f6f5f35071a60c7de15db76b
diff --git a/dev-lang/dmd/dmd-2.110.0.ebuild b/dev-lang/dmd/dmd-2.110.0.ebuild
new file mode 100644
index 0000000..30d21cc
--- /dev/null
+++ b/dev-lang/dmd/dmd-2.110.0.ebuild
@@ -0,0 +1,13 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+KEYWORDS="-* ~amd64 ~x86"
+DLANG_COMPAT=( dmd-2_{106..110} gdc-1{3,4} ldc2-1_{35..40} )
+
+inherit dmd-r1
+
+PATCHES=(
+ "${FILESDIR}/2.107-dmd-r1-link-32-bit-shared-lib-with-ld.bfd.patch"
+)
diff --git a/eclass/dlang-compilers-r1.eclass b/eclass/dlang-compilers-r1.eclass
index 59ea1d2..56c3f55 100644
--- a/eclass/dlang-compilers-r1.eclass
+++ b/eclass/dlang-compilers-r1.eclass
@@ -46,6 +46,7 @@ readonly _DLANG_DMD_FRONTENDS=(
"2.107 2.107 ~amd64 ~x86"
"2.108 2.108 ~amd64 ~x86"
"2.109 2.109 ~amd64 ~x86"
+ "2.110 2.110 ~amd64 ~x86"
)
# @ECLASS_VARIABLE: _DLANG_GDC_FRONTENDS
diff --git a/eclass/dmd-r1.eclass b/eclass/dmd-r1.eclass
index 876b883..76e1c1c 100644
--- a/eclass/dmd-r1.eclass
+++ b/eclass/dmd-r1.eclass
@@ -1,4 +1,4 @@
-# Copyright 2024 Gentoo Authors
+# Copyright 2024-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# @ECLASS: dmd-r1.eclass
@@ -89,6 +89,10 @@ if [[ ${PV} != *9999* ]]; then
https://github.com/dlang/${PN}/archive/refs/tags/v${MY_VER}.tar.gz ->
${PN}-${MY_VER}.tar.gz
https://github.com/dlang/phobos/archive/refs/tags/v${MY_VER}.tar.gz ->
phobos-${MY_VER}.tar.gz
"
+ if ver_test -ge 2.110.0; then
+
man_pages_uri="https://github.com/the-horo/distfiles/releases/download/init"
+ SRC_URI+=" ${man_pages_uri}/${PN}-man-pages-${PV}.tar.xz"
+ fi
else
inherit git-r3
EGIT_REPO_URI="https://github.com/dlang/dmd"
@@ -119,6 +123,8 @@ RDEPEND="
!selfhost? ( ${DLANG_DEPS} )
"
+MAN_PAGES_S="${WORKDIR}/${PN}-man-pages-${PV}"
+
dmd-r1_pkg_setup() {
if use !selfhost; then
dlang-single_pkg_setup
@@ -261,21 +267,27 @@ dmd-r1_src_compile() {
_dmd_foreach_abi compile_libraries
- # Build the man pages
- local cmd=(
- env
- VERBOSE=1
- HOST_DMD="${GENERATED_DMD}"
- "${BUILD_D}"
- -j$(makeopts_jobs)
- man
- # ${GENERATED_DMD} is not yet fully functional as we didn't
- # create a good dmd.conf. But instead of doing that we're going
- # to specify our flags here.
- DFLAGS="-defaultlib=phobos2
-L-rpath=${S}/phobos/generated/linux/release/$(dlang_get_abi_bits)"
- )
- echo "${cmd[@]}"
- "${cmd[@]}" || die "Could not generate man pages"
+ if [[ ${PV} == *9999* ]] || ver_test -lt 2.110.0 ; then
+ # Build the man pages
+ local cmd=(
+ env
+ VERBOSE=1
+ HOST_DMD="${GENERATED_DMD}"
+ "${BUILD_D}"
+ -j$(makeopts_jobs)
+ man
+ # ${GENERATED_DMD} is not yet fully functional as we
didn't
+ # create a good dmd.conf. But instead of doing that
we're going
+ # to specify our flags here.
+ DFLAGS="-defaultlib=phobos2
-L-rpath=${S}/phobos/generated/linux/release/$(dlang_get_abi_bits)"
+ )
+ echo "${cmd[@]}"
+ "${cmd[@]}" || die "Could not generate man pages"
+
+ # Place them in a predictable directory
+ mkdir "${MAN_PAGES_S}" || die
+ cp dmd/generated/docs/man/{man1/dmd.1,man5/dmd.conf.5}
"${MAN_PAGES_S}" || die
+ fi
# Now clean up some artifacts that would make the install phase
# harder (we rely on globbing and recursive calls a lot).
@@ -314,7 +326,6 @@ dmd-r1_src_test() {
}
_dmd_foreach_abi test_hello_world
-
}
dmd-r1_src_install() {
@@ -358,9 +369,9 @@ dmd-r1_src_install() {
doins -r phobos/{etc,std}
insinto "${dmd_prefix}"/man/man1
- doins dmd/generated/docs/man/man1/dmd.1
+ doins "${MAN_PAGES_S}"/dmd.1
insinto "${dmd_prefix}"/man/man5
- doins dmd/generated/docs/man/man5/dmd.conf.5
+ doins "${MAN_PAGES_S}"/dmd.conf.5
if use examples; then
# Problematic license
diff --git a/profiles/use.desc b/profiles/use.desc
index f109784..3b71ac8 100644
--- a/profiles/use.desc
+++ b/profiles/use.desc
@@ -7,6 +7,7 @@ dlang_single_target_dmd-2_106 - Build for DMD 2.106 only
dlang_single_target_dmd-2_107 - Build for DMD 2.107 only
dlang_single_target_dmd-2_108 - Build for DMD 2.108 only
dlang_single_target_dmd-2_109 - Build for DMD 2.109 only
+dlang_single_target_dmd-2_110 - Build for DMD 2.110 only
dlang_single_target_gdc-12 - Build for GCC 12 only
dlang_single_target_gdc-13 - Build for GCC 13 only
@@ -31,6 +32,7 @@ dlang_targets_dmd-2_106 - Build with DMD 2.106
dlang_targets_dmd-2_107 - Build with DMD 2.107
dlang_targets_dmd-2_108 - Build with DMD 2.108
dlang_targets_dmd-2_109 - Build with DMD 2.109
+dlang_targets_dmd-2_110 - Build with DMD 2.110
dlang_targets_gdc-12 - Build with GCC 12
dlang_targets_gdc-13 - Build with GCC 13