diff options
author | Sven Boemer <sbomer@gmail.com> | 2019-02-28 23:47:03 +0300 |
---|---|---|
committer | Marek Safar <marek.safar@gmail.com> | 2019-02-28 23:47:03 +0300 |
commit | 736ba73cec3340455bb40fe56b741d7558f0991f (patch) | |
tree | 114c267152ff77a1a9110698724fdd30ffbcd5d1 /external | |
parent | 1331119f9d7503b05807a35296a9637ee8e45a9d (diff) |
Set up arcade build for illink.sln (#475)
This uses arcade to bootstrap the dotnet cli, and enables optionally building illink.sln with arcade.
- `eng/dotnet.{sh/ps1}` replace `corebuild/dotnet.{sh/ps1}`, and bootstrap using arcade scripts
- References to the bootstrapping scripts have been updated
- Directory.Build.props and Directory.Build.targets import arcade for all SDK-style projects when `ArcadeBuild` is `true`
- The net46 build of ILLink.Tasks has been disabled to work around the lack of configuration/target-framework inference (due to cecil not using SDK projects yet). This makes it possible to run "dotnet pack" on the solution or to pack using arcade.
- Arcade versioning files have been introduced, and ILLink.Tasks always gets its version number from these, even when building with a plain .NET SDK (rather than the arcade SDK)
- Works around signing properties that are otherwise overridden due to cecil's nonstandard import order (it imports the arcade properties after setting its own project properties)
- Disables a warning that is an error in the more recent toolset used by arcade
- Re-orders some projects in illink.sln to work around build issues where solution configurations aren't always applied to child projects. This seems to build the dependent projects last, ensuring that they are built with the solution configuration.
Diffstat (limited to 'external')
-rw-r--r-- | external/Mono.Cecil.overrides | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/external/Mono.Cecil.overrides b/external/Mono.Cecil.overrides new file mode 100644 index 000000000..73e5fa4b4 --- /dev/null +++ b/external/Mono.Cecil.overrides @@ -0,0 +1,13 @@ +<Project> + + <PropertyGroup Condition=" '$(ArcadeBuild)' == 'true' "> + <NoWarn>$(NoWarn);0618</NoWarn> + <!-- Signing properties from cecil are overridden by Arcade + because cecil imports the .NET SDK (and hence Arcade) in a + nonstandard way, so set them again here. --> + <SignAssembly>true</SignAssembly> + <PublicSign>true</PublicSign> + <AssemblyOriginatorKeyFile>$(MSBuildThisFileDirectory)cecil/cecil.snk</AssemblyOriginatorKeyFile> + </PropertyGroup> + +</Project>
\ No newline at end of file |