summaryrefslogtreecommitdiff
path: root/lang/dotnet/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'lang/dotnet/Makefile')
-rw-r--r--lang/dotnet/Makefile79
1 files changed, 49 insertions, 30 deletions
diff --git a/lang/dotnet/Makefile b/lang/dotnet/Makefile
index b34d8537baf5..b746ef87cbee 100644
--- a/lang/dotnet/Makefile
+++ b/lang/dotnet/Makefile
@@ -1,10 +1,9 @@
PORTNAME= dotnet
-DISTVERSIONPREFIX= v
-DISTVERSION= ${DOTNETVERSION}.6
-PORTREVISION= 1
+DISTVERSION?= ${DOTNETVERSION}.9
+PORTREVISION?= 0
CATEGORIES= lang devel
-MASTER_SITES= https://github.com/dotnet/dotnet/releases/download/${DISTVERSIONPREFIX}${DISTVERSION}/release.json?dummy=/:dotnetmanifest \
- https://github.com/sec/dotnet-core-freebsd-source-build/releases/download/${BOOTSTRAP_SDKVERSION}-vmr/:bootstrap
+MASTER_SITES= https://github.com/dotnet/dotnet/releases/download/${GH_TAGNAME}/release.json?dummy=/:dotnetmanifest \
+ LOCAL/arrowd/dotnet/:bootstrap
DISTFILES= release.json-${PORTVERSION}:dotnetmanifest \
${BOOTSTRAP_SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}:bootstrap \
${BOOTSTRAP_SDK_DISTNAME}${EXTRACT_SUFX}:bootstrap
@@ -35,34 +34,36 @@ USES= autoreconf:build gssapi:mit llvm:noexport pkgconfig \
python:build,3.9+ shebangfix ssl
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}
-
-BOOTSTRAP_DOTNETVERSION= 9.0
-BOOTSTRAP_SDKVERSION= ${BOOTSTRAP_DOTNETVERSION}.103
-BOOTSTRAP_SDKVERSIONSUFFIX= -servicing.25071.1
-BOOTSTRAP_SDK_RID= freebsd-${DOTNET_ARCH}
-BOOTSTRAP_SOURCEBUILT_ARTIFACTS_DISTNAME= Private.SourceBuilt.Artifacts.${BOOTSTRAP_SDKVERSION}${BOOTSTRAP_SDKVERSIONSUFFIX}.${BOOTSTRAP_SDK_RID}
-BOOTSTRAP_SDK_DISTNAME= dotnet-sdk-${BOOTSTRAP_SDKVERSION}-${BOOTSTRAP_SDK_RID}
-
-DOTNETVERSION= 9.0
-SDKVERSION= ${DOTNETVERSION}.107
-SDKVERSIONSUFFIX= -servicing.25267.1
-SDKSERVICESUFFIX= -servicing.25270.1
-LIBPACKSUFFIX= -servicing.25266.13
+DOTNET_ENV+= PYTHON=${PYTHON_CMD}
+
+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
+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
-PLIST_SUB= DOTNET_ARCH=${DOTNET_ARCH} FULL_DOTNETVERSION=${PORTVERSION} \
+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} \
SDK_RID=${SDK_RID} SDKVERSIONSUFFIX=${SDKVERSIONSUFFIX} \
- SDKSERVICESUFFIX=${SDKSERVICESUFFIX} MANIFESTSUFFIX=${MANIFESTSUFFIX} \
- LIBPACKSUFFIX=${LIBPACKSUFFIX}
+ SDKSERVICESUFFIX=${SDKSERVICESUFFIX} MANIFESTSUFFIX=${MANIFESTSUFFIX}
.if defined(DOTNET_PORTABLE)
SDK_RID= freebsd-${DOTNET_ARCH}
@@ -74,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
@@ -111,24 +116,38 @@ 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}/dotnet
${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 "{}" ";"
- ${RLN} ${STAGEDIR}${DATADIR}/dotnet ${STAGEDIR}${PREFIX}/bin/dotnet
+bootstrap-makesum:
+ 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_SUBDIR}/${SOURCEBUILT_ARTIFACTS_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_SUBDIR}/${SDK_DISTNAME}${EXTRACT_SUFX}
+
+ @${ECHO_CMD}
.include <bsd.port.post.mk>