summaryrefslogtreecommitdiff
path: root/lang/dotnet/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'lang/dotnet/Makefile')
-rw-r--r--lang/dotnet/Makefile55
1 files changed, 35 insertions, 20 deletions
diff --git a/lang/dotnet/Makefile b/lang/dotnet/Makefile
index a832cab68c5f..b746ef87cbee 100644
--- a/lang/dotnet/Makefile
+++ b/lang/dotnet/Makefile
@@ -1,8 +1,9 @@
PORTNAME= dotnet
-DISTVERSION= ${DOTNETVERSION}.9
+DISTVERSION?= ${DOTNETVERSION}.9
+PORTREVISION?= 0
CATEGORIES= lang devel
MASTER_SITES= https://github.com/dotnet/dotnet/releases/download/${GH_TAGNAME}/release.json?dummy=/:dotnetmanifest \
- https://github.com/sec/dotnet-core-freebsd-source-build/releases/download/${BOOTSTRAP_SDKVERSION}-vmr/:bootstrap
+ LOCAL/arrowd/dotnet/:bootstrap
DISTFILES= release.json-${PORTVERSION}:dotnetmanifest \
${BOOTSTRAP_SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}:bootstrap \
${BOOTSTRAP_SDK_DISTNAME}${EXTRACT_SUFX}:bootstrap
@@ -35,25 +36,29 @@ USES= autoreconf:build gssapi:mit llvm:noexport pkgconfig \
USE_GITHUB= yes
GH_TAGNAME= v${SDKVERSION}
-SHEBANG_FILES= src/diagnostics/src/Tools/dotnet-trace/*.sh
+SHEBANG_FILES+= src/diagnostics/src/Tools/dotnet-trace/*.sh
BINARY_ALIAS= grep=${LOCALBASE}/bin/ggrep
-DOTNET_ENV= PYTHON=${PYTHON_CMD}
+DOTNET_ENV+= PYTHON=${PYTHON_CMD}
-BOOTSTRAP_DOTNETVERSION= 9.0
-BOOTSTRAP_SDKVERSION= ${BOOTSTRAP_DOTNETVERSION}.103
-BOOTSTRAP_SDKVERSIONSUFFIX= -servicing.25071.1
-BOOTSTRAP_SOURCEBUILT_ARTIFACTS_DISTNAME= Private.SourceBuilt.Artifacts.${BOOTSTRAP_SDKVERSION}${BOOTSTRAP_SDKVERSIONSUFFIX}.freebsd-${DOTNET_ARCH}
+BOOTSTRAP_DOTNETVERSION?= 9.0
+BOOTSTRAP_SDKVERSION?= ${BOOTSTRAP_DOTNETVERSION}.110
+BOOTSTRAP_SDKVERSIONSUFFIX?= -servicing.25421.1
+BOOTSTRAP_SOURCEBUILT_ARTIFACTS_DISTNAME= Private.SourceBuilt.Artifacts.${BOOTSTRAP_SDKVERSION}${BOOTSTRAP_SDKVERSIONSUFFIX}.freebsd.13-${DOTNET_ARCH}
BOOTSTRAP_SDK_DISTNAME= dotnet-sdk-${BOOTSTRAP_SDKVERSION}-freebsd-${DOTNET_ARCH}
-DOTNETVERSION= 9.0
-SDKVERSION= ${DOTNETVERSION}.110
-SDKVERSIONSUFFIX= -servicing.25420.3
+DOTNETVERSION?= 9.0
+SDKVERSION?= ${DOTNETVERSION}.110
+SDKVERSIONSUFFIX?= -servicing.25420.3
SDKSERVICESUFFIX= -servicing.25421.1
MANIFESTSUFFIX= ${DOTNETVERSION}.100
-SDK_DISTNAME= dotnet-sdk-${SDKVERSION}-${SDK_RID}
-SDK_RID= freebsd.${_OSVERSION_MAJOR}-${DOTNET_ARCH}
DOTNET_ARCH= ${ARCH:S|amd64|x64|:C|aarch64|arm64|}
+SDK_DISTNAME?= dotnet-sdk-${SDKVERSION}-${SDK_RID}
+SDK_RID?= freebsd.${_OSVERSION_MAJOR}-${DOTNET_ARCH}
+DOTNET_BUILD_SH_EXTRA_FLAGS?= --source-build
+
+ARTIFACTS_SUBDIR?= /artifacts/assets/Release
+SOURCEBUILT_ARTIFACTS_DISTNAME?=Private.SourceBuilt.Artifacts.${SDKVERSION}${SDKSERVICESUFFIX}.freebsd-${DOTNET_ARCH}
PLIST_SUB= DOTNET_ARCH=${DOTNET_ARCH} FULL_DOTNETVERSION=${DISTVERSION} \
DOTNETVERSION=${DOTNETVERSION} SDKVERSION=${SDKVERSION} \
@@ -70,7 +75,11 @@ PLIST_SUB+= NONPORTABLE=
.include <bsd.port.pre.mk>
-.if ${SSL_DEFAULT} == base
+.if ${DOTNETVERSION:R} == 8 && ${ARCH} == aarch64
+BROKEN= "crossgen2" exited with code 139
+.endif
+
+.if ${SSL_DEFAULT} == base && ${DOTNETVERSION:R} > 8
EXTRA_PATCHES= ${PATCHDIR}/extra-patch-base-openssl
.endif
@@ -107,31 +116,37 @@ do-build:
--clean-while-building \
--with-sdk ${WRKDIR}/bootstrap_sdk \
--with-packages ${WRKDIR}/packages \
- --source-build \
+ ${DOTNET_BUILD_SH_EXTRA_FLAGS} \
-- \
-maxcpucount:${MAKE_JOBS_NUMBER} \
${PORTABLE_BUILD_FLAG}
do-install:
@${MKDIR} ${STAGEDIR}${DATADIR}
- ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${WRKSRC}/artifacts/assets/Release/${SDK_DISTNAME}${EXTRACT_SUFX} -C ${STAGEDIR}${DATADIR} ${EXTRACT_AFTER_ARGS}
+ ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${WRKSRC}${ARTIFACTS_SUBDIR}/${SDK_DISTNAME}${EXTRACT_SUFX} -C ${STAGEDIR}${DATADIR} ${EXTRACT_AFTER_ARGS}
+.if ${DOTNETVERSION:R} == 8
+ ${RM} -r ${STAGEDIR}${DATADIR}/packs/NETStandard.Library.Ref
+.else
${FIND} ${WRKSRC}/artifacts/packages/Release -name "*freebsd*.nupkg" -exec \
${INSTALL_DATA} {} ${STAGEDIR}${DATADIR}/library-packs/ \;
+.endif
${STRIP_CMD} ${STAGEDIR}${DATADIR}/sdk/${SDKVERSION}/AppHostTemplate/apphost
${STRIP_CMD} ${STAGEDIR}${DATADIR}/packs/Microsoft.NETCore.App.Host.${SDK_RID}/${DISTVERSION}/runtimes/${SDK_RID}/native/apphost
${STRIP_CMD} ${STAGEDIR}${DATADIR}/packs/Microsoft.NETCore.App.Host.${SDK_RID}/${DISTVERSION}/runtimes/${SDK_RID}/native/singlefilehost
+.if ${DOTNETVERSION:R} > 8
${STRIP_CMD} ${STAGEDIR}${DATADIR}/packs/runtime.${SDK_RID}.Microsoft.DotNet.ILCompiler/${DISTVERSION}/tools/ilc
+.endif
${FIND} ${STAGEDIR}${DATADIR} -name "*.so" -exec ${STRIP_CMD} -s "{}" ";"
bootstrap-makesum:
- cd ${WRKSRC}/artifacts/assets/Release && sha256 ${SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}
+ cd ${WRKSRC}${ARTIFACTS_SUBDIR} && sha256 ${SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}
@${ECHO_CMD} -n "SIZE (${DIST_SUBDIR}/${SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}) = "
- @${STAT} -f %z ${WRKSRC}/artifacts/assets/Release/${SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}
+ @${STAT} -f %z ${WRKSRC}${ARTIFACTS_SUBDIR}/${SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}
- @cd ${WRKSRC}/artifacts/assets/Release && sha256 ${SDK_DISTNAME}${EXTRACT_SUFX}
+ @cd ${WRKSRC}${ARTIFACTS_SUBDIR} && sha256 ${SDK_DISTNAME}${EXTRACT_SUFX}
@${ECHO_CMD} -n "SIZE (${DIST_SUBDIR}/${SDK_DISTNAME}${EXTRACT_SUFX}) = "
- @${STAT} -f %z ${WRKSRC}/artifacts/assets/Release/${SDK_DISTNAME}${EXTRACT_SUFX}
+ @${STAT} -f %z ${WRKSRC}${ARTIFACTS_SUBDIR}/${SDK_DISTNAME}${EXTRACT_SUFX}
@${ECHO_CMD}