blob: f00e5aeb444bdd3f7caf0bedfd596072b79198be (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
PORTNAME= dotnet
DISTVERSIONPREFIX= v
DISTVERSION= ${DOTNETVERSION}.6
PORTREVISION= 1
CATEGORIES= lang devel
MASTER_SITES= https://github.com/dotnet/dotnet/releases/download/${DISTVERSIONPREFIX}${DISTVERSION}/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
LICENSE= MIT
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
USES= autoreconf:build gssapi:mit llvm:noexport nodejs pkgconfig \
python:build,3.9+ shebangfix ssl
USE_GITHUB= yes
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}
BOOTSTRAP_DOTNETVERSION= 8.0
BOOTSTRAP_SDKVERSION= ${BOOTSTRAP_DOTNETVERSION}.100
BOOTSTRAP_SDKVERSIONSUFFIX= -rtm.23551.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= 8.0
SDKVERSION= ${DOTNETVERSION}.106
SDKVERSIONSUFFIX= -servicing.24272.10
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}${PREFIX}/dotnet
${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ${WRKSRC}/artifacts/${DOTNET_ARCH}/Release/${SDK_DISTNAME}${EXTRACT_SUFX} -C ${STAGEDIR}${PREFIX}/dotnet ${EXTRACT_AFTER_ARGS}
${ELFCTL} -e +noaslr ${STAGEDIR}${PREFIX}/dotnet/dotnet
${STRIP_CMD} ${STAGEDIR}${PREFIX}/dotnet/dotnet
${STRIP_CMD} ${STAGEDIR}${PREFIX}/dotnet/sdk/${SDKVERSION}/AppHostTemplate/apphost
${STRIP_CMD} ${STAGEDIR}${PREFIX}/dotnet/packs/Microsoft.NETCore.App.Host.freebsd-${DOTNET_ARCH}/${DISTVERSION}/runtimes/freebsd-${DOTNET_ARCH}/native/apphost
${STRIP_CMD} ${STAGEDIR}${PREFIX}/dotnet/packs/Microsoft.NETCore.App.Host.freebsd-${DOTNET_ARCH}/${DISTVERSION}/runtimes/freebsd-${DOTNET_ARCH}/native/singlefilehost
${FIND} ${STAGEDIR}${PREFIX}/dotnet -name "*.so" -exec ${STRIP_CMD} -s "{}" ";"
${RLN} ${STAGEDIR}${PREFIX}/dotnet/dotnet ${STAGEDIR}${PREFIX}/bin/dotnet
bootstrap-makesum:
cd ${WRKSRC}/artifacts/${DOTNET_ARCH}/Release && sha256 ${SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}
@${ECHO_CMD} -n "SIZE (${SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}) = "
@${STAT} -f %z ${WRKSRC}/artifacts/${DOTNET_ARCH}/Release/${SOURCEBUILT_ARTIFACTS_DISTNAME}${EXTRACT_SUFX}
@cd ${WRKSRC}/artifacts/${DOTNET_ARCH}/Release && sha256 ${SDK_DISTNAME}${EXTRACT_SUFX}
@${ECHO_CMD} -n "SIZE (${SDK_DISTNAME}${EXTRACT_SUFX}) = "
@${STAT} -f %z ${WRKSRC}/artifacts/${DOTNET_ARCH}/Release/${SDK_DISTNAME}${EXTRACT_SUFX}
@${ECHO_CMD}
.include <bsd.port.post.mk>
|