Index | Thread | Search

From:
Pascal Stumpf <pascal@stumpf.co>
Subject:
Re: lang/gcc/15: enable dlang on amd64 and arm64
To:
ports@openbsd.org
Date:
Tue, 02 Dec 2025 19:39:01 +0100

Download raw body.

Thread
On Mon, 01 Dec 2025 03:03:05 +0100, Kirill A. Korinsky wrote:
> ports@,
> 
> I'd like to enable gdc (dlang) on amd64 and arm64 inside lang/gcc/15.
> 
> To do it I need to updaed boostrap to latest version of lang/gcc/11.
> I still called it as adastrap, but maybe we need to rename it.
> 
> Here links to two used bootstraps:
>  - https://kirill.korins.ky/pub/distfiles/adastrap-amd64-11.2.0-6.tar.xz
>  - https://kirill.korins.ky/pub/distfiles/adastrap-aarch64-11.2.0-0.tar.xz

Mirrored.  We'll probably rebuild the gcc15 version from gcc15 soon, but
until then ...

> I've attached two diffs:
>  - gcc-11.diff is small one, just micro tune to build bootstrap
>  - gcc-15.diff is a large one, where I recover gdc for amd64 and arm64
> 
> both bootstrap builds from this week snapshots against libc.so.102.2
> 
> Tested on the same snapshots on amd64 and arm64, compiles and exectued a
> trivial program:
> 
> import std.stdio;
> import std.range;
> import std.algorithm;
> import std.concurrency;
> import core.thread;
> 
> void fiberFunction()
> {
>     10.iota.each!(i => yield(i));
> }
> 
> void threadFunction()
> {
>     auto fiber = cast()receiveOnly!(shared(Generator!int));
>     writefln("worker: %(%s %)", fiber.take(5));
> }
> 
> void main()
> {
>     auto numbers = new Generator!int(&fiberFunction);
>     auto worker = spawn(&threadFunction);
> 
>     writefln("main  : %(%s %)", numbers.take(2));
>     worker.send(cast(shared)numbers);
>     thread_joinAll();
> 
>     writefln("main  : %(%s %)", numbers);
> }
> 
> as
> 
> main  : 0 1
> worker: 2 3 4 5 6
> main  : 7 8 9
> 
> Anyone willing to test it? Or ok it?

OK.

> -- 
> wbr, Kirill
> 
> Index: 11/Makefile
> ===================================================================
> RCS file: /cvs/ports/lang/gcc/11/Makefile,v
> diff -u -p -r1.58 Makefile
> --- 11/Makefile	28 Nov 2025 11:10:07 -0000	1.58
> +++ 11/Makefile	1 Dec 2025 01:56:51 -0000
> @@ -17,7 +17,9 @@ FULL_VERSION = $V
>  FULL_PKGVERSION = $V
>  REVISION = 21
>  
> -ADASTRAP-amd64 = adastrap-amd64-$V-5.tar.xz
> +# aarch64 bootstrap contains only gdc
> +ADASTRAP-aarch64 = adastrap-aarch64-$V-0.tar.xz
> +ADASTRAP-amd64 = adastrap-amd64-$V-6.tar.xz
>  ADASTRAP-i386 = adastrap-i386-$V-4.tar.xz
>  ADASTRAP-mips64 = adastrap-mips64-8.4.0-5.tar.xz
>  ADASTRAP-powerpc = adastrap-powerpc-$V-4.tar.xz
> @@ -272,14 +274,29 @@ post-install:
>  
>  ADA_PACKAGE = ${PACKAGE_REPOSITORY}/${MACHINE_ARCH}/all/${FULLPKGNAME-ada}.tgz
>  GCC_PACKAGE = ${PACKAGE_REPOSITORY}/${MACHINE_ARCH}/all/${FULLPKGNAME-main}.tgz
> +GDC_PACKAGE = ${PACKAGE_REPOSITORY}/${MACHINE_ARCH}/all/${FULLPKGNAME-dlang}.tgz
>  GXX_PACKAGE = ${PACKAGE_REPOSITORY}/${MACHINE_ARCH}/all/${FULLPKGNAME-c++}.tgz
>  
>  .PHONY: bootstrap
>  
> +.if ${BUILD_PACKAGES:M-ada} && ${BUILD_PACKAGES:M-dlang}
> +bootstrap: ${ADA_PACKAGE} ${GCC_PACKAGE} ${GDC_PACKAGE} ${GXX_PACKAGE}
> +.elif ${BUILD_PACKAGES:M-ada}
>  bootstrap: ${ADA_PACKAGE} ${GCC_PACKAGE} ${GXX_PACKAGE}
> +.elif ${BUILD_PACKAGES:M-dlang}
> +bootstrap: ${GCC_PACKAGE} ${GDC_PACKAGE} ${GXX_PACKAGE}
> +.else
> +bootstrap: ${GCC_PACKAGE} ${GXX_PACKAGE}
> +.endif
> +	${_PBUILD} rm -rf ${WRKDIR}/prepare
>  	${_PBUILD} mkdir -p ${WRKDIR}/prepare/bootstrap/system-libs
> +.if ${BUILD_PACKAGES:M-ada}
>  	cd ${WRKDIR}/prepare/bootstrap && ${_PBUILD} tar xzf ${ADA_PACKAGE}
> +.endif
>  	cd ${WRKDIR}/prepare/bootstrap && ${_PBUILD} tar xzf ${GCC_PACKAGE}
> +.if ${BUILD_PACKAGES:M-dlang}
> +	cd ${WRKDIR}/prepare/bootstrap && ${_PBUILD} tar xzf ${GDC_PACKAGE}
> +.endif
>  	cd ${WRKDIR}/prepare/bootstrap && ${_PBUILD} tar xzf ${GXX_PACKAGE}
>  	${_PBUILD} rm -rf ${WRKDIR}/prepare/bootstrap/{+*,info,man,share}
>  	${_PBUILD} rm -rf ${WRKDIR}/prepare/bootstrap/lib/gcc/*-openbsd*/$V/include-fixed
> Index: 11/distinfo
> ===================================================================
> RCS file: /cvs/ports/lang/gcc/11/distinfo,v
> diff -u -p -r1.15 distinfo
> --- 11/distinfo	20 Sep 2025 23:07:25 -0000	1.15
> +++ 11/distinfo	1 Dec 2025 01:56:51 -0000
> @@ -1,9 +1,9 @@
> -SHA256 (gcc/adastrap-amd64-11.2.0-5.tar.xz) = xv2mjPXOBPnrbP98RlbKmbNgE3iP8MHBrShaipe/YNI=
> +SHA256 (gcc/adastrap-amd64-11.2.0-6.tar.xz) = rxI866IO57k5nZGBVbaGynN0XRcA4QJIN1AAW3xNA1w=
>  SHA256 (gcc/adastrap-i386-11.2.0-4.tar.xz) = 1T55LnFIsdo+lb3beM/FW0QR1U9RuHftAytxwRs8W/Y=
>  SHA256 (gcc/adastrap-mips64-8.4.0-5.tar.xz) = Rfwenft0B3hxydQ3mqkkbFN40maQ73Jl4fgTFn1eNKQ=
>  SHA256 (gcc/adastrap-powerpc-11.2.0-4.tar.xz) = 9KgiD7tqhcrCd8oTds/iVrmo9LXBNEAJQ+DdplytMuU=
>  SHA256 (gcc/gcc-11.2.0.tar.xz) = 0I7cU2tUw3KhAQ/2YZ3SdMDxYDqkkhK6IPeqLNo2+os=
> -SIZE (gcc/adastrap-amd64-11.2.0-5.tar.xz) = 78100312
> +SIZE (gcc/adastrap-amd64-11.2.0-6.tar.xz) = 100826604
>  SIZE (gcc/adastrap-i386-11.2.0-4.tar.xz) = 75923604
>  SIZE (gcc/adastrap-mips64-8.4.0-5.tar.xz) = 49877060
>  SIZE (gcc/adastrap-powerpc-11.2.0-4.tar.xz) = 70164724
> 
> Index: 15/Makefile
> ===================================================================
> RCS file: /cvs/ports/lang/gcc/15/Makefile,v
> diff -u -p -r1.13 Makefile
> --- 15/Makefile	13 Nov 2025 23:30:14 -0000	1.13
> +++ 15/Makefile	1 Dec 2025 01:56:58 -0000
> @@ -5,6 +5,7 @@ ONLY_FOR_ARCHS = aarch64 alpha amd64 arm
>  	powerpc powerpc64 riscv64 sparc64
>  
>  ONLY_FOR_ARCHS-ada = amd64 mips64 powerpc # i386
> +ONLY_FOR_ARCHS-dlang = aarch64 amd64 # needs gdc from gcc-9+
>  
>  DPB_PROPERTIES = parallel
>  
> @@ -18,9 +19,11 @@ V = 15.2.0
>  FULL_VERSION = $V
>  FULL_PKGVERSION = $V
>  
> -REVISION = 3
> +REVISION = 4
>  
> -ADASTRAP-amd64 = adastrap-amd64-11.2.0-5.tar.xz
> +# aarch64 bootstrap contains only gdc
> +ADASTRAP-aarch64 = adastrap-aarch64-11.2.0-0.tar.xz
> +ADASTRAP-amd64 = adastrap-amd64-11.2.0-6.tar.xz
>  ADASTRAP-arm = adastrap-arm-4.9.4-0.tar.xz
>  ADASTRAP-hppa = adastrap-hppa-8.3.0-1.tar.xz
>  ADASTRAP-i386 = adastrap-i386-11.2.0-4.tar.xz
> @@ -34,6 +37,7 @@ PKGNAME-c++ =   g++-${FULL_PKGVERSION}
>  PKGNAME-f95 =   g95-${FULL_PKGVERSION}
>  PKGNAME-objc =  gobjc-${FULL_PKGVERSION}
>  PKGNAME-ada =   gnat-${FULL_PKGVERSION}
> +PKGNAME-dlang = gdc-${FULL_PKGVERSION}
>  PKGSPEC-main = gcc->=15,<16
>  
>  SHARED_LIBS =	estdc++		21.0 \
> @@ -45,12 +49,14 @@ SHARED_LIBS =	estdc++		21.0 \
>  		quadmath	5.0 \
>  		cc1		3.0 \
>  		cc1plugin	3.0 \
> -		cp1plugin	2.0
> +		cp1plugin	2.0 \
> +		gphobos		1.0 \
> +		gdruntime	1.0
>  
>  PSEUDO_FLAVORS = no_ada full
>  FLAVOR ?=
>  
> -MULTI_PACKAGES = -main -libs -f95 -objc -c++ -ada
> +MULTI_PACKAGES = -main -libs -f95 -objc -c++ -ada -dlang
>  
>  .include <bsd.port.arch.mk>
>  
> @@ -83,11 +89,12 @@ TEST_DEPENDS += devel/dejagnu \
>  		${BUILD_PKGPATH},-libs>=15,<16
>  
>  LANGS = c,c++,fortran,objc
> -.if ${BUILD_PACKAGES:M-ada}
> +.if ${BUILD_PACKAGES:M-ada} || ${BUILD_PACKAGES:M-dlang}
>  DISTFILES.strap += ${ADASTRAP-${MACHINE_ARCH}}
>  EXTRACT_ONLY += ${ADASTRAP-${MACHINE_ARCH}}
>  CC = ${WRKDIR}/bin/egcc
>  CXX = ${WRKDIR}/bin/eg++
> +GDC = ${WRKDIR}/bin/egdc
>  # make sure we link the right libestdc++.a in stage1 when using a bootstrap
>  CONFIGURE_ARGS += --with-stage1-ldflags="-L${WRKDIR}/bootstrap/lib"
>  .elif ${PROPERTIES:Mgcc4}
> @@ -102,6 +109,10 @@ LANGS := ${LANGS},ada
>  TEST_DEPENDS += ${BUILD_PKGPATH},-ada
>  .endif
>  
> +.if ${BUILD_PACKAGES:M-dlang}
> +LANGS := ${LANGS},d
> +.endif
> +
>  CONFIGURE_STYLE =		gnu
>  MODGNU_CONFIG_GUESS_DIRS =	${WRKSRC} ${WRKSRC}/gcc
>  
> @@ -110,6 +121,7 @@ EXTRA_ENV += ac_cv_prog_M4=/usr/bin/m4
>  EXTRA_ENV += ac_cv_header_magic_h=no
>  EXTRA_ENV += lt_cv_path_SED=/usr/bin/sed
>  EXTRA_ENV += STRIP=/usr/bin/strip
> +EXTRA_ENV += GDC=${GDC}
>  MAKE_FLAGS +=	 ac_cv_path_mkdir=/bin/mkdir
>  
>  CONFIGURE_ENV += ${EXTRA_ENV}
> @@ -236,7 +248,7 @@ LIB_DEPENDS +=		devel/gmp,no_cxx,bootstr
>  LIB_DEPENDS-libs =
>  
>  post-extract:
> -.for f in egcc eg++
> +.for f in egcc eg++ egdc
>  	echo "#! /bin/sh" >${WRKDIR}/bin/$f
>  	echo 'GNAT_ROOT=${WRKDIR}/bootstrap GCC_ROOT=${WRKDIR}/bootstrap LD_LIBRARY_PATH=${WRKDIR}/bootstrap/system-libs exec ${WRKDIR}/bootstrap/bin/$f "$$@"' >>${WRKDIR}/bin/$f
>  	chmod a+x ${WRKDIR}/bin/$f
> @@ -277,6 +289,7 @@ post-install:
>  
>  ADA_PACKAGE = ${PACKAGE_REPOSITORY}/${MACHINE_ARCH}/all/${FULLPKGNAME-ada}.tgz
>  GCC_PACKAGE = ${PACKAGE_REPOSITORY}/${MACHINE_ARCH}/all/${FULLPKGNAME-main}.tgz
> +GDC_PACKAGE = ${PACKAGE_REPOSITORY}/${MACHINE_ARCH}/all/${FULLPKGNAME-dlang}.tgz
>  GXX_PACKAGE = ${PACKAGE_REPOSITORY}/${MACHINE_ARCH}/all/${FULLPKGNAME-c++}.tgz
>  
>  .PHONY: bootstrap
> @@ -284,8 +297,13 @@ GXX_PACKAGE = ${PACKAGE_REPOSITORY}/${MA
>  bootstrap: ${ADA_PACKAGE} ${GCC_PACKAGE} ${GXX_PACKAGE}
>  	${_PBUILD} rm -rf ${WRKDIR}/prepare
>  	${_PBUILD} mkdir -p ${WRKDIR}/prepare/bootstrap/system-libs
> +.if ${BUILD_PACKAGES:M-ada}
>  	cd ${WRKDIR}/prepare/bootstrap && ${_PBUILD} tar xzf ${ADA_PACKAGE}
> +.endif
>  	cd ${WRKDIR}/prepare/bootstrap && ${_PBUILD} tar xzf ${GCC_PACKAGE}
> +.if ${BUILD_PACKAGES:M-dlang}
> +	cd ${WRKDIR}/prepare/bootstrap && ${_PBUILD} tar xzf ${GDC_PACKAGE}
> +.endif
>  	cd ${WRKDIR}/prepare/bootstrap && ${_PBUILD} tar xzf ${GXX_PACKAGE}
>  	${_PBUILD} rm -rf ${WRKDIR}/prepare/bootstrap/{+*,info,man,share}
>  	${_PBUILD} rm -rf ${WRKDIR}/prepare/bootstrap/lib/gcc/*-openbsd*/$V/include-fixed
> Index: 15/distinfo
> ===================================================================
> RCS file: /cvs/ports/lang/gcc/15/distinfo,v
> diff -u -p -r1.5 distinfo
> --- 15/distinfo	2 Nov 2025 18:48:50 -0000	1.5
> +++ 15/distinfo	1 Dec 2025 01:56:58 -0000
> @@ -1,8 +1,10 @@
> -SHA256 (gcc/adastrap-amd64-11.2.0-5.tar.xz) = xv2mjPXOBPnrbP98RlbKmbNgE3iP8MHBrShaipe/YNI=
> +SHA256 (gcc/adastrap-aarch64-11.2.0-0.tar.xz) = rVm75YiR/GJ6lsS9PbTaCmE5G4Q7CpXo5924ag3lqro=
> +SHA256 (gcc/adastrap-amd64-11.2.0-6.tar.xz) = rxI866IO57k5nZGBVbaGynN0XRcA4QJIN1AAW3xNA1w=
>  SHA256 (gcc/adastrap-mips64-8.4.0-5.tar.xz) = Rfwenft0B3hxydQ3mqkkbFN40maQ73Jl4fgTFn1eNKQ=
>  SHA256 (gcc/adastrap-powerpc-11.2.0-3.tar.xz) = acJtrhP/QyqtfDHrcXZjwI1LIBBN8C+SrTokVunndSQ=
>  SHA256 (gcc/gcc-15.2.0.tar.xz) = Q4/ZloJrDIJIWinaA6ctcdbjVBqD7HAt9Ccfb+Al0k4=
> -SIZE (gcc/adastrap-amd64-11.2.0-5.tar.xz) = 78100312
> +SIZE (gcc/adastrap-aarch64-11.2.0-0.tar.xz) = 67081156
> +SIZE (gcc/adastrap-amd64-11.2.0-6.tar.xz) = 100826604
>  SIZE (gcc/adastrap-mips64-8.4.0-5.tar.xz) = 49877060
>  SIZE (gcc/adastrap-powerpc-11.2.0-3.tar.xz) = 70134604
>  SIZE (gcc/gcc-15.2.0.tar.xz) = 101056276
> Index: 15/patches/patch-Makefile_in
> ===================================================================
> RCS file: /cvs/ports/lang/gcc/15/patches/patch-Makefile_in,v
> diff -u -p -r1.1.1.1 patch-Makefile_in
> --- 15/patches/patch-Makefile_in	18 Aug 2025 19:49:19 -0000	1.1.1.1
> +++ 15/patches/patch-Makefile_in	1 Dec 2025 01:56:58 -0000
> @@ -1,7 +1,15 @@
>  Index: Makefile.in
>  --- Makefile.in.orig
>  +++ Makefile.in
> -@@ -2898,7 +2898,7 @@ install:
> +@@ -621,7 +621,6 @@ STAGE1_CONFIGURE_FLAGS = $(STAGE1_CHECKING) \
> + 
> + @if target-libphobos-bootstrap
> + STAGE1_CONFIGURE_FLAGS += --with-libphobos-druntime-only
> +-STAGE2_CONFIGURE_FLAGS += --with-libphobos-druntime-only
> + @endif target-libphobos-bootstrap
> + 
> + # When using the slow stage1 compiler disable IL verification and forcefully
> +@@ -2898,7 +2897,7 @@ install:
>   	@: $(MAKE); $(unstage)
>   	@r=`${PWD_COMMAND}`; export r; \
>   	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
> @@ -10,7 +18,7 @@ Index: Makefile.in
>   
>   .PHONY: install-host-nogcc
>   install-host-nogcc:  \
> -@@ -3222,7 +3222,7 @@ configure-build-libiberty: 
> +@@ -3222,7 +3221,7 @@ configure-build-libiberty: 
>   	esac; \
>   	module_srcdir=libiberty; \
>   	rm -f no-such-file || : ; \
> @@ -19,7 +27,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(BUILD_CONFIGARGS) --build=${build_alias} --host=${build_alias} \
> -@@ -3279,7 +3279,7 @@ configure-build-bison: 
> +@@ -3279,7 +3278,7 @@ configure-build-bison: 
>   	esac; \
>   	module_srcdir=bison; \
>   	rm -f no-such-file || : ; \
> @@ -28,7 +36,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(BUILD_CONFIGARGS) --build=${build_alias} --host=${build_alias} \
> -@@ -3336,7 +3336,7 @@ configure-build-flex: 
> +@@ -3336,7 +3335,7 @@ configure-build-flex: 
>   	esac; \
>   	module_srcdir=flex; \
>   	rm -f no-such-file || : ; \
> @@ -37,7 +45,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(BUILD_CONFIGARGS) --build=${build_alias} --host=${build_alias} \
> -@@ -3393,7 +3393,7 @@ configure-build-m4: 
> +@@ -3393,7 +3392,7 @@ configure-build-m4: 
>   	esac; \
>   	module_srcdir=m4; \
>   	rm -f no-such-file || : ; \
> @@ -46,7 +54,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(BUILD_CONFIGARGS) --build=${build_alias} --host=${build_alias} \
> -@@ -3450,7 +3450,7 @@ configure-build-texinfo: 
> +@@ -3450,7 +3449,7 @@ configure-build-texinfo: 
>   	esac; \
>   	module_srcdir=texinfo; \
>   	rm -f no-such-file || : ; \
> @@ -55,7 +63,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(BUILD_CONFIGARGS) --build=${build_alias} --host=${build_alias} \
> -@@ -3507,7 +3507,7 @@ configure-build-fixincludes: 
> +@@ -3507,7 +3506,7 @@ configure-build-fixincludes: 
>   	esac; \
>   	module_srcdir=fixincludes; \
>   	rm -f no-such-file || : ; \
> @@ -64,7 +72,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(BUILD_CONFIGARGS) --build=${build_alias} --host=${build_alias} \
> -@@ -3564,7 +3564,7 @@ configure-build-libcpp: 
> +@@ -3564,7 +3563,7 @@ configure-build-libcpp: 
>   	esac; \
>   	module_srcdir=libcpp; \
>   	rm -f no-such-file || : ; \
> @@ -73,7 +81,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(BUILD_CONFIGARGS) --build=${build_alias} --host=${build_alias} \
> -@@ -45191,7 +45191,7 @@ configure-target-libstdc++-v3: 
> +@@ -45191,7 +45190,7 @@ configure-target-libstdc++-v3: 
>   	esac; \
>   	module_srcdir=libstdc++-v3; \
>   	rm -f no-such-file || : ; \
> @@ -82,7 +90,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -46461,7 +46461,7 @@ configure-target-libsanitizer: 
> +@@ -46461,7 +46460,7 @@ configure-target-libsanitizer: 
>   	esac; \
>   	module_srcdir=libsanitizer; \
>   	rm -f no-such-file || : ; \
> @@ -91,7 +99,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -47731,7 +47731,7 @@ configure-target-libvtv: 
> +@@ -47731,7 +47730,7 @@ configure-target-libvtv: 
>   	esac; \
>   	module_srcdir=libvtv; \
>   	rm -f no-such-file || : ; \
> @@ -100,7 +108,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -49002,7 +49002,7 @@ configure-target-libssp: 
> +@@ -49002,7 +49001,7 @@ configure-target-libssp: 
>   	esac; \
>   	module_srcdir=libssp; \
>   	rm -f no-such-file || : ; \
> @@ -109,7 +117,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -49487,7 +49487,7 @@ configure-target-newlib: 
> +@@ -49487,7 +49486,7 @@ configure-target-newlib: 
>   	esac; \
>   	module_srcdir=newlib; \
>   	rm -f no-such-file || : ; \
> @@ -118,7 +126,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -49971,7 +49971,7 @@ configure-target-libgcc: 
> +@@ -49971,7 +49970,7 @@ configure-target-libgcc: 
>   	esac; \
>   	module_srcdir=libgcc; \
>   	rm -f no-such-file || : ; \
> @@ -127,7 +135,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -51203,7 +51203,7 @@ configure-target-libbacktrace: 
> +@@ -51203,7 +51202,7 @@ configure-target-libbacktrace: 
>   	esac; \
>   	module_srcdir=libbacktrace; \
>   	rm -f no-such-file || : ; \
> @@ -136,7 +144,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -52474,7 +52474,7 @@ configure-target-libquadmath: 
> +@@ -52474,7 +52473,7 @@ configure-target-libquadmath: 
>   	esac; \
>   	module_srcdir=libquadmath; \
>   	rm -f no-such-file || : ; \
> @@ -145,7 +153,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -52959,7 +52959,7 @@ configure-target-libgfortran: 
> +@@ -52959,7 +52958,7 @@ configure-target-libgfortran: 
>   	esac; \
>   	module_srcdir=libgfortran; \
>   	rm -f no-such-file || : ; \
> @@ -154,7 +162,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -53444,7 +53444,7 @@ configure-target-libobjc: 
> +@@ -53444,7 +53443,7 @@ configure-target-libobjc: 
>   	esac; \
>   	module_srcdir=libobjc; \
>   	rm -f no-such-file || : ; \
> @@ -163,7 +171,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -53896,7 +53896,7 @@ configure-target-libgo: 
> +@@ -53896,7 +53895,7 @@ configure-target-libgo: 
>   	esac; \
>   	module_srcdir=libgo; \
>   	rm -f no-such-file || : ; \
> @@ -172,7 +180,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -54380,7 +54380,7 @@ configure-target-libphobos: 
> +@@ -54380,7 +54379,7 @@ configure-target-libphobos: 
>   	esac; \
>   	module_srcdir=libphobos; \
>   	rm -f no-such-file || : ; \
> @@ -181,7 +189,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -55651,7 +55651,7 @@ configure-target-libtermcap: 
> +@@ -55651,7 +55650,7 @@ configure-target-libtermcap: 
>   	esac; \
>   	module_srcdir=libtermcap; \
>   	rm -f no-such-file || : ; \
> @@ -190,7 +198,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -56071,7 +56071,7 @@ configure-target-winsup: 
> +@@ -56071,7 +56070,7 @@ configure-target-winsup: 
>   	esac; \
>   	module_srcdir=winsup; \
>   	rm -f no-such-file || : ; \
> @@ -199,7 +207,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -56556,7 +56556,7 @@ configure-target-libgloss: 
> +@@ -56556,7 +56555,7 @@ configure-target-libgloss: 
>   	esac; \
>   	module_srcdir=libgloss; \
>   	rm -f no-such-file || : ; \
> @@ -208,7 +216,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -57036,7 +57036,7 @@ configure-target-libffi: 
> +@@ -57036,7 +57035,7 @@ configure-target-libffi: 
>   	esac; \
>   	module_srcdir=libffi; \
>   	rm -f no-such-file || : ; \
> @@ -217,7 +225,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -57510,7 +57510,7 @@ configure-target-zlib: 
> +@@ -57510,7 +57509,7 @@ configure-target-zlib: 
>   	esac; \
>   	module_srcdir=zlib; \
>   	rm -f no-such-file || : ; \
> @@ -226,7 +234,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -58781,7 +58781,7 @@ configure-target-rda: 
> +@@ -58781,7 +58780,7 @@ configure-target-rda: 
>   	esac; \
>   	module_srcdir=rda; \
>   	rm -f no-such-file || : ; \
> @@ -235,7 +243,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -59266,7 +59266,7 @@ configure-target-libada: 
> +@@ -59266,7 +59265,7 @@ configure-target-libada: 
>   	esac; \
>   	module_srcdir=libada; \
>   	rm -f no-such-file || : ; \
> @@ -244,7 +252,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -59751,7 +59751,7 @@ configure-target-libgm2: 
> +@@ -59751,7 +59750,7 @@ configure-target-libgm2: 
>   	esac; \
>   	module_srcdir=libgm2; \
>   	rm -f no-such-file || : ; \
> @@ -253,7 +261,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -60235,7 +60235,7 @@ configure-target-libgomp: 
> +@@ -60235,7 +60234,7 @@ configure-target-libgomp: 
>   	esac; \
>   	module_srcdir=libgomp; \
>   	rm -f no-such-file || : ; \
> @@ -262,7 +270,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -61506,7 +61506,7 @@ configure-target-libitm: 
> +@@ -61506,7 +61505,7 @@ configure-target-libitm: 
>   	esac; \
>   	module_srcdir=libitm; \
>   	rm -f no-such-file || : ; \
> @@ -271,7 +279,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -61990,7 +61990,7 @@ configure-target-libatomic: 
> +@@ -61990,7 +61989,7 @@ configure-target-libatomic: 
>   	esac; \
>   	module_srcdir=libatomic; \
>   	rm -f no-such-file || : ; \
> @@ -280,7 +288,7 @@ Index: Makefile.in
>   	  $$s/$$module_srcdir/configure \
>   	  --srcdir=$${topdir}/$$module_srcdir \
>   	  $(TARGET_CONFIGARGS) --build=${build_alias} --host=${target_alias} \
> -@@ -63261,7 +63261,7 @@ configure-target-libgrust: 
> +@@ -63261,7 +63260,7 @@ configure-target-libgrust: 
>   	esac; \
>   	module_srcdir=libgrust; \
>   	rm -f no-such-file || : ; \
> Index: 15/patches/patch-gcc_d_Make-lang_in
> ===================================================================
> RCS file: 15/patches/patch-gcc_d_Make-lang_in
> diff -N 15/patches/patch-gcc_d_Make-lang_in
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-gcc_d_Make-lang_in	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,12 @@
> +Index: gcc/d/Make-lang.in
> +--- gcc/d/Make-lang.in.orig
> ++++ gcc/d/Make-lang.in
> +@@ -67,7 +67,7 @@ ALL_DFLAGS = $(DFLAGS-$@) $(GDCFLAGS) -fversion=IN_GCC
> + DCOMPILE.base = $(GDC) -c $(ALL_DFLAGS) -o $@
> + DCOMPILE = $(DCOMPILE.base) -MT $@ -MMD -MP -MF $(@D)/$(DEPDIR)/$(basename $(@F)).TPo
> + DPOSTCOMPILE = @mv $(@D)/$(DEPDIR)/$(basename $(@F)).TPo $(@D)/$(DEPDIR)/$(basename $(@F)).Po
> +-DLINKER = $(GDC) $(NO_PIE_FLAG) -lstdc++
> ++DLINKER = $(GDC) $(NO_PIE_FLAG) -lestdc++
> + 
> + # Like LINKER, but use a mutex for serializing front end links.
> + ifeq ($(DO_LINK_MUTEX),true)
> Index: 15/patches/patch-gcc_d_d-lang_cc
> ===================================================================
> RCS file: 15/patches/patch-gcc_d_d-lang_cc
> diff -N 15/patches/patch-gcc_d_d-lang_cc
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-gcc_d_d-lang_cc	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,16 @@
> +Index: gcc/d/d-lang.cc
> +--- gcc/d/d-lang.cc.orig
> ++++ gcc/d/d-lang.cc
> +@@ -1964,6 +1964,12 @@ const scoped_attribute_specs *const d_langhook_attribu
> +   &d_langhook_common_attribute_table,
> + };
> + 
> ++extern "C" const char *
> ++fname_as_string(int pretty_p __attribute__((__unused__)))
> ++{
> ++	return NULL;
> ++}
> ++
> + /* Definitions for our language-specific hooks.  */
> + 
> + #undef LANG_HOOKS_NAME
> Index: 15/patches/patch-gcc_d_d-longdouble_cc
> ===================================================================
> RCS file: 15/patches/patch-gcc_d_d-longdouble_cc
> diff -N 15/patches/patch-gcc_d_d-longdouble_cc
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-gcc_d_d-longdouble_cc	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,22 @@
> +Index: gcc/d/d-longdouble.cc
> +--- gcc/d/d-longdouble.cc.orig
> ++++ gcc/d/d-longdouble.cc
> +@@ -86,6 +86,18 @@ longdouble::set (uint64_t d)
> + 		     UNSIGNED);
> + }
> + 
> ++#if defined(__OpenBSD__) && defined(__LP64__)
> ++void longdouble::set(long d)
> ++{
> ++    set((int64_t)d);
> ++}
> ++
> ++void longdouble::set(unsigned long d)
> ++{
> ++    set((uint64_t)d);
> ++}
> ++#endif
> ++
> + uint64_t
> + longdouble::to_uint (void) const
> + {
> Index: 15/patches/patch-gcc_d_d-port_cc
> ===================================================================
> RCS file: 15/patches/patch-gcc_d_d-port_cc
> diff -N 15/patches/patch-gcc_d_d-port_cc
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-gcc_d_d-port_cc	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,14 @@
> +Index: gcc/d/d-port.cc
> +--- gcc/d/d-port.cc.orig
> ++++ gcc/d/d-port.cc
> +@@ -169,3 +169,10 @@ Port::valcpy (void *buffer, uint64_t value, d_size_t s
> +       gcc_unreachable ();
> +     }
> + }
> ++
> ++#if defined(__OpenBSD__) && defined(__LP64__)
> ++void Port::valcpy(void *dst, unsigned long val, size_t size)
> ++{
> ++    valcpy(dst, (uint64_t)val, size);
> ++}
> ++#endif
> Index: 15/patches/patch-gcc_d_dmd_root_port_h
> ===================================================================
> RCS file: 15/patches/patch-gcc_d_dmd_root_port_h
> diff -N 15/patches/patch-gcc_d_dmd_root_port_h
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-gcc_d_dmd_root_port_h	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,11 @@
> +Index: gcc/d/dmd/root/port.h
> +--- gcc/d/dmd/root/port.h.orig
> ++++ gcc/d/dmd/root/port.h
> +@@ -32,4 +32,7 @@ struct Port
> +     static unsigned readwordLE(const void *buffer);
> +     static unsigned readwordBE(const void *buffer);
> +     static void valcpy(void *dst, uint64_t val, d_size_t size);
> ++#if defined(__OpenBSD__) && defined(__LP64__)
> ++    static void valcpy(void *dst, unsigned long val, size_t size);
> ++#endif
> + };
> Index: 15/patches/patch-gcc_d_longdouble_h
> ===================================================================
> RCS file: 15/patches/patch-gcc_d_longdouble_h
> diff -N 15/patches/patch-gcc_d_longdouble_h
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-gcc_d_longdouble_h	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,14 @@
> +Index: gcc/d/longdouble.h
> +--- gcc/d/longdouble.h.orig
> ++++ gcc/d/longdouble.h
> +@@ -45,6 +45,10 @@ struct longdouble (public)
> +   void set (uint32_t d);
> +   void set (uint64_t d);
> +   void set (bool d);
> ++#if defined(__OpenBSD__) && defined(__LP64__)
> ++  void set (long d);
> ++  void set (unsigned long d);
> ++#endif
> + 
> +   /* Rvalue operators.  */
> +   bool to_bool () const;
> Index: 15/patches/patch-libphobos_configure
> ===================================================================
> RCS file: 15/patches/patch-libphobos_configure
> diff -N 15/patches/patch-libphobos_configure
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_configure	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,15 @@
> +Add fiber asm for powerpc64, to avoid
> +"configure: error: setcontext required but not found"
> +
> +Index: libphobos/configure
> +--- libphobos/configure.orig
> ++++ libphobos/configure
> +@@ -15424,7 +15424,7 @@ fi
> +     aarch64* | \
> +     arm* | \
> +     i[34567]86|x86_64 | \
> +-    powerpc)
> ++    powerpc*)
> +       druntime_fiber_asm_external=yes
> +       ;;
> +   esac
> Index: 15/patches/patch-libphobos_configure_tgt
> ===================================================================
> RCS file: 15/patches/patch-libphobos_configure_tgt
> diff -N 15/patches/patch-libphobos_configure_tgt
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_configure_tgt	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,13 @@
> +Index: libphobos/configure.tgt
> +--- libphobos/configure.tgt.orig
> ++++ libphobos/configure.tgt
> +@@ -30,6 +30,9 @@ case "${target}" in
> +   aarch64-*-darwin2*)
> + 	LIBPHOBOS_SUPPORTED=yes
> + 	;;
> ++  *-*-openbsd*)
> ++	LIBPHOBOS_SUPPORTED=yes
> ++	;;
> +   aarch64*-*-linux*)
> + 	LIBPHOBOS_SUPPORTED=yes
> + 	;;
> Index: 15/patches/patch-libphobos_libdruntime_Makefile_in
> ===================================================================
> RCS file: 15/patches/patch-libphobos_libdruntime_Makefile_in
> diff -N 15/patches/patch-libphobos_libdruntime_Makefile_in
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_libdruntime_Makefile_in	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,14 @@
> +Index: libphobos/libdruntime/Makefile.in
> +--- libphobos/libdruntime/Makefile.in.orig
> ++++ libphobos/libdruntime/Makefile.in
> +@@ -829,8 +829,9 @@ toolexeclib_LTLIBRARIES = libgdruntime.la
> + libgdruntime_la_SOURCES = $(ALL_DRUNTIME_SOURCES)
> + libgdruntime_la_LIBTOOLFLAGS = 
> + @ENABLE_DARWIN_AT_RPATH_TRUE@libgdruntime_darwin_rpath = -Wl,-rpath,@loader_path
> ++include $(top_srcdir)/../libversions
> + libgdruntime_la_LDFLAGS = -Wc,-nophoboslib,-dstartfiles,-B../src,-Bgcc \
> +-    -version-info $(libtool_VERSION) $(libgdruntime_darwin_rpath)
> ++    $(LIBgdruntime_LTVERSION) $(libgdruntime_darwin_rpath)
> + 
> + libgdruntime_la_LIBADD = $(LIBATOMIC) $(LIBBACKTRACE)
> + libgdruntime_la_DEPENDENCIES = $(DRTSTUFF)
> Index: 15/patches/patch-libphobos_libdruntime_config_powerpc_switchcontext_S
> ===================================================================
> RCS file: 15/patches/patch-libphobos_libdruntime_config_powerpc_switchcontext_S
> diff -N 15/patches/patch-libphobos_libdruntime_config_powerpc_switchcontext_S
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_libdruntime_config_powerpc_switchcontext_S	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,222 @@
> +Add fibers for powerpc64 ELFv2, and fix fibers for 32-bit powerpc ELF.
> +The old code was for some other platform (AIX?), not BSD nor Linux.
> +This patch fixes OpenBSD but might break the other platform.
> +
> +This patch doesn't save altivec registers v20..v31, because gcc
> +disables altivec by default.
> +
> +Index: libphobos/libdruntime/config/powerpc/switchcontext.S
> +--- libphobos/libdruntime/config/powerpc/switchcontext.S.orig
> ++++ libphobos/libdruntime/config/powerpc/switchcontext.S
> +@@ -24,7 +24,210 @@ see the files COPYING3 and COPYING.RUNTIME respectivel
> + 
> + #include "../common/threadasm.S"
> + 
> +-#if !defined(__PPC64__) && !defined(__MACH__)
> ++#if defined(__ELF__)
> ++
> ++/**
> ++ * Performs a context switch.
> ++ *
> ++ * r3 - old context pointer
> ++ * r4 - new context pointer
> ++ *
> ++ */
> ++    .text
> ++    .globl CSYM(fiber_switchContext)
> ++    .type CSYM(fiber_switchContext), @function
> ++    .align 2
> ++CSYM(fiber_switchContext):
> ++    .cfi_startproc
> ++#ifdef __PPC64__
> ++    /* ELF64 - Save linkage area */
> ++    mflr        0
> ++    mfcr        5
> ++    std     0, 16(1)
> ++    stw     5, 8(1)
> ++
> ++    /* Make room for 18 GPRs, 18 FPRs */
> ++    addi    6, 1, -18 * 8
> ++    addi    1, 6, -18 * 8
> ++
> ++    /* Save GPRs */
> ++    std     31, (17 * 8)(6)
> ++    std     30, (16 * 8)(6)
> ++    std     29, (15 * 8)(6)
> ++    std     28, (14 * 8)(6)
> ++    std     27, (13 * 8)(6)
> ++    std     26, (12 * 8)(6)
> ++    std     25, (11 * 8)(6)
> ++    std     24, (10 * 8)(6)
> ++    std     23, (9 * 8)(6)
> ++    std     22, (8 * 8)(6)
> ++    std     21, (7 * 8)(6)
> ++    std     20, (6 * 8)(6)
> ++    std     19, (5 * 8)(6)
> ++    std     18, (4 * 8)(6)
> ++    std     17, (3 * 8)(6)
> ++    std     16, (2 * 8)(6)
> ++    std     15, (1 * 8)(6)
> ++    std     14, (0 * 8)(6)
> ++#else
> ++    /* ELF32 - Save linkage area */
> ++    mflr        0
> ++    mfcr        5
> ++    stw     0, 4(1)
> ++
> ++    /* Make room for 18 GPRs, CR, 18 FPRs; rounding up so r1 stays
> ++       16-byte aligned.  We must move r1, because ELF32 allows
> ++       signals to clobber below r1 (no red zone). */
> ++    addi    6, 1, -20 * 4
> ++    addi    1, 6, -18 * 8
> ++
> ++    /* Save GPRs */
> ++    stw     31, (19 * 4)(6)
> ++    stw     30, (18 * 4)(6)
> ++    stw     29, (17 * 4)(6)
> ++    stw     28, (16 * 4)(6)
> ++    stw     27, (15 * 4)(6)
> ++    stw     26, (14 * 4)(6)
> ++    stw     25, (13 * 4)(6)
> ++    stw     24, (12 * 4)(6)
> ++    stw     23, (11 * 4)(6)
> ++    stw     22, (10 * 4)(6)
> ++    stw     21, (9 * 4)(6)
> ++    stw     20, (8 * 4)(6)
> ++    stw     19, (7 * 4)(6)
> ++    stw     18, (6 * 4)(6)
> ++    stw     17, (5 * 4)(6)
> ++    stw     16, (4 * 4)(6)
> ++    stw     15, (3 * 4)(6)
> ++    stw     14, (2 * 4)(6)
> ++
> ++    /* Save condition register */
> ++    stw     5, 0(6)
> ++#endif
> ++
> ++    /* ELF32 and ELF64 - Save FPRs */
> ++    stfd    31, (-1 * 8)(6)
> ++    stfd    30, (-2 * 8)(6)
> ++    stfd    29, (-3 * 8)(6)
> ++    stfd    28, (-4 * 8)(6)
> ++    stfd    27, (-5 * 8)(6)
> ++    stfd    26, (-6 * 8)(6)
> ++    stfd    25, (-7 * 8)(6)
> ++    stfd    24, (-8 * 8)(6)
> ++    stfd    23, (-9 * 8)(6)
> ++    stfd    22, (-10 * 8)(6)
> ++    stfd    21, (-11 * 8)(6)
> ++    stfd    20, (-12 * 8)(6)
> ++    stfd    19, (-13 * 8)(6)
> ++    stfd    18, (-14 * 8)(6)
> ++    stfd    17, (-15 * 8)(6)
> ++    stfd    16, (-16 * 8)(6)
> ++    stfd    15, (-17 * 8)(6)
> ++    stfd    14, (-18 * 8)(6)
> ++
> ++    /* Save r6 in the old context, since we do not want the GC to
> ++       scan the floating point registers. */
> ++
> ++#ifdef __PPC64__
> ++    /* ELF64 - Update the old stack pointer */
> ++    std     6, 0(3)
> ++
> ++    /* Set new stack pointer */
> ++    addi    1, 4, -18 * 8
> ++
> ++    /* Set condition and link register.  If lr is &fiber_entryPoint,
> ++       then ELFv2 ABI needs the same address in r12. */
> ++    lwz     5, (18 * 8 + 8)(4)
> ++    ld      12, (18 * 8 + 16)(4)
> ++    mtcr        5
> ++    mtlr        12
> ++#else
> ++    /* ELF32 - Update the old stack pointer */
> ++    stw     6, 0(3)
> ++
> ++    /* Set new stack pointer */
> ++    addi    1, 4, -18 * 8
> ++
> ++    /* Set condition and link register */
> ++    lwz     5, 0(4)
> ++    lwz     12, (20 * 4 + 4)(4)
> ++    mtcr        5
> ++    mtlr        12
> ++#endif
> ++
> ++    /* PPC32 and PPC64 - Restore FPRs */
> ++    lfd     14, (-18 * 8)(4)
> ++    lfd     15, (-17 * 8)(4)
> ++    lfd     16, (-16 * 8)(4)
> ++    lfd     17, (-15 * 8)(4)
> ++    lfd     18, (-14 * 8)(4)
> ++    lfd     19, (-13 * 8)(4)
> ++    lfd     20, (-12 * 8)(4)
> ++    lfd     21, (-11 * 8)(4)
> ++    lfd     22, (-10 * 8)(4)
> ++    lfd     23, (-9 * 8)(4)
> ++    lfd     24, (-8 * 8)(4)
> ++    lfd     25, (-7 * 8)(4)
> ++    lfd     26, (-6 * 8)(4)
> ++    lfd     27, (-5 * 8)(4)
> ++    lfd     28, (-4 * 8)(4)
> ++    lfd     29, (-3 * 8)(4)
> ++    lfd     30, (-2 * 8)(4)
> ++    lfd     31, (-1 * 8)(4)
> ++
> ++#ifdef __PPC64__
> ++    /* PPC64 - Restore GPRs */
> ++    ld      14, (0 * 8)(4)
> ++    ld      15, (1 * 8)(4)
> ++    ld      16, (2 * 8)(4)
> ++    ld      17, (3 * 8)(4)
> ++    ld      18, (4 * 8)(4)
> ++    ld      19, (5 * 8)(4)
> ++    ld      20, (6 * 8)(4)
> ++    ld      21, (7 * 8)(4)
> ++    ld      22, (8 * 8)(4)
> ++    ld      23, (9 * 8)(4)
> ++    ld      24, (10 * 8)(4)
> ++    ld      25, (11 * 8)(4)
> ++    ld      26, (12 * 8)(4)
> ++    ld      27, (13 * 8)(4)
> ++    ld      28, (14 * 8)(4)
> ++    ld      29, (15 * 8)(4)
> ++    ld      30, (16 * 8)(4)
> ++    ld      31, (17 * 8)(4)
> ++
> ++    /* Return and switch context */
> ++    addi    1, 4, 18 * 8
> ++    blr
> ++#else
> ++    /* PPC32 - Restore GPRs */
> ++    lwz     14, (2 * 4)(4)
> ++    lwz     15, (3 * 4)(4)
> ++    lwz     16, (4 * 4)(4)
> ++    lwz     17, (5 * 4)(4)
> ++    lwz     18, (6 * 4)(4)
> ++    lwz     19, (7 * 4)(4)
> ++    lwz     20, (8 * 4)(4)
> ++    lwz     21, (9 * 4)(4)
> ++    lwz     22, (10 * 4)(4)
> ++    lwz     23, (11 * 4)(4)
> ++    lwz     24, (12 * 4)(4)
> ++    lwz     25, (13 * 4)(4)
> ++    lwz     26, (14 * 4)(4)
> ++    lwz     27, (15 * 4)(4)
> ++    lwz     28, (16 * 4)(4)
> ++    lwz     29, (17 * 4)(4)
> ++    lwz     30, (18 * 4)(4)
> ++    lwz     31, (19 * 4)(4)
> ++
> ++    /* Return and switch context */
> ++    addi    1, 4, 20 * 4
> ++    blr
> ++#endif
> ++    .cfi_endproc
> ++    .size CSYM(fiber_switchContext),.-CSYM(fiber_switchContext)
> ++
> ++#elif !defined(__PPC64__) && !defined(__MACH__)
> + 
> + /**
> +  * Performs a context switch.
> Index: 15/patches/patch-libphobos_libdruntime_config_x86_switchcontext_S
> ===================================================================
> RCS file: 15/patches/patch-libphobos_libdruntime_config_x86_switchcontext_S
> diff -N 15/patches/patch-libphobos_libdruntime_config_x86_switchcontext_S
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_libdruntime_config_x86_switchcontext_S	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,46 @@
> +Original approach build on assumption that ucontext is available and CET
> +always means Shadow Stack. Both aren't true for OpenBSD.
> +
> +This patch fixes OpenBSD but might break the other platform.
> +
> +Index: libphobos/libdruntime/config/x86/switchcontext.S
> +--- libphobos/libdruntime/config/x86/switchcontext.S.orig
> ++++ libphobos/libdruntime/config/x86/switchcontext.S
> +@@ -27,10 +27,10 @@ see the files COPYING3 and COPYING.RUNTIME respectivel
> + /* NB: Generate the CET marker for -fcf-protection.  */
> + #ifdef __CET__
> + # include <cet.h>
> ++#else
> ++# define _CET_ENDBR
> + #endif
> + 
> +-#if !defined(__CET__)
> +-
> + # if defined(__ELF__)
> + 
> + #  if defined(__i386__)
> +@@ -41,6 +41,7 @@ see the files COPYING3 and COPYING.RUNTIME respectivel
> +     .align 16
> + CSYM(fiber_switchContext):
> +     .cfi_startproc
> ++    _CET_ENDBR
> +     // save current stack state
> +     push %ebp
> +     mov  %esp, %ebp
> +@@ -77,6 +78,7 @@ CSYM(fiber_switchContext):
> +     .align 16
> + CSYM(fiber_switchContext):
> +     .cfi_startproc
> ++    _CET_ENDBR
> +     // Save current stack state.save current stack state
> +     push %rbp
> +     mov  %rsp, %rbp
> +@@ -107,6 +109,8 @@ CSYM(fiber_switchContext):
> + #  endif /* defined(__ELF__) && defined(__x86_64__) && !defined(__ILP32__) */
> + 
> + # endif /* defined(__ELF__) */
> ++
> ++#if !defined(__CET__)
> + 
> + # if defined(__MACH__)
> + 
> Index: 15/patches/patch-libphobos_libdruntime_core_stdc_stdio_d
> ===================================================================
> RCS file: 15/patches/patch-libphobos_libdruntime_core_stdc_stdio_d
> diff -N 15/patches/patch-libphobos_libdruntime_core_stdc_stdio_d
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_libdruntime_core_stdc_stdio_d	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,160 @@
> +https://github.com/dlang/dmd/commit/bbd2b459ce0ee84b6c29f020d8509aa096f7e405
> +
> +Index: libphobos/libdruntime/core/stdc/stdio.d
> +--- libphobos/libdruntime/core/stdc/stdio.d.orig
> ++++ libphobos/libdruntime/core/stdc/stdio.d
> +@@ -611,31 +611,7 @@ else version (OpenBSD)
> +     ///
> +     struct __sFILE
> +     {
> +-        ubyte*          _p;
> +-        int             _r;
> +-        int             _w;
> +-        short           _flags;
> +-        short           _file;
> +-        __sbuf          _bf;
> +-        int             _lbfsize;
> +-
> +-        void*           _cookie;
> +-        int     function(void*)                         _close;
> +-        int     function(void*, scope char*, int)       _read;
> +-        fpos_t  function(void*, fpos_t, int)            _seek;
> +-        int     function(void*, scope const char*, int) _write;
> +-
> +-        __sbuf          _ext;
> +-        ubyte*          _up;
> +-        int             _ur;
> +-
> +-        ubyte[3]        _ubuf;
> +-        ubyte[1]        _nbuf;
> +-
> +-        __sbuf          _lb;
> +-
> +-        int             _blksize;
> +-        fpos_t          _offset;
> ++        void* dummy;
> +     }
> + 
> +     ///
> +@@ -1019,16 +995,22 @@ else version (OpenBSD)
> +         _IONBF = 2,
> +     }
> + 
> +-    private extern shared FILE[3] __sF;
> +-    @property auto __stdin()() { return &__sF[0]; }
> +-    @property auto __stdout()() { return &__sF[1]; }
> +-    @property auto __stderr()() { return &__sF[2]; }
> ++    struct __sFstub { long _stub; }
> ++
> ++    private extern shared __sFstub[1] __stdin;
> ++    private extern shared __sFstub[1] __stdout;
> ++    private extern shared __sFstub[1] __stderr;
> ++
> ++    @property auto __stdin1()() { return cast(FILE*)__stdin; }
> ++    @property auto __stdout1()() { return cast(FILE*)__stdout; }
> ++    @property auto __stderr1()() { return cast(FILE*)__stderr; }
> ++
> +     ///
> +-    alias __stdin stdin;
> ++    alias __stdin1 stdin;
> +     ///
> +-    alias __stdout stdout;
> ++    alias __stdout1 stdout;
> +     ///
> +-    alias __stderr stderr;
> ++    alias __stderr1 stderr;
> + }
> + else version (DragonFlyBSD)
> + {
> +@@ -1727,83 +1709,14 @@ else version (OpenBSD)
> +     {
> +         ///
> +         void rewind(FILE*);
> +-    }
> +-    @trusted private
> +-    {
> +-        ///
> +-        pragma(mangle, "clearerr")
> +-        pure void __clearerr(FILE*);
> +-        ///
> +-        pragma(mangle, "feof")
> +-        pure int __feof(FILE*);
> +-        ///
> +-        pragma(mangle, "ferror")
> +-        pure int __ferror(FILE*);
> +-        ///
> +-        pragma(mangle, "fileno")
> +-        int __fileno(FILE*);
> +-    }
> +-
> +-    enum __SLBF = 0x0001;
> +-    enum __SNBF = 0x0002;
> +-    enum __SRD  = 0x0004;
> +-    enum __SWR  = 0x0008;
> +-    enum __SRW  = 0x0010;
> +-    enum __SEOF = 0x0020;
> +-    enum __SERR = 0x0040;
> +-    enum __SMBF = 0x0080;
> +-    enum __SAPP = 0x0100;
> +-    enum __SSTR = 0x0200;
> +-    enum __SOPT = 0x0400;
> +-    enum __SNPT = 0x0800;
> +-    enum __SOFF = 0x1000;
> +-    enum __SMOD = 0x2000;
> +-    enum __SALC = 0x4000;
> +-    enum __SIGN = 0x8000;
> +-
> +-    extern immutable __gshared int __isthreaded;
> +-
> +-    extern (D) @trusted
> +-    {
> +-        void __sclearerr()(FILE* p)
> +-        {
> +-            p._flags = p._flags & ~(__SERR|__SEOF);
> +-        }
> +-
> +-        int __sfeof()(FILE* p)
> +-        {
> +-            return (p._flags & __SEOF) != 0;
> +-        }
> +-
> +-        int __sferror()(FILE* p)
> +-        {
> +-            return (p._flags & __SERR) != 0;
> +-        }
> +-
> +-        int __sfileno()(FILE* p)
> +-        {
> +-            return p._file;
> +-        }
> +-
> +-        pure void clearerr()(FILE* file)
> +-        {
> +-            !__isthreaded ? __sclearerr(file) : __clearerr(file);
> +-        }
> +-
> +-        pure int feof()(FILE* file)
> +-        {
> +-            return !__isthreaded ? __sfeof(file) : __feof(file);
> +-        }
> +-
> +-        pure int ferror()(FILE* file)
> +-        {
> +-            return !__isthreaded ? __sferror(file) : __ferror(file);
> +-        }
> +-
> +-        int fileno()(FILE* file)
> +-        {
> +-            return !__isthreaded ? __sfileno(file) : __fileno(file);
> +-        }
> ++	///
> ++	pure void clearerr(FILE*);
> ++	///
> ++	pure int  feof(FILE*);
> ++	///
> ++	pure int  ferror(FILE*);
> ++	///
> ++	int  fileno(FILE*);
> +     }
> + 
> +     ///
> Index: 15/patches/patch-libphobos_libdruntime_core_sys_openbsd_dlfcn_d
> ===================================================================
> RCS file: 15/patches/patch-libphobos_libdruntime_core_sys_openbsd_dlfcn_d
> diff -N 15/patches/patch-libphobos_libdruntime_core_sys_openbsd_dlfcn_d
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_libdruntime_core_sys_openbsd_dlfcn_d	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,22 @@
> +Index: libphobos/libdruntime/core/sys/openbsd/dlfcn.d
> +--- libphobos/libdruntime/core/sys/openbsd/dlfcn.d.orig
> ++++ libphobos/libdruntime/core/sys/openbsd/dlfcn.d
> +@@ -15,6 +15,9 @@ enum RTLD_NEXT    = cast(void *)-1;
> + enum RTLD_DEFAULT = cast(void *)-2;
> + enum RTLD_SELF    = cast(void *)-3;
> + 
> ++enum RTLD_NOLOAD     = 0;
> ++enum RTLD_DI_LINKMAP = 0;
> ++
> + enum DL_GETERRNO     = 1;
> + enum DL_SETTHREADLCK = 2;
> + enum DL_SETBINDLCK   = 3;
> +@@ -23,3 +26,8 @@ enum DL_REFERENCE    = 4;
> + enum DL_LAZY         = RTLD_LAZY;
> + 
> + int dlctl(void *, int, void *);
> ++
> ++int dlinfo(void *handle, int request, void *p) nothrow @nogc
> ++{
> ++    return 0;
> ++}
> Index: 15/patches/patch-libphobos_libdruntime_core_sys_openbsd_execinfo_d
> ===================================================================
> RCS file: 15/patches/patch-libphobos_libdruntime_core_sys_openbsd_execinfo_d
> diff -N 15/patches/patch-libphobos_libdruntime_core_sys_openbsd_execinfo_d
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_libdruntime_core_sys_openbsd_execinfo_d	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,147 @@
> +Index: libphobos/libdruntime/core/sys/openbsd/execinfo.d
> +--- libphobos/libdruntime/core/sys/openbsd/execinfo.d.orig
> ++++ libphobos/libdruntime/core/sys/openbsd/execinfo.d
> +@@ -11,10 +11,137 @@ module core.sys.openbsd.execinfo;
> + version (OpenBSD):
> + extern (C):
> + nothrow:
> +-@nogc:
> + 
> +-size_t backtrace(void**, size_t);
> +-char** backtrace_symbols(const(void*)*, size_t);
> +-void backtrace_symbols_fd(const(void*)*, size_t, int);
> +-char** backtrace_symbols_fmt(const(void*)*, size_t, const char*);
> +-int backtrace_symbols_fd_fmt(const(void*)*, size_t, int, const char*);
> ++version (GNU)
> ++    version = BacktraceExternal;
> ++
> ++version (BacktraceExternal)
> ++{
> ++    size_t backtrace(void**, size_t);
> ++    char** backtrace_symbols(const(void*)*, size_t);
> ++    void backtrace_symbols_fd(const(void*)*, size_t, int);
> ++    char** backtrace_symbols_fmt(const(void*)*, size_t, const char*);
> ++    int backtrace_symbols_fd_fmt(const(void*)*, size_t, int, const char*);
> ++}
> ++else
> ++{
> ++    import core.sys.openbsd.dlfcn;
> ++
> ++    // Use extern (D) so that these functions don't collide with libexecinfo.
> ++
> ++    extern (D) int backtrace(void** buffer, int size)
> ++    {
> ++        import core.thread : thread_stackBottom;
> ++
> ++        void** p, pend=cast(void**)thread_stackBottom();
> ++        version (D_InlineAsm_X86)
> ++            asm nothrow @trusted { mov p[EBP], EBP; }
> ++        else version (D_InlineAsm_X86_64)
> ++            asm nothrow @trusted { mov p[RBP], RBP; }
> ++        else
> ++            static assert(false, "Architecture not supported.");
> ++
> ++        int i;
> ++        for (; i < size && p < pend; ++i)
> ++        {
> ++            buffer[i] = *(p + 1);
> ++            auto pnext = cast(void**)*p;
> ++            if (pnext <= p) break;
> ++            p = pnext;
> ++        }
> ++        return i;
> ++    }
> ++
> ++
> ++    extern (D) char** backtrace_symbols(const(void*)* buffer, int size)
> ++    {
> ++        static void* realloc(void* p, size_t len) nothrow
> ++        {
> ++            static import cstdlib=core.stdc.stdlib;
> ++            auto res = cstdlib.realloc(p, len);
> ++            if (res is null) cstdlib.free(p);
> ++            return res;
> ++        }
> ++
> ++        if (size <= 0) return null;
> ++
> ++        size_t pos = size * (char*).sizeof;
> ++        char** p = cast(char**)realloc(null, pos);
> ++        if (p is null) return null;
> ++
> ++        Dl_info info;
> ++        foreach (i, addr; buffer[0 .. size])
> ++        {
> ++            if (dladdr(addr, &info) == 0)
> ++                (cast(ubyte*)&info)[0 .. info.sizeof] = 0;
> ++            fixupDLInfo(addr, info);
> ++
> ++            immutable len = formatStackFrame(null, 0, addr, info);
> ++            assert(len > 0);
> ++
> ++            p = cast(char**)realloc(p, pos + len);
> ++            if (p is null) return null;
> ++
> ++            formatStackFrame(cast(char*)p + pos, len, addr, info) == len || assert(0);
> ++
> ++            p[i] = cast(char*)pos;
> ++            pos += len;
> ++        }
> ++        foreach (i; 0 .. size)
> ++        {
> ++            pos = cast(size_t)p[i];
> ++            p[i] = cast(char*)p + pos;
> ++        }
> ++        return p;
> ++    }
> ++
> ++
> ++    extern (D) void backtrace_symbols_fd(const(void*)* buffer, int size, int fd)
> ++    {
> ++        import core.sys.posix.unistd : write;
> ++        import core.stdc.stdlib : alloca;
> ++
> ++        if (size <= 0) return;
> ++
> ++        Dl_info info;
> ++        foreach (i, addr; buffer[0 .. size])
> ++        {
> ++            if (dladdr(addr, &info) == 0)
> ++                (cast(ubyte*)&info)[0 .. info.sizeof] = 0;
> ++            fixupDLInfo(addr, info);
> ++
> ++            enum maxAlloca = 1024;
> ++            enum min = (size_t a, size_t b) => a <= b ? a : b;
> ++            immutable len = min(formatStackFrame(null, 0, addr, info), maxAlloca);
> ++            assert(len > 0);
> ++
> ++            auto p = cast(char*)alloca(len);
> ++            if (p is null) return;
> ++
> ++            formatStackFrame(p, len, addr, info) >= len || assert(0);
> ++            p[len - 1] = '\n';
> ++            write(fd, p, len);
> ++        }
> ++    }
> ++
> ++
> ++    private void fixupDLInfo(const(void)* addr, ref Dl_info info)
> ++    {
> ++        if (info.dli_fname is null) info.dli_fname = "???";
> ++        if (info.dli_fbase is null) info.dli_fbase = null;
> ++        if (info.dli_sname is null) info.dli_sname = "???";
> ++        if (info.dli_saddr is null) info.dli_saddr = cast(void*)addr;
> ++    }
> ++
> ++
> ++    private size_t formatStackFrame(char* p, size_t plen, const(void)* addr, const ref Dl_info info)
> ++    {
> ++        import core.stdc.stdio : snprintf;
> ++
> ++        immutable off = addr - info.dli_saddr;
> ++        immutable len = snprintf(p, plen, "%p <%s+%zd> at %s",
> ++                                 addr, info.dli_sname, off, info.dli_fname);
> ++        assert(len > 0);
> ++        return cast(size_t)len + 1; // + '\0'
> ++    }
> ++}
> Index: 15/patches/patch-libphobos_libdruntime_core_sys_posix_config_d
> ===================================================================
> RCS file: 15/patches/patch-libphobos_libdruntime_core_sys_posix_config_d
> diff -N 15/patches/patch-libphobos_libdruntime_core_sys_posix_config_d
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_libdruntime_core_sys_posix_config_d	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,16 @@
> +Index: libphobos/libdruntime/core/sys/posix/config.d
> +--- libphobos/libdruntime/core/sys/posix/config.d.orig
> ++++ libphobos/libdruntime/core/sys/posix/config.d
> +@@ -196,6 +196,12 @@ else version (OpenBSD)
> +         enum _STACKALIGNBYTES = 15;
> +         enum _MAX_PAGE_SHIFT = 12;
> +     }
> ++    else version (PPC64)
> ++    {
> ++        enum _ALIGNBYTES = 7;
> ++        enum _STACKALIGNBYTES = 15;
> ++        enum _MAX_PAGE_SHIFT = 12;
> ++    }
> +     else version (SPARC64)
> +     {
> +         enum _ALIGNBYTES = 15;
> Index: 15/patches/patch-libphobos_libdruntime_core_sys_posix_setjmp_d
> ===================================================================
> RCS file: 15/patches/patch-libphobos_libdruntime_core_sys_posix_setjmp_d
> diff -N 15/patches/patch-libphobos_libdruntime_core_sys_posix_setjmp_d
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_libdruntime_core_sys_posix_setjmp_d	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,25 @@
> +Index: libphobos/libdruntime/core/sys/posix/setjmp.d
> +--- libphobos/libdruntime/core/sys/posix/setjmp.d.orig
> ++++ libphobos/libdruntime/core/sys/posix/setjmp.d
> +@@ -283,6 +283,10 @@ else version (OpenBSD)
> +     {
> +         enum _JBLEN = 100;
> +     }
> ++    else version (PPC64)
> ++    {
> ++        enum _JBLEN = 208;
> ++    }
> +     else version (MIPS64)
> +     {
> +         enum _JBLEN = 83;
> +@@ -294,6 +298,10 @@ else version (OpenBSD)
> +     else version (SPARC64)
> +     {
> +         enum _JBLEN = 14;
> ++    }
> ++    else version (AArch64)
> ++    {
> ++        enum _JBLEN = 64;
> +     }
> +     else
> +         static assert(0);
> Index: 15/patches/patch-libphobos_libdruntime_core_sys_posix_sys_mman_d
> ===================================================================
> RCS file: 15/patches/patch-libphobos_libdruntime_core_sys_posix_sys_mman_d
> diff -N 15/patches/patch-libphobos_libdruntime_core_sys_posix_sys_mman_d
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_libdruntime_core_sys_posix_sys_mman_d	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,13 @@
> +Fiber needs mmap(2) MAP_STACK.
> +
> +Index: libphobos/libdruntime/core/sys/posix/sys/mman.d
> +--- libphobos/libdruntime/core/sys/posix/sys/mman.d.orig
> ++++ libphobos/libdruntime/core/sys/posix/sys/mman.d
> +@@ -454,6 +454,7 @@ else version (DragonFlyBSD)
> +     enum MAP_PRIVATE    = 0x0002;
> +     enum MAP_FIXED      = 0x0010;
> +     enum MAP_ANON       = 0x1000;
> ++    enum MAP_STACK      = 0x4000;
> + 
> +     enum MAP_FAILED     = cast(void*)-1;
> + 
> Index: 15/patches/patch-libphobos_libdruntime_core_sys_posix_ucontext_d
> ===================================================================
> RCS file: 15/patches/patch-libphobos_libdruntime_core_sys_posix_ucontext_d
> diff -N 15/patches/patch-libphobos_libdruntime_core_sys_posix_ucontext_d
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_libdruntime_core_sys_posix_ucontext_d	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,29 @@
> +Index: libphobos/libdruntime/core/sys/posix/ucontext.d
> +--- libphobos/libdruntime/core/sys/posix/ucontext.d.orig
> ++++ libphobos/libdruntime/core/sys/posix/ucontext.d
> +@@ -1275,6 +1275,25 @@ else version (OpenBSD)
> +             trapframe sc_frame;
> +         }
> +     }
> ++    else version (PPC64)
> ++    {
> ++        struct sigcontext
> ++        {
> ++            c_long       sc_cookie;
> ++            int          sc_mask;
> ++            c_long[32]   sc_reg;
> ++            c_long       sc_lr;
> ++            c_long       sc_cr;
> ++            c_long       sc_xer;
> ++            c_long       sc_ctr;
> ++            c_long       sc_pc;
> ++            c_long       sc_ps;
> ++            c_long       sc_vrsave;
> ++            ulong[2][64] sc_vsx; // __uint128_t
> ++            ulong        sc_fpscr;
> ++            ulong        sc_vcsr;
> ++        }
> ++    }
> +     else version (SPARC64)
> +     {
> +         struct sigcontext
> Index: 15/patches/patch-libphobos_libdruntime_core_thread_fiber_package_d
> ===================================================================
> RCS file: 15/patches/patch-libphobos_libdruntime_core_thread_fiber_package_d
> diff -N 15/patches/patch-libphobos_libdruntime_core_thread_fiber_package_d
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_libdruntime_core_thread_fiber_package_d	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,78 @@
> +Add fibers for powerpc64 ELFv2, and fix fibers for 32-bit powerpc ELF.
> +The old code was for some other platform (AIX?), not BSD nor Linux.
> +This patch fixes OpenBSD but might break the other platform.
> +
> +Index: libphobos/libdruntime/core/thread/fiber/package.d
> +--- libphobos/libdruntime/core/thread/fiber/package.d.orig
> ++++ libphobos/libdruntime/core/thread/fiber/package.d
> +@@ -94,8 +94,13 @@ package
> +     {
> +         version = AlignFiberStackTo16Byte;
> + 
> +-        version (GNU_CET)
> ++        version (OpenBSD)
> +         {
> ++            version = AsmExternal;
> ++            version = AsmX86_64_Posix;
> ++        }
> ++        else version (GNU_CET)
> ++        {
> +             // fiber_switchContext does not support shadow stack from
> +             // Intel CET.  So use ucontext implementation.
> +         }
> +@@ -127,6 +132,7 @@ package
> +         {
> +             version = AsmPPC_Posix;
> +             version = AsmExternal;
> ++            version = AlignFiberStackTo16Byte;
> +         }
> +     }
> +     else version (PPC64)
> +@@ -139,6 +145,8 @@ package
> +         }
> +         else version (Posix)
> +         {
> ++            version = AsmPPC_Posix;
> ++            version = AsmExternal;
> +             version = AlignFiberStackTo16Byte;
> +         }
> +     }
> +@@ -1075,27 +1083,22 @@ class Fiber : FiberBase (protected)
> +         }
> +         else version (AsmPPC_Posix)
> +         {
> +-            version (StackGrowsDown)
> +-            {
> +-                pstack -= int.sizeof * 5;
> +-            }
> +-            else
> +-            {
> +-                pstack += int.sizeof * 5;
> +-            }
> ++            version (StackGrowsDown) {} else static assert (false);
> + 
> +-            push( cast(size_t) &fiber_entryPoint );     // link register
> +-            push( 0x00000000 );                         // control register
> +-            push( 0x00000000 );                         // old stack pointer
> +-
> +-            // GPR values
> +-            version (StackGrowsDown)
> ++            version (PPC64)
> +             {
> +-                pstack -= int.sizeof * 20;
> ++                pstack -= size_t.sizeof * 5;
> ++                push( cast(size_t) &fiber_entryPoint);  // link register
> ++                push( 0x00000000_00000000 );            // condition register
> ++                push( 0x00000000_00000000 );            // old stack pointer
> ++                pstack -= size_t.sizeof * 18;           // GPRs
> +             }
> +             else
> +             {
> +-                pstack += int.sizeof * 20;
> ++                pstack -= size_t.sizeof * 6;
> ++                push( cast(size_t) &fiber_entryPoint);  // link register
> ++                push( 0x00000000 );                     // old stack pointer
> ++                pstack -= size_t.sizeof * 20;           // GPRs and CR
> +             }
> + 
> +             assert( (cast(size_t) pstack & 0x0f) == 0 );
> Index: 15/patches/patch-libphobos_src_Makefile_in
> ===================================================================
> RCS file: 15/patches/patch-libphobos_src_Makefile_in
> diff -N 15/patches/patch-libphobos_src_Makefile_in
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/patches/patch-libphobos_src_Makefile_in	1 Dec 2025 01:56:58 -0000
> @@ -0,0 +1,14 @@
> +Index: libphobos/src/Makefile.in
> +--- libphobos/src/Makefile.in.orig
> ++++ libphobos/src/Makefile.in
> +@@ -540,8 +540,9 @@ toolexeclib_LTLIBRARIES = libgphobos.la
> + libgphobos_la_SOURCES = $(ALL_PHOBOS_SOURCES)
> + libgphobos_la_LIBTOOLFLAGS = 
> + @ENABLE_DARWIN_AT_RPATH_TRUE@libgphobos_darwin_rpath = -Wl,-rpath,@loader_path
> ++include $(top_srcdir)/../libversions
> + libgphobos_la_LDFLAGS = -Wc,-nophoboslib,-dstartfiles,-B../libdruntime/gcc \
> +-    -version-info $(libtool_VERSION) $(libgphobos_darwin_rpath)
> ++    $(LIBgphobos_LTVERSION) $(libgphobos_darwin_rpath)
> + 
> + @ENABLE_LIBDRUNTIME_ONLY_FALSE@libgphobos_la_LIBADD = \
> + @ENABLE_LIBDRUNTIME_ONLY_FALSE@    ../libdruntime/libgdruntime_convenience.la $(LIBZ)
> Index: 15/pkg/PLIST-dlang
> ===================================================================
> RCS file: 15/pkg/PLIST-dlang
> diff -N 15/pkg/PLIST-dlang
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ 15/pkg/PLIST-dlang	1 Dec 2025 01:56:59 -0000
> @@ -0,0 +1,823 @@
> +@bin bin/egdc
> +@bin bin/${CONFIG}-egdc
> +@info info/gdc.info
> +lib/gcc/${CONFIG}/${V}/include/d/
> +lib/gcc/${CONFIG}/${V}/include/d/__importc_builtins.di
> +lib/gcc/${CONFIG}/${V}/include/d/__main.di
> +lib/gcc/${CONFIG}/${V}/include/d/core/
> +lib/gcc/${CONFIG}/${V}/include/d/core/atomic.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/attribute.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/bitop.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/builtins.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/checkedint.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/cpuid.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/demangle.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/exception.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/factory.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/gc/
> +lib/gcc/${CONFIG}/${V}/include/d/core/gc/config.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/gc/gcinterface.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/gc/registry.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/int128.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/abort.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/appending.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/arrayassign.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/capacity.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/casting.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/comparison.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/concatenation.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/construction.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/duplication.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/equality.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/operations.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/array/utils.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/atomic.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/attributes.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/container/
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/container/array.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/container/common.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/container/hashtab.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/container/treap.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/convert.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/dassert.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/destruction.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/entrypoint.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/bits.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/blkcache.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/blockmeta.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/impl/
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/impl/conservative/
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/impl/conservative/gc.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/impl/manual/
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/impl/manual/gc.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/impl/proto/
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/impl/proto/gc.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/os.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/pooltable.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/gc/proxy.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/hash.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/lifetime.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/moving.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/newaa.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/parseoptions.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/postblit.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/qsort.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/spinlock.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/switch_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/traits.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/utf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/util/
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/util/array.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/internal/util/math.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/interpolation.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/lifetime.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/math.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/memory.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/runtime.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/simd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/assert_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/complex.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/config.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/ctype.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/errno.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/fenv.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/float_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/inttypes.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/limits.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/locale.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/math.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/signal.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/stdarg.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/stdatomic.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/stddef.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/stdint.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/stdio.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/stdlib.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/tgmath.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/wchar_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdc/wctype.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/allocator.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/array.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/exception.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/memory.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/new_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/string_view.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/type_traits.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/typeinfo.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/utility.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/vector.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/stdcpp/xutility.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sync/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sync/barrier.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sync/condition.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sync/config.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sync/event.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sync/exception.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sync/mutex.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sync/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sync/rwmutex.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sync/semaphore.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/bionic/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/bionic/err.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/bionic/fcntl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/bionic/stdlib.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/bionic/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/bionic/unistd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/config.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/crt_externs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/dlfcn.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/err.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/execinfo.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/fcntl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/ifaddrs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/mach/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/mach/dyld.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/mach/getsect.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/mach/kern_return.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/mach/loader.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/mach/nlist.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/mach/port.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/mach/semaphore.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/mach/stab.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/mach/thread_act.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/netinet/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/netinet/in_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/pthread.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/stdlib.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/sys/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/sys/attr.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/sys/cdefs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/sys/event.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/sys/mman.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/darwin/sys/sysctl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/dlfcn.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/err.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/execinfo.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/netinet/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/netinet/in_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/pthread_np.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/stdlib.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/_bitset.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/_cpuset.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/cdefs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/elf32.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/elf64.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/elf_common.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/event.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/link_elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/mman.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/socket.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/sys/sysctl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/dragonflybsd/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/elf/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/elf/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/config.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/dlfcn.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/err.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/execinfo.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/ifaddrs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/mqueue.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/net/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/net/if_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/net/if_dl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/netinet/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/netinet/in_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/pthread_np.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/stdlib.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/_bitset.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/_cpuset.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/cdefs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/elf32.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/elf64.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/elf_common.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/event.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/link_elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/mman.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/mount.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/socket.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/sysctl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/sys/types.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/freebsd/unistd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/config.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/dlfcn.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/epoll.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/err.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/errno.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/execinfo.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/fcntl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/fs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/ifaddrs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/input.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/input_event_codes.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/io_uring.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/link.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/linux/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/linux/if_arp.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/linux/if_packet.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/netinet/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/netinet/in_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/netinet/tcp.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/perf_event.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sched.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/stdio.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/auxv.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/eventfd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/file.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/inotify.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/mman.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/mount.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/prctl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/procfs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/signalfd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/socket.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/sysinfo.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/sys/xattr.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/termios.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/timerfd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/tipc.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/uinput.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/linux/unistd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/dlfcn.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/err.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/execinfo.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/stdlib.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/sys/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/sys/elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/sys/elf32.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/sys/elf64.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/sys/elf_common.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/sys/event.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/sys/featuretest.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/sys/link_elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/sys/mman.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/sys/sysctl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/netbsd/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/dlfcn.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/err.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/execinfo.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/pthread_np.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/pwd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/stdlib.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/sys/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/sys/cdefs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/sys/elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/sys/elf32.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/sys/elf64.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/sys/elf_common.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/sys/link_elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/sys/mman.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/sys/sysctl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/openbsd/unistd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/aio.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/arpa/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/arpa/inet.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/config.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/dirent.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/dlfcn.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/fcntl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/grp.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/iconv.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/inttypes.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/libgen.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/locale.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/mqueue.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/net/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/net/if_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/netdb.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/netinet/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/netinet/in_.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/netinet/tcp.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/poll.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/pthread.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/pwd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sched.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/semaphore.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/setjmp.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/signal.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/spawn.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/stdc/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/stdc/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/stdio.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/stdlib.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/strings.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/filio.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/ioccom.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/ioctl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/ipc.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/mman.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/msg.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/resource.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/select.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/shm.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/socket.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/stat.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/statvfs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/ttycom.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/types.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/uio.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/un.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/utsname.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/sys/wait.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/syslog.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/termios.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/ucontext.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/unistd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/posix/utime.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/dlfcn.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/err.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/execinfo.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/libelf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/link.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/stdlib.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/sys/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/sys/elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/sys/elf_386.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/sys/elf_SPARC.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/sys/elf_amd64.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/sys/elf_notes.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/sys/elftypes.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/sys/link.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/sys/priocntl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/sys/procset.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/sys/types.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/solaris/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/accctrl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/aclapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/aclui.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/basetsd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/basetyps.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/bcrypt.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/cderr.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/cguid.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/com.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/comcat.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/commctrl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/commdlg.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/core.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/cpl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/cplext.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/custcntl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/dbghelp.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/dbghelp_types.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/dbt.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/dde.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ddeml.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/dhcpcsdk.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/dlgs.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/dll.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/docobj.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/errorrep.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/exdisp.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/exdispid.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/httpext.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/idispids.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/imagehlp.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/imm.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/intshcut.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ipexport.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/iphlpapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ipifcons.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/iprtrmib.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/iptypes.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/isguids.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lm.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmaccess.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmalert.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmapibuf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmat.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmaudit.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmbrowsr.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmchdev.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmconfig.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmcons.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmerr.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmerrlog.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmmsg.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmremutl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmrepl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmserver.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmshare.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmsname.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmstats.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmsvc.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmuse.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmuseflg.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lmwksta.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/lzexpand.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/mapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/mciavi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/mcx.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/mgmtapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/mmsystem.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/msacm.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/mshtml.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/mswsock.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/nb30.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/nddeapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/nspapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ntdef.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ntdll.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ntldap.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ntsecapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ntsecpkg.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/oaidl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/objbase.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/objfwd.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/objidl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/objsafe.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ocidl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/odbcinst.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ole.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ole2.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ole2ver.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/oleacc.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/oleauto.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/olectl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/olectlid.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/oledlg.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/oleidl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/pbt.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/powrprof.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/prsht.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/psapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/rapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/ras.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/rasdlg.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/raserror.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/rassapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/reason.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/regstr.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/richedit.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/richole.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/rpc.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/rpcdce.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/rpcdce2.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/rpcdcep.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/rpcndr.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/rpcnsi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/rpcnsip.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/rpcnterr.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/schannel.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/sdkddkver.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/secext.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/security.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/servprov.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/setupapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/shellapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/shldisp.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/shlguid.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/shlobj.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/shlwapi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/snmp.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/sql.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/sqlext.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/sqltypes.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/sqlucode.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/sspi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/stacktrace.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/stat.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/stdc/
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/stdc/malloc.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/stdc/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/subauth.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/threadaux.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/tlhelp32.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/tmschema.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/unknwn.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/uuid.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/vfw.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/w32api.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winbase.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winber.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/wincon.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/wincrypt.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/windef.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/windows.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winerror.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/wingdi.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winhttp.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/wininet.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winioctl.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winldap.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winnetwk.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winnls.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winnt.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winperf.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winreg.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winsock2.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winspool.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winsvc.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winuser.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/winver.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/wtsapi32.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/sys/windows/wtypes.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/thread/
> +lib/gcc/${CONFIG}/${V}/include/d/core/thread/context.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/thread/fiber/
> +lib/gcc/${CONFIG}/${V}/include/d/core/thread/fiber/base.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/thread/fiber/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/thread/osthread.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/thread/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/thread/threadbase.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/thread/threadgroup.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/thread/types.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/time.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/vararg.d
> +lib/gcc/${CONFIG}/${V}/include/d/core/volatile.d
> +lib/gcc/${CONFIG}/${V}/include/d/etc/
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/curl.d
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/odbc/
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/odbc/odbc32.d
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/odbc/odbc64.d
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/odbc/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/odbc/sql.d
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/odbc/sqlext.d
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/odbc/sqltypes.d
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/odbc/sqlucode.d
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/sqlite3.d
> +lib/gcc/${CONFIG}/${V}/include/d/etc/c/zlib.d
> +lib/gcc/${CONFIG}/${V}/include/d/etc/valgrind/
> +lib/gcc/${CONFIG}/${V}/include/d/etc/valgrind/valgrind.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/attribute.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/attributes.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/backtrace.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/builtins.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/config.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/deh.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/emutls.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/gthread.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/libbacktrace.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/sections/
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/sections/common.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/sections/elf.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/sections/macho.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/sections/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/sections/pecoff.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/simd.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/unwind/
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/unwind/arm.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/unwind/arm_common.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/unwind/c6x.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/unwind/generic.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/unwind/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/gcc/unwind/pe.d
> +lib/gcc/${CONFIG}/${V}/include/d/object.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/
> +lib/gcc/${CONFIG}/${V}/include/d/rt/aApply.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/aApplyR.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/aaA.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/adi.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/arraycat.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/cast_.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/config.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/critical_.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/deh.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/dmain2.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/ehalloc.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/invariant_.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/lifetime.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/memory.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/minfo.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/monitor_.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/profilegc.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/sections.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/tlsgc.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/util/
> +lib/gcc/${CONFIG}/${V}/include/d/rt/util/typeinfo.d
> +lib/gcc/${CONFIG}/${V}/include/d/rt/util/utility.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/
> +lib/gcc/${CONFIG}/${V}/include/d/std/algorithm/
> +lib/gcc/${CONFIG}/${V}/include/d/std/algorithm/comparison.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/algorithm/internal.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/algorithm/iteration.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/algorithm/mutation.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/algorithm/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/algorithm/searching.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/algorithm/setops.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/algorithm/sorting.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/array.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/ascii.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/base64.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/bigint.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/bitmanip.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/checkedint.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/compiler.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/complex.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/concurrency.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/container/
> +lib/gcc/${CONFIG}/${V}/include/d/std/container/array.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/container/binaryheap.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/container/dlist.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/container/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/container/rbtree.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/container/slist.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/container/util.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/conv.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/csv.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/datetime/
> +lib/gcc/${CONFIG}/${V}/include/d/std/datetime/date.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/datetime/interval.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/datetime/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/datetime/stopwatch.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/datetime/systime.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/datetime/timezone.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/demangle.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/digest/
> +lib/gcc/${CONFIG}/${V}/include/d/std/digest/crc.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/digest/hmac.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/digest/md.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/digest/murmurhash.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/digest/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/digest/ripemd.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/digest/sha.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/encoding.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/exception.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/affix_allocator.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/aligned_block_list.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/allocator_list.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/ascending_page_allocator.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/bitmapped_block.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/bucketizer.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/fallback_allocator.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/free_list.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/free_tree.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/kernighan_ritchie.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/null_allocator.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/quantizer.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/region.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/scoped_allocator.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/segregator.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/building_blocks/stats_collector.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/common.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/gc_allocator.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/mallocator.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/mmap_allocator.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/showcase.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/allocator/typed.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/checkedint.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/logger/
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/logger/core.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/logger/filelogger.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/logger/multilogger.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/logger/nulllogger.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/experimental/logger/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/file.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/format/
> +lib/gcc/${CONFIG}/${V}/include/d/std/format/internal/
> +lib/gcc/${CONFIG}/${V}/include/d/std/format/internal/floats.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/format/internal/read.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/format/internal/write.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/format/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/format/read.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/format/spec.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/format/write.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/functional.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/getopt.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/int128.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/attributes.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/cstring.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/math/
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/math/biguintcore.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/math/biguintnoasm.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/math/errorfunction.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/math/gammafunction.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/memory.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/scopebuffer.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/test/
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/test/dummyrange.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/test/range.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/test/sumtype_example_overloads.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/test/uda.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/unicode_comp.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/unicode_decomp.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/unicode_grapheme.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/unicode_norm.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/unicode_tables.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/windows/
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/windows/advapi32.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/internal/windows/bcrypt.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/json.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/logger/
> +lib/gcc/${CONFIG}/${V}/include/d/std/logger/core.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/logger/filelogger.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/logger/multilogger.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/logger/nulllogger.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/logger/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/math/
> +lib/gcc/${CONFIG}/${V}/include/d/std/math/algebraic.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/math/constants.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/math/exponential.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/math/hardware.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/math/operations.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/math/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/math/remainder.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/math/rounding.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/math/traits.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/math/trigonometry.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/mathspecial.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/meta.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/mmfile.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/net/
> +lib/gcc/${CONFIG}/${V}/include/d/std/net/curl.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/net/isemail.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/numeric.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/outbuffer.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/parallelism.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/path.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/process.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/random.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/range/
> +lib/gcc/${CONFIG}/${V}/include/d/std/range/interfaces.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/range/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/range/primitives.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/regex/
> +lib/gcc/${CONFIG}/${V}/include/d/std/regex/internal/
> +lib/gcc/${CONFIG}/${V}/include/d/std/regex/internal/backtracking.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/regex/internal/generator.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/regex/internal/ir.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/regex/internal/kickstart.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/regex/internal/parser.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/regex/internal/tests.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/regex/internal/tests2.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/regex/internal/thompson.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/regex/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/signals.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/socket.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/stdint.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/stdio.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/string.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/sumtype.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/system.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/traits.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/typecons.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/typetuple.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/uni/
> +lib/gcc/${CONFIG}/${V}/include/d/std/uni/package.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/uri.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/utf.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/uuid.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/variant.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/windows/
> +lib/gcc/${CONFIG}/${V}/include/d/std/windows/charset.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/windows/registry.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/windows/syserror.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/zip.d
> +lib/gcc/${CONFIG}/${V}/include/d/std/zlib.d
> +@static-lib lib/libgdruntime.a
> +lib/libgdruntime.la
> +@lib lib/libgdruntime.so.${LIBgdruntime_VERSION}
> +@static-lib lib/libgphobos.a
> +lib/libgphobos.la
> +@lib lib/libgphobos.so.${LIBgphobos_VERSION}
> +lib/libgphobos.spec
> +@bin libexec/gcc/${CONFIG}/${V}/d21
> +@man man/man1/egdc.1
>