From nobody Wed Oct 06 21:07:27 2021 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4D68E12D2223; Wed, 6 Oct 2021 21:07:31 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4HPn8f0chwz3FS7; Wed, 6 Oct 2021 21:07:29 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A63E626EE6; Wed, 6 Oct 2021 21:07:27 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 196L7RgI049980; Wed, 6 Oct 2021 21:07:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 196L7R6Q049979; Wed, 6 Oct 2021 21:07:27 GMT (envelope-from git) Date: Wed, 6 Oct 2021 21:07:27 GMT Message-Id: <202110062107.196L7R6Q049979@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Piotr Kubaj Subject: git: 756e364d8611 - main - lang/mono5.20: port to powerpc64 List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-main@freebsd.org X-BeenThere: dev-commits-ports-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: pkubaj X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 756e364d86114622cbb1b3b9e572e4c2e85f6cb6 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by pkubaj: URL: https://cgit.FreeBSD.org/ports/commit/?id=756e364d86114622cbb1b3b9e572e4c2e85f6cb6 commit 756e364d86114622cbb1b3b9e572e4c2e85f6cb6 Author: Piotr Kubaj AuthorDate: 2021-10-06 20:52:48 +0000 Commit: Piotr Kubaj CommitDate: 2021-10-06 20:52:48 +0000 lang/mono5.20: port to powerpc64 Same as lang/mono, except that BTLS is enabled. --- lang/mono5.20/Makefile | 8 ++++++- lang/mono5.20/files/patch-configure.ac | 28 +++++++++++++++++++++- .../files/patch-mono_utils_mono-sigcontext.h | 25 +++++++++++++++---- 3 files changed, 54 insertions(+), 7 deletions(-) diff --git a/lang/mono5.20/Makefile b/lang/mono5.20/Makefile index 19e3b733e85c..ec4d8be92ad9 100644 --- a/lang/mono5.20/Makefile +++ b/lang/mono5.20/Makefile @@ -13,7 +13,7 @@ COMMENT= Open source implementation of .NET Development Framework LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc +ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc powerpc64 BUILD_DEPENDS= p5-XML-Parser>=0:textproc/p5-XML-Parser \ bash:shells/bash \ @@ -65,6 +65,12 @@ PORTSCOUT= limit:^\d+\.\d+\.[1-9]\d* OPTIONS_SLAVE= MONOLITE .endif +.include + +.if ${ARCH:Mpowerpc*} +PLIST+= ${.CURDIR}/pkg-plist.powerpc +.endif + .include .if ${ARCH} == "aarch64" diff --git a/lang/mono5.20/files/patch-configure.ac b/lang/mono5.20/files/patch-configure.ac index 6e81b846c43a..b03bd39eca31 100644 --- a/lang/mono5.20/files/patch-configure.ac +++ b/lang/mono5.20/files/patch-configure.ac @@ -1,6 +1,6 @@ --- configure.ac.orig 2021-01-07 15:31:48 UTC +++ configure.ac -@@ -203,6 +203,12 @@ case "$host" in +@@ -203,6 +203,12 @@ libdl= libgc_threads=pthreads use_sigposix=yes @@ -13,3 +13,29 @@ has_dtrace=yes with_sgen_default_concurrent=yes ;; +@@ -4001,13 +4007,10 @@ + ;; + macppc-*-openbsd* | powerpc*-*-linux* | powerpc-*-openbsd* | \ + powerpc-*-sysv* | powerpc-*-darwin* | powerpc-*-netbsd* | \ +- powerpc-*-freebsd* | powerpc*-*-aix* | powerpc*-*-os400* ) ++ powerpc*-*-freebsd* | powerpc*-*-aix* | powerpc*-*-os400* ) + if test "x$ac_cv_sizeof_void_p" = "x8"; then + TARGET=POWERPC64; + CPPFLAGS="$CPPFLAGS -D__mono_ppc__ -D__mono_ppc64__" +- if ! (echo $CC | grep -q -- 'clang'); then +- CFLAGS="$CFLAGS -mminimal-toc" +- fi + else + TARGET=POWERPC; + CPPFLAGS="$CPPFLAGS -D__mono_ppc__" +@@ -4022,6 +4025,10 @@ + dnl we may hardcode 64-bit names at times, but we don't do 32-bit AIX, so + LIBC="libc.a(shr_64.o)" + INTL="libintl.a(libintl.so.8)" ++ ;; ++ freebsd*) ++ BTLS_SUPPORTED=yes ++ BTLS_PLATFORM=powerpc + ;; + linux*) + BTLS_SUPPORTED=yes diff --git a/lang/mono5.20/files/patch-mono_utils_mono-sigcontext.h b/lang/mono5.20/files/patch-mono_utils_mono-sigcontext.h index d021fe548ad4..a91a78ec32f8 100644 --- a/lang/mono5.20/files/patch-mono_utils_mono-sigcontext.h +++ b/lang/mono5.20/files/patch-mono_utils_mono-sigcontext.h @@ -1,9 +1,24 @@ --- mono/utils/mono-sigcontext.h.orig 2018-07-11 23:51:16 UTC +++ mono/utils/mono-sigcontext.h -@@ -460,6 +460,13 @@ typedef struct ucontext { - #define UCONTEXT_REG_SP(ctx) (((ucontext64_t*)(ctx))->uc_mcontext64->__ss.__sp) - #define UCONTEXT_REG_R0(ctx) (((ucontext64_t*)(ctx))->uc_mcontext64->__ss.__x [ARMREG_R0]) - #define UCONTEXT_GREGS(ctx) (&(((ucontext64_t*)(ctx))->uc_mcontext64->__ss.__x)) +@@ -363,10 +363,10 @@ + #elif defined(__FreeBSD__) + typedef ucontext_t os_ucontext; + +- #define UCONTEXT_REG_Rn(ctx, n) ((ctx)->uc_mcontext.mc_gpr [(n)]) +- #define UCONTEXT_REG_FPRn(ctx, n) ((ctx)->uc_mcontext.mc_fpreg [(n)]) +- #define UCONTEXT_REG_NIP(ctx) ((ctx)->uc_mcontext.mc_srr0) +- #define UCONTEXT_REG_LNK(ctx) ((ctx)->uc_mcontext.mc_lr) ++ #define UCONTEXT_REG_Rn(ctx, n) (((os_ucontext*)(ctx))->uc_mcontext.mc_gpr [(n)]) ++ #define UCONTEXT_REG_FPRn(ctx, n) (((os_ucontext*)(ctx))->uc_mcontext.mc_fpreg [(n)]) ++ #define UCONTEXT_REG_NIP(ctx) (((os_ucontext*)(ctx))->uc_mcontext.mc_srr0) ++ #define UCONTEXT_REG_LNK(ctx) (((os_ucontext*)(ctx))->uc_mcontext.mc_lr) + #elif defined(_AIX) + typedef ucontext_t os_ucontext; + +@@ -467,6 +467,13 @@ + #define UCONTEXT_REG_SP(ctx) (((ucontext64_t*)(ctx))->uc_mcontext64->__ss.__sp) + #define UCONTEXT_REG_R0(ctx) (((ucontext64_t*)(ctx))->uc_mcontext64->__ss.__x [ARMREG_R0]) + #define UCONTEXT_GREGS(ctx) (&(((ucontext64_t*)(ctx))->uc_mcontext64->__ss.__x)) +#elif defined(__FreeBSD__) +#include + /* https://lists.freebsd.org/pipermail/freebsd-arm/2017-February/015611.html */ @@ -13,4 +28,4 @@ + #define UCONTEXT_GREGS(ctx) (&(((ucontext_t*)(ctx))->uc_mcontext.mc_gpregs.gp_x)) #else #include - #define UCONTEXT_REG_PC(ctx) (((ucontext_t*)(ctx))->uc_mcontext.pc) + #define UCONTEXT_REG_PC(ctx) (((ucontext_t*)(ctx))->uc_mcontext.pc)