It now includes the shared framework 'name' (NuGet package name) in the installer. In this case, the installer is called '.NET Core Shared Framework (NETStandard.Library 1.0.0-*)'
This causes three pkg files to be produced:
* A component pkg for the shared framework.
* A component pkg for the shared host.
* A product archive which includes the above two components.
The product archive also needs a distribution.xml file which contains
metadata about the package (name, title, images, etc.).
The installer for the "SDK" itself is still using logic implemented in
package-osx.sh. We should move this logic into the build target as well,
but we may want to wait until the CLI is using the shared framework to do so.
- Use Crossgen's Ready To Run mode on all of the managed assemblies
that make up the shared framework.
- Upgrade the version of the shared framework to match what is used
in the rest of CLI (see the comment in SharedFrameworkTargets.cs to
understand why this is needed).
- Remove the IL mscorlib.dll image, since the Crossgen'd image is
already published.
Fixesdotnet/corefx#6753
The shared framework packages will want to install to the same root
directory as the "dotnet" package itself. Augment the package_tool
script to look for a json key named `install_root` and use that if
specificed, falling back to `/usr/share/$PACKAGE_NAME` when it is not
present.
Ideally in the project.json for the shared host we would just list the
actual package that holds the shared host, instead of all of
NetStandard.Library, but doing some leads to compliation errors, since
publish wants to include a compile step that has a generated
AssemblyAttributes file which references types like System.String.
- Add libssl-dev dependency to DockerFile, because the package upgrade test still depend on this. It can be removed once a newer package without libssl-dev dependency is uploaded.
- Check pre-reqs in the package script.
dotnet-build will produce a deps file for portable builds, and will now
create "runnable" outputs for RID-less targets
the outputs won't actually be runnable today because we need corehost
changes and to generate a deps.json file for corehost to use.