2021-12-05 18:24:01 +00:00
|
|
|
# Description
|
|
|
|
APKBUILD for dotnet 3.1.
|
|
|
|
|
|
|
|
# How to build
|
|
|
|
If built for the first time, make sure that _bootstrap=true, as build
|
|
|
|
needs either Microsoft bootstrap or repo's bootstrap to build
|
|
|
|
* abuild snapshot
|
|
|
|
* abuild -r
|
|
|
|
If you built with _bootstrap=true, push pkgrel by one and rebuild with
|
|
|
|
_bootstrap=false as build with bootstrap creates packages that confuse
|
|
|
|
dependencies between dotnet-3.1 and dotnet-5.0
|
|
|
|
|
|
|
|
# Known issues
|
|
|
|
* Build oddities here and there that the patches fix. In the process of
|
|
|
|
upstreaming to clear them out
|
|
|
|
* A custom version of snapshot is used because Darc considers the build
|
|
|
|
directory as the top-most git directory. Thus, an error occurs when one
|
|
|
|
attempts a build within aports (or other git repos). There's likely
|
|
|
|
a way to adjust this, but for now this will do.
|
|
|
|
|
|
|
|
|
|
|
|
# Patch notes
|
|
|
|
|
|
|
|
## coreclr_fix-build-on-Alpine-edge-45352.patch
|
|
|
|
Fixes a build error for Alpine Linux. It has since been fixed in dotnet-5.0,
|
|
|
|
see issue dotnet/runtime 45352.
|
|
|
|
## corefx_fix-build-clang10.patch
|
|
|
|
Fixes a build error for clang 10
|
|
|
|
## core-setup_rid-plat-generation-on-alpine-fix.patch
|
|
|
|
<dotnet/core-setup>/src/corehost/build.sh generates wrong plat_rid on Alpine
|
|
|
|
Generated RID is expected to be alpine.x.xx-xx, while the computed RID
|
|
|
|
is linux-musl-xxx. This patches it by matching what's expected.
|
|
|
|
## coreclr_non-portable-distrorid-fix-alpine.patch
|
|
|
|
<dotnet/coreclr>/init-distro-id.sh generates incorrect DistroRid on Alpine.
|
|
|
|
While the expected DistroRid (alpine-x.xx-xxx) should only include macro
|
|
|
|
version, init-distro-id.sh includes the micro version. This patches it
|
|
|
|
to cut off the trailing subversion off of VERSION_ID by treating it
|
|
|
|
the same way RHEL's VERSION_ID is treated.
|
|
|
|
## installer_generate-layout-core-setup-blob-path-fix.patch
|
|
|
|
<dotnet/core-setup> blobs are written to $builddir/artifacts/obj/x64/Release/
|
|
|
|
blobs/Runtime/3.1.20-alpine.3.15 while installer expects them in 3.1.20.
|
|
|
|
This patches <dotnet/installer>/src/redist/targets/GenerateLayout.targets
|
|
|
|
to point to actual path.
|
|
|
|
## applications-insights_fix-net40-location.patch
|
|
|
|
Because paths on Linux are case sensitive. Applications insights looks
|
|
|
|
for <dotnet/applications-insights>/src/Core/Managed/net40 in net40
|
|
|
|
while the repo has a Net40. Patch moves whatever is in Net40 to net40.
|
|
|
|
## build_coreclr-tools-path.patch
|
|
|
|
Various steps in the build process looks for ilasm in ildasm in
|
|
|
|
$builddir/src/dotnet-3.1/Tools/source-built/coreclr-tools/x64 while they are
|
|
|
|
built to $builddir/src/dotnet-3.1/Tools/source-built/coreclr-tools.
|
|
|
|
This patches <dotnet/source-build> to look for ilasm and ildasm
|
|
|
|
in correct path.
|
|
|
|
## build_darc-fix-alpine.patch
|
|
|
|
Darc has a segmentation fault on Alpine due to not chosing the correct
|
|
|
|
binary architecture. This patch deletes all the wrong ones so that it
|
|
|
|
is forced to chose the correct one. See issue dotnet/source-build #1868
|
2021-12-05 18:27:45 +00:00
|
|
|
## sdk_telemetry-optout.patch
|
|
|
|
Optouts of telemetry gathering
|
|
|
|
|