Date: Wed, 05 Aug 2026 08:21:23 +0000 From: Piotr Kubaj <pkubaj@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: 7af3bb12f06a - main - lang/ldc: add new bootstrap for powerpc64le after long double switch Message-ID: <6a72f283.3a137.5ef5d0a5@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by pkubaj: URL: https://cgit.FreeBSD.org/ports/commit/?id=7af3bb12f06a58afc7946dfef264578bd24d22cd commit 7af3bb12f06a58afc7946dfef264578bd24d22cd Author: Piotr Kubaj <pkubaj@FreeBSD.org> AuthorDate: 2026-08-05 08:01:29 +0000 Commit: Piotr Kubaj <pkubaj@FreeBSD.org> CommitDate: 2026-08-05 08:14:48 +0000 lang/ldc: add new bootstrap for powerpc64le after long double switch Two new patches: 1. Don't use glibc's dual long double mechanism - we don't support IBM long double. 2. Use proper mangling. --- lang/ldc/Makefile | 4 ++++ lang/ldc/distinfo | 2 ++ lang/ldc/files/patch-gen_target.cpp | 12 ++++++++++++ .../files/patch-runtime_druntime_src_core_stdc_config.d | 15 +++++++++++++++ 4 files changed, 33 insertions(+) diff --git a/lang/ldc/Makefile b/lang/ldc/Makefile index 35d45daf815e..2614a915566d 100644 --- a/lang/ldc/Makefile +++ b/lang/ldc/Makefile @@ -39,7 +39,11 @@ MASTER_SITES+= https://github.com/ldc-developers/${PORTNAME}/releases/download/v BOOTSTRAP_ARCH= ppc64 MASTER_SITES+= LOCAL/pkubaj:bootstrap .elif ${ARCH} == powerpc64le +. if ${OSVERSION} >= 1600019 +BOOTSTRAP_ARCH= ppc64le-ld128 +. else BOOTSTRAP_ARCH= ppc64le +. endif MASTER_SITES+= LOCAL/pkubaj:bootstrap .endif diff --git a/lang/ldc/distinfo b/lang/ldc/distinfo index 80a86043e32c..30fa10baf325 100644 --- a/lang/ldc/distinfo +++ b/lang/ldc/distinfo @@ -7,3 +7,5 @@ SHA256 (ldc2-1.42.0-freebsd-ppc64le.tar.xz) = 7f14ca7c6d7b717f905ad6ffdbe5446ced SIZE (ldc2-1.42.0-freebsd-ppc64le.tar.xz) = 16168864 SHA256 (ldc2-1.42.0-freebsd-ppc64.tar.xz) = 3c635430a169d85e11c46eaed84d4fd3348ed096a89f221e8f188900a5708f8d SIZE (ldc2-1.42.0-freebsd-ppc64.tar.xz) = 14346472 +SHA256 (ldc2-1.42.0-freebsd-ppc64le-ld128.tar.xz) = 2e48907ac953620de7c378a82c92fecdb1fdd3dbe27e8bc1a2e88be84c81c3b5 +SIZE (ldc2-1.42.0-freebsd-ppc64le-ld128.tar.xz) = 16342464 diff --git a/lang/ldc/files/patch-gen_target.cpp b/lang/ldc/files/patch-gen_target.cpp new file mode 100644 index 000000000000..ddf06d68bef8 --- /dev/null +++ b/lang/ldc/files/patch-gen_target.cpp @@ -0,0 +1,12 @@ +--- gen/target.cpp.orig 2026-06-11 09:58:17 UTC ++++ gen/target.cpp +@@ -317,7 +317,8 @@ + if (triple.getArch() == llvm::Triple::ppc64 || + triple.getArch() == llvm::Triple::ppc64le) { + if (target.RealProperties.mant_dig == 113 && +- triple.getEnvironment() == llvm::Triple::GNU) { ++ (triple.getEnvironment() == llvm::Triple::GNU || ++ triple.isOSFreeBSD())) { + return "u9__ieee128"; + } + if (target.RealProperties.mant_dig == 106) { diff --git a/lang/ldc/files/patch-runtime_druntime_src_core_stdc_config.d b/lang/ldc/files/patch-runtime_druntime_src_core_stdc_config.d new file mode 100644 index 000000000000..43af74303a61 --- /dev/null +++ b/lang/ldc/files/patch-runtime_druntime_src_core_stdc_config.d @@ -0,0 +1,15 @@ +--- runtime/druntime/src/core/stdc/config.d.orig 2026-06-11 09:58:17 UTC ++++ runtime/druntime/src/core/stdc/config.d +@@ -689,6 +689,11 @@ + } + + version (PPC64) +- enum PPCUseIEEE128 = real.mant_dig == 113; ++{ ++ version (CRuntime_Glibc) ++ enum PPCUseIEEE128 = real.mant_dig == 113; ++ else ++ enum PPCUseIEEE128 = false; ++} + else + enum PPCUseIEEE128 = false;home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a72f283.3a137.5ef5d0a5>
