diff options
-rw-r--r-- | lang/dotnet/Makefile | 49 | ||||
-rw-r--r-- | lang/dotnet8/Makefile | 120 |
2 files changed, 44 insertions, 125 deletions
diff --git a/lang/dotnet/Makefile b/lang/dotnet/Makefile index d467f22cfbce..b746ef87cbee 100644 --- a/lang/dotnet/Makefile +++ b/lang/dotnet/Makefile @@ -1,5 +1,6 @@ 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 \ LOCAL/arrowd/dotnet/:bootstrap @@ -35,26 +36,28 @@ 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}.110 -BOOTSTRAP_SDKVERSIONSUFFIX= -servicing.25421.1 +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} \ @@ -72,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 @@ -109,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} diff --git a/lang/dotnet8/Makefile b/lang/dotnet8/Makefile index f932757d464a..c63474b8e068 100644 --- a/lang/dotnet8/Makefile +++ b/lang/dotnet8/Makefile @@ -1,119 +1,25 @@ -PORTNAME= dotnet DISTVERSION= ${DOTNETVERSION}.20 -CATEGORIES= lang devel -MASTER_SITES= https://github.com/dotnet/dotnet/releases/download/${GH_TAGNAME}/release.json?dummy=/:dotnetmanifest \ - LOCAL/arrowd/dotnet/:bootstrap PKGNAMESUFFIX= 8 -DISTFILES= release.json-${PORTVERSION}:dotnetmanifest \ - ${BOOTSTRAP_SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}:bootstrap \ - ${BOOTSTRAP_SDK_DISTNAME}${EXTRACT_SUFX}:bootstrap -DIST_SUBDIR= dotnet -EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} -MAINTAINER= arrowd@FreeBSD.org -COMMENT= Open-source developer platform and a cross-platform runtime for cloud, mobile, desktop, and IoT apps -WWW= https://dot.net +SHEBANG_FILES= src/source-build-externals/src/azure-activedirectory-identitymodel-extensions-for-dotnet/updateAssemblyInfo.sh -LICENSE= MIT +DOTNET_ENV= PATH=${PATH}:${LLVM_PREFIX}/bin -ONLY_FOR_ARCHS= aarch64 amd64 - -BUILD_DEPENDS= bash:shells/bash \ - cmake:devel/cmake-core \ - git:devel/git \ - ggrep:textproc/gnugrep \ - terminfo-db>0:misc/terminfo-db -LIB_DEPENDS= libicuuc.so:devel/icu \ - libinotify.so:devel/libinotify \ - libunwind.so:devel/libunwind -RUN_DEPENDS= terminfo-db>0:misc/terminfo-db \ - dotnet:lang/dotnet-host - -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 \ - src/source-build-externals/src/azure-activedirectory-identitymodel-extensions-for-dotnet/updateAssemblyInfo.sh - -BINARY_ALIAS= grep=${LOCALBASE}/bin/ggrep -DOTNET_ENV= PYTHON=${PYTHON_CMD} PATH=${PATH}:${LLVM_PREFIX}/bin - -BOOTSTRAP_DOTNETVERSION= 8.0 -BOOTSTRAP_SDKVERSION= ${BOOTSTRAP_DOTNETVERSION}.120 -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} +BOOTSTRAP_DOTNETVERSION= 8.0 +BOOTSTRAP_SDKVERSION= ${BOOTSTRAP_DOTNETVERSION}.120 +BOOTSTRAP_SDKVERSIONSUFFIX= -servicing.25421.1 DOTNETVERSION= 8.0 SDKVERSION= ${DOTNETVERSION}.120 SDKVERSIONSUFFIX= -servicing.25323.1 -SOURCEBUILT_ARTIFACTS_DISTNAME?=Private.SourceBuilt.Artifacts.${SDKVERSION}${SDKVERSIONSUFFIX}.freebsd.13-${DOTNET_ARCH} -SDK_DISTNAME= dotnet-sdk-${SDKVERSION}-freebsd-${DOTNET_ARCH} -DOTNET_ARCH= ${ARCH:S|amd64|x64|:C|aarch64|arm64|} - -PLIST_SUB= DOTNET_ARCH=${DOTNET_ARCH} FULL_DOTNETVERSION=${PORTVERSION} \ - DOTNETVERSION=${DOTNETVERSION} \ - SDKVERSION=${SDKVERSION} SDKVERSIONSUFFIX=${SDKVERSIONSUFFIX} \ - BOOTSTRAP_SDKVERSION=${BOOTSTRAP_SDKVERSION} - -.include <bsd.port.pre.mk> - -.if ${OSVERSION} >= 1400000 -LIB_DEPENDS+= libcrypto.so.111:misc/compat13x -.endif - -.if ${ARCH} == aarch64 -BROKEN= "crossgen2" exited with code 139 -.endif - -post-extract: - ${CP} ${DISTDIR}/${DIST_SUBDIR}/release.json-${PORTVERSION} ${WRKSRC}/release.json - - @${MKDIR} ${WRKDIR}/packages - ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} \ - ${DISTDIR}/${DIST_SUBDIR}/${BOOTSTRAP_SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX} \ - -C ${WRKDIR}/packages \ - ${EXTRACT_AFTER_ARGS} - - @${MKDIR} ${WRKDIR}/bootstrap_sdk - ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} \ - ${DISTDIR}/${DIST_SUBDIR}/${BOOTSTRAP_SDK_DISTNAME}${EXTRACT_SUFX} \ - -C ${WRKDIR}/bootstrap_sdk \ - ${EXTRACT_AFTER_ARGS} - - ${ELFCTL} -e +noaslr ${WRKDIR}/bootstrap_sdk/dotnet - -do-build: - cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${DOTNET_ENV} ./build.sh \ - --release-manifest release.json \ - --clean-while-building \ - --with-sdk ${WRKDIR}/bootstrap_sdk \ - --with-packages ${WRKDIR}/packages \ - -- \ - -maxcpucount:${MAKE_JOBS_NUMBER} - -do-install: - @${MKDIR} ${STAGEDIR}${DATADIR} - ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${WRKSRC}/artifacts/${DOTNET_ARCH}/Release/${SDK_DISTNAME}${EXTRACT_SUFX} -C ${STAGEDIR}${DATADIR} ${EXTRACT_AFTER_ARGS} - ${RM} -r ${STAGEDIR}${DATADIR}/packs/NETStandard.Library.Ref - - ${STRIP_CMD} ${STAGEDIR}${DATADIR}/sdk/${SDKVERSION}/AppHostTemplate/apphost - ${STRIP_CMD} ${STAGEDIR}${DATADIR}/packs/Microsoft.NETCore.App.Host.freebsd-${DOTNET_ARCH}/${DISTVERSION}/runtimes/freebsd-${DOTNET_ARCH}/native/apphost - ${STRIP_CMD} ${STAGEDIR}${DATADIR}/packs/Microsoft.NETCore.App.Host.freebsd-${DOTNET_ARCH}/${DISTVERSION}/runtimes/freebsd-${DOTNET_ARCH}/native/singlefilehost - ${FIND} ${STAGEDIR}${DATADIR} -name "*.so" -exec ${STRIP_CMD} -s "{}" ";" - -bootstrap-makesum: - cd ${WRKSRC}/artifacts/${DOTNET_ARCH}/Release && sha256 ${SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX} - @${ECHO_CMD} -n "SIZE (${DIST_SUBDIR}/${SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}) = " - @${STAT} -f %z ${WRKSRC}/artifacts/${DOTNET_ARCH}/Release/${SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX} +SDK_RID= freebsd-${DOTNET_ARCH} - @cd ${WRKSRC}/artifacts/${DOTNET_ARCH}/Release && sha256 ${SDK_DISTNAME}${EXTRACT_SUFX} - @${ECHO_CMD} -n "SIZE (${DIST_SUBDIR}/${SDK_DISTNAME}${EXTRACT_SUFX}) = " - @${STAT} -f %z ${WRKSRC}/artifacts/${DOTNET_ARCH}/Release/${SDK_DISTNAME}${EXTRACT_SUFX} +DOTNET_BUILD_SH_EXTRA_FLAGS= +ARTIFACTS_SUBDIR= /artifacts/${DOTNET_ARCH}/Release - @${ECHO_CMD} +MASTERDIR= ${.CURDIR}/../dotnet +PATCHDIR= ${.CURDIR}/files +DISTINFO_FILE= ${.CURDIR}/distinfo +PLIST= ${.CURDIR}/pkg-plist -.include <bsd.port.post.mk> +.include "${MASTERDIR}/Makefile" |