FreeBSD Bugzilla – Attachment 203847 Details for
Bug 237427
lang/ldc: update to 1.22.0, unbreak on aarch64
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
ldc115.patch
ldc115.patch (text/plain), 10.92 KB, created by
Val Packett
on 2019-04-20 23:58:17 UTC
(
hide
)
Description:
ldc115.patch
Filename:
MIME Type:
Creator:
Val Packett
Created:
2019-04-20 23:58:17 UTC
Size:
10.92 KB
patch
obsolete
>diff --git c/lang/ldc/Makefile i/lang/ldc/Makefile >index 30101e86f365..1358de6468e6 100644 >--- c/lang/ldc/Makefile >+++ i/lang/ldc/Makefile >@@ -1,7 +1,7 @@ > # $FreeBSD$ > > PORTNAME= ldc >-PORTVERSION= 1.14.0 >+PORTVERSION= 1.15.0 > DISTVERSIONPREFIX= v > CATEGORIES= lang > >@@ -10,11 +10,11 @@ COMMENT= The LLVM-based D compiler > > LICENSE= BSD3CLAUSE > >-BUILD_DEPENDS= llvm70>0:devel/llvm70 >+BUILD_DEPENDS= llvm70>0:devel/llvm70 \ >+ ninja:devel/ninja > RUN_DEPENDS= llvm70>0:devel/llvm70 > LIB_DEPENDS= libconfig.so:devel/libconfig > >-BROKEN_aarch64= fails to compile: Error: undefined identifier _jmp_buf, did you mean alias jmp_buf? > BROKEN_armv6= fails to compile: Error: undefined identifier _jmp_buf, did you mean alias jmp_buf? > BROKEN_armv7= fails to compile: Error: undefined identifier _jmp_buf, did you mean alias jmp_buf? > BROKEN_powerpc64= fails to compile: cc1plus: error: unrecognized command line option "-std=c++11" >@@ -23,11 +23,11 @@ USES= cmake:insource > USE_GITHUB= yes > GH_ACCOUNT= ldc-developers > GH_PROJECT= ldc >-GH_TUPLE= ldc-developers:ldc:911589c:tree/ltsmaster \ >- ldc-developers:druntime:694089c:druntimelts/ltsmaster/runtime/druntime \ >+GH_TUPLE= ldc-developers:ldc:d442f9f:tree/ltsmaster \ >+ ldc-developers:druntime:13b1ccf:druntimelts/ltsmaster/runtime/druntime \ > ldc-developers:phobos:1d758b2:phoboslts/ltsmaster/runtime/phobos \ >- ldc-developers:druntime:54cb25c:druntime/runtime/druntime \ >- ldc-developers:phobos:71cf74f:phobos/runtime/phobos >+ ldc-developers:druntime:8a85f37:druntime/runtime/druntime \ >+ ldc-developers:phobos:981412b:phobos/runtime/phobos > > CMAKE_ARGS+= -DD_COMPILER:STRING="${WRKSRC}/ltsmaster/bin/ldmd2" \ > -DBUILD_SHARED_LIBS:STRING="BOTH" >@@ -41,7 +41,7 @@ LDCVER= ${PORTVERSION} > > .include <bsd.port.pre.mk> > >-.if ${ARCH} == "amd64" >+.if ${ARCH} == "amd64" || ${ARCH} == "aarch64" > CFLAGS+= -fPIC > .endif > >@@ -56,8 +56,8 @@ post-patch: > > pre-configure: > @cd ${WRKSRC}/ltsmaster && \ >- ${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} . >+ ${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} -GNinja . > @cd ${WRKSRC}/ltsmaster && \ >- ${SETENV} ${MAKE_ENV} ${MAKE} >+ ${SETENV} ${MAKE_ENV} ninja > > .include <bsd.port.post.mk> >diff --git c/lang/ldc/distinfo i/lang/ldc/distinfo >index 88aab07c8ab5..2a2f4ef9455b 100644 >--- c/lang/ldc/distinfo >+++ i/lang/ldc/distinfo >@@ -1,13 +1,13 @@ >-TIMESTAMP = 1551800863 >-SHA256 (ldc-developers-ldc-v1.14.0_GH0.tar.gz) = daa7876ce846861cd9feb92f35dc0ca537a845492ca8a3eebecc9d166bc324b3 >-SIZE (ldc-developers-ldc-v1.14.0_GH0.tar.gz) = 1664660 >-SHA256 (ldc-developers-ldc-911589c_GH0.tar.gz) = c10ee47d857358ea97eccd14b49b4152c7b2621c0129eee1e8f98988f1d13f5e >-SIZE (ldc-developers-ldc-911589c_GH0.tar.gz) = 1231073 >-SHA256 (ldc-developers-druntime-694089c_GH0.tar.gz) = 29b1a27f767ac9c8a0c30926991d9abcda119aaf923b05caa686a6c396ac0a83 >-SIZE (ldc-developers-druntime-694089c_GH0.tar.gz) = 953726 >+TIMESTAMP = 1555631456 >+SHA256 (ldc-developers-ldc-v1.15.0_GH0.tar.gz) = ccf4f11b1c841b48abf39d6160cdf42424ad30ed18d51e5114080d82cdca8c94 >+SIZE (ldc-developers-ldc-v1.15.0_GH0.tar.gz) = 1701470 >+SHA256 (ldc-developers-ldc-d442f9f_GH0.tar.gz) = a74e55ef567209600fd5fe54f927df2db1540037ba2612ead55862bdf408ed79 >+SIZE (ldc-developers-ldc-d442f9f_GH0.tar.gz) = 1231193 >+SHA256 (ldc-developers-druntime-13b1ccf_GH0.tar.gz) = 0be26cb90b540e972eae3660e1b865f97d5b1cb6c7ffe76e2ec4eae89ed63f4a >+SIZE (ldc-developers-druntime-13b1ccf_GH0.tar.gz) = 953762 > SHA256 (ldc-developers-phobos-1d758b2_GH0.tar.gz) = af70f2d4b09e0062ba986e215677f484c1cec2977a74ca1a73d3534a120992e9 > SIZE (ldc-developers-phobos-1d758b2_GH0.tar.gz) = 1923043 >-SHA256 (ldc-developers-druntime-54cb25c_GH0.tar.gz) = 47a71942f9f6d4c36d867eb2526a72aece36fb959cf99619e525cacb4951e864 >-SIZE (ldc-developers-druntime-54cb25c_GH0.tar.gz) = 1665530 >-SHA256 (ldc-developers-phobos-71cf74f_GH0.tar.gz) = fe01cb3decccde3c5aa0defcba715c283a1f11bf2bed6aedd0e33e43030c9c72 >-SIZE (ldc-developers-phobos-71cf74f_GH0.tar.gz) = 2355367 >+SHA256 (ldc-developers-druntime-8a85f37_GH0.tar.gz) = 966c0ea5b99e56e834eed00f038bd77040898b23dc19e978189deaabe41a8ea7 >+SIZE (ldc-developers-druntime-8a85f37_GH0.tar.gz) = 1699161 >+SHA256 (ldc-developers-phobos-981412b_GH0.tar.gz) = 2bafb346226e68a9739bd0e65f20f1c176fa51b800b738469b73599e2f3c68b7 >+SIZE (ldc-developers-phobos-981412b_GH0.tar.gz) = 2358879 >diff --git c/lang/ldc/files/fbsd12-ltsmaster-runtime-druntime-src-core-sys-posix_dirent.d i/lang/ldc/files/fbsd12-ltsmaster-runtime-druntime-src-core-sys-posix_dirent.d >deleted file mode 100644 >index 8387f06a18d2..000000000000 >--- c/lang/ldc/files/fbsd12-ltsmaster-runtime-druntime-src-core-sys-posix_dirent.d >+++ /dev/null >@@ -1,17 +0,0 @@ >---- ltsmaster/runtime/druntime/src/core/sys/posix/dirent.d 2019-03-06 04:07:06.836421000 +0000 >-+++ ltsmaster/runtime/druntime/src/core/sys/posix/dirent.d 2019-03-06 04:08:34.306001000 +0000 >-@@ -131,10 +131,12 @@ >- align(4) >- struct dirent >- { >-- uint d_fileno; >-+ ino_t d_fileno; >-+ off_t d_off; >- ushort d_reclen; >- ubyte d_type; >-- ubyte d_namlen; >-+ ushort d_namlen; >-+ ushort d_pad1; >- char[256] d_name; >- } >- >diff --git c/lang/ldc/files/fbsd12-runtime-druntime-src-core-sys-posix_dirent.d i/lang/ldc/files/fbsd12-runtime-druntime-src-core-sys-posix_dirent.d >deleted file mode 100644 >index b6fbf9947824..000000000000 >--- c/lang/ldc/files/fbsd12-runtime-druntime-src-core-sys-posix_dirent.d >+++ /dev/null >@@ -1,21 +0,0 @@ >---- runtime/druntime/src/core/sys/posix/dirent.d 2019-03-05 17:39:54.822687000 +0000 >-+++ runtime/druntime/src/core/sys/posix/dirent.d 2019-03-05 17:41:19.267583000 +0000 >-@@ -152,11 +152,13 @@ >- align(4) >- struct dirent >- { >-- uint d_fileno; >-- ushort d_reclen; >-- ubyte d_type; >-- ubyte d_namlen; >-- char[256] d_name; >-+ ino_t d_fileno; >-+ off_t d_off; >-+ ushort d_reclen; >-+ ubyte d_type; >-+ ushort d_namlen; >-+ ushort d_pad1; >-+ char[256] d_name; >- } >- >- alias void* DIR; >diff --git c/lang/ldc/files/patch-aarch64 i/lang/ldc/files/patch-aarch64 >new file mode 100644 >index 000000000000..f09b679f376f >--- /dev/null >+++ i/lang/ldc/files/patch-aarch64 >@@ -0,0 +1,82 @@ >+- Upstreamed aarch64 support patch (but not merged into ldc's fork): >+ https://github.com/dlang/druntime/pull/2269 >+- Remove failing (on aarch64) static assert in bootstrap compiler's math function >+ >+--- ltsmaster/runtime/druntime/src/core/sys/posix/setjmp.d.orig 2018-12-15 16:48:11 UTC >++++ ltsmaster/runtime/druntime/src/core/sys/posix/setjmp.d >+@@ -163,6 +163,12 @@ else version( FreeBSD ) >+ enum _JBLEN = 5; >+ struct _jmp_buf { c_long[_JBLEN + 1] _jb; } >+ } >++ else version( AArch64 ) >++ { >++ enum _JBLEN = 31; >++ // __int128_t >++ struct _jmp_buf { long[2][_JBLEN + 1] _jb; }; >++ } >+ else >+ static assert(0); >+ alias _jmp_buf[1] jmp_buf; >+@@ -249,6 +255,11 @@ else version( FreeBSD ) >+ enum _JB_SIGMASK = 3; >+ enum _JB_SIGFLAG = 5; >+ struct _sigjmp_buf { c_long[_JBLEN + 1] _sjb; } >++ } >++ else version( AArch64 ) >++ { >++ // __int128_t >++ struct _sigjmp_buf { long[2][_JBLEN + 1] _jb; }; >+ } >+ else >+ static assert(0); >+--- ltsmaster/runtime/druntime/src/core/sys/posix/ucontext.d.orig 2018-12-15 16:48:11 UTC >++++ ltsmaster/runtime/druntime/src/core/sys/posix/ucontext.d >+@@ -686,6 +686,38 @@ else version( FreeBSD ) >+ int[6] mc_spare2; >+ } >+ } >++ else version( AArch64 ) >++ { >++ alias __register_t = long; >++ >++ struct gpregs >++ { >++ __register_t[30] gp_x; >++ __register_t gp_lr; >++ __register_t gp_sp; >++ __register_t gp_elr; >++ uint gp_spsr; >++ int gp_pad; >++ } >++ >++ struct fpregs >++ { >++ ulong[2][32] fp_q; // __uint128_t >++ uint fp_sr; >++ uint fp_cr; >++ int fp_flags; >++ int fp_pad; >++ } >++ >++ struct mcontext_t >++ { >++ gpregs mc_gpregs; >++ fpregs mc_fpregs; >++ int mc_flags; >++ int mc_pad; >++ ulong[8] mc_spare; >++ } >++ } >+ >+ // <ucontext.h> >+ enum UCF_SWAPPED = 0x00000001; >+--- ltsmaster/runtime/phobos/std/internal/math/gammafunction.d.orig 2019-04-20 23:21:36 UTC >++++ ltsmaster/runtime/phobos/std/internal/math/gammafunction.d >+@@ -1654,7 +1654,6 @@ real logmdigammaInverse(real y) >+ { >+ import std.numeric: findRoot; >+ enum maxY = logmdigamma(real.min_normal); >+- static assert(maxY > 0 && maxY <= real.max); >+ >+ if (y >= maxY) >+ { >diff --git c/lang/ldc/pkg-plist i/lang/ldc/pkg-plist >index b3cc42ec5630..50c299bb27e5 100644 >--- c/lang/ldc/pkg-plist >+++ i/lang/ldc/pkg-plist >@@ -14,12 +14,14 @@ include/d/core/exception.d > include/d/core/internal/abort.d > include/d/core/internal/arrayop.d > include/d/core/internal/convert.d >+include/d/core/internal/dassert.d > include/d/core/internal/hash.d > include/d/core/internal/parseoptions.d > include/d/core/internal/spinlock.d > include/d/core/internal/string.d > include/d/core/internal/traits.d > include/d/core/internal/utf.d >+include/d/core/lifetime.d > include/d/core/math.d > include/d/core/memory.d > include/d/core/runtime.d >@@ -46,9 +48,12 @@ include/d/core/stdc/tgmath.d > include/d/core/stdc/time.d > include/d/core/stdc/wchar_.d > include/d/core/stdc/wctype.d >+include/d/core/stdcpp/allocator.d > include/d/core/stdcpp/array.d > include/d/core/stdcpp/exception.d >+include/d/core/stdcpp/new_.d > include/d/core/stdcpp/string_view.d >+include/d/core/stdcpp/type_traits.d > include/d/core/stdcpp/typeinfo.d > include/d/core/stdcpp/xutility.d > include/d/core/sync/barrier.d >@@ -554,23 +559,23 @@ include/d/std/xml.d > include/d/std/zip.d > include/d/std/zlib.d > lib/libdruntime-ldc-debug-shared.so >-lib/libdruntime-ldc-debug-shared.so.2.0.84 >-lib/libdruntime-ldc-debug-shared.so.84 >+lib/libdruntime-ldc-debug-shared.so.2.0.85 >+lib/libdruntime-ldc-debug-shared.so.85 > lib/libdruntime-ldc-debug.a > lib/libdruntime-ldc-shared.so >-lib/libdruntime-ldc-shared.so.2.0.84 >-lib/libdruntime-ldc-shared.so.84 >+lib/libdruntime-ldc-shared.so.2.0.85 >+lib/libdruntime-ldc-shared.so.85 > lib/libdruntime-ldc.a > lib/libldc-jit-rt.a > lib/libldc-jit.so >-lib/libldc-jit.so.2.0.84 >-lib/libldc-jit.so.84 >+lib/libldc-jit.so.2.0.85 >+lib/libldc-jit.so.85 > lib/libphobos2-ldc-debug-shared.so >-lib/libphobos2-ldc-debug-shared.so.2.0.84 >-lib/libphobos2-ldc-debug-shared.so.84 >+lib/libphobos2-ldc-debug-shared.so.2.0.85 >+lib/libphobos2-ldc-debug-shared.so.85 > lib/libphobos2-ldc-debug.a > lib/libphobos2-ldc-shared.so >-lib/libphobos2-ldc-shared.so.2.0.84 >-lib/libphobos2-ldc-shared.so.84 >+lib/libphobos2-ldc-shared.so.2.0.85 >+lib/libphobos2-ldc-shared.so.85 > lib/libphobos2-ldc.a > @dir include/d/etc/c/zlib
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 237427
:
203847
|
203864
|
205239
|
205633
|
209422
|
210633
|
216494
|
217446