Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Launch Crossgen2 via explicitly specified .NET host #15529

Merged
merged 22 commits into from
Feb 19, 2021
Merged
Show file tree
Hide file tree
Changes from 14 commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
202be40
Launch Crossgen2 via explicitly specified .NET host
trylek Jan 27, 2021
2720cc5
Address David's PR feedback
trylek Jan 28, 2021
082f9c1
Fix condition for PDB generation
trylek Feb 11, 2021
017509e
Make error messages localizable per Anton's PR feedback
trylek Feb 12, 2021
936b4c5
More PR feedback, resolve against current master
trylek Feb 12, 2021
7129753
Address Anton's PR feedback
trylek Feb 12, 2021
799cd82
Quote Crossgen2Tool in GenerateCommandLineCommands
trylek Feb 12, 2021
37c215e
Add empty string check to Crossgen2IsVersion5
trylek Feb 12, 2021
df4262c
Put IsVersion5 parsing in PrepareR2RC in sync with RunR2RC
trylek Feb 12, 2021
4e7d0da
Don't pass EmitSymbols / output PDB path to CG1
trylek Feb 12, 2021
8a2864a
Remove inadvertently added temporary file
trylek Feb 13, 2021
4620143
Fix PDB publishing for CG2 6.0 per Anton's PR feedback
trylek Feb 13, 2021
883c098
Fix publishing PDB / PerfMap for composite R2R image
trylek Feb 13, 2021
e87898c
One more fix for composite PDB publishing per Anton's suggestion
trylek Feb 13, 2021
65c52af
More Anton's PR feedback and other fixes
trylek Feb 14, 2021
0370cd3
Fix error message per Anton's feedback, fix PDB / PerfMap paths
trylek Feb 15, 2021
7f95240
Fix interpolated string per Anton's PR feedback
trylek Feb 16, 2021
ddb554f
Hotfix perfmap file name for .NET6 Preview1 version of Crossgen2
trylek Feb 17, 2021
4faf47b
Fix perfmap name for the composite case
trylek Feb 17, 2021
4c9bb8c
Add Patch check to properly set up PerfMap path for CG2 Preview1/2
trylek Feb 18, 2021
6a4d083
Restore inadvertently removed UTF8 BOM marker
trylek Feb 19, 2021
8e26682
Keep support for JitPath in .NET 6 CG2 to simplify the transition
trylek Feb 19, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions src/Tasks/Common/MetadataKeys.cs
Original file line number Diff line number Diff line change
Expand Up @@ -112,12 +112,15 @@ internal static class MetadataKeys
public const string Aliases = "Aliases";

// ReadyToRun
public const string DotNetHostPath = "DotNetHostPath";
public const string JitPath = "JitPath";
public const string TargetOS = "TargetOS";
public const string TargetArch = "TargetArch";
public const string DiaSymReader = "DiaSymReader";
public const string CreatePDBCommand = "CreatePDBCommand";
public const string OutputR2RImage = "OutputR2RImage";
public const string OutputPDBImage = "OutputPDBImage";
public const string EmitSymbols = "EmitSymbols";
public const string IsVersion5 = "IsVersion5";
}
}
52 changes: 52 additions & 0 deletions src/Tasks/Common/Resources/Strings.resx
Original file line number Diff line number Diff line change
Expand Up @@ -702,4 +702,56 @@ The following are names of parameters or literal values and should not be transl
<value>NETSDK1149: A referenced assembly was compiled using a newer version of Microsoft.Windows.SDK.NET.dll. Please update to a newer .NET SDK in order to reference this assembly.</value>
<comment>{StrBegin="NETSDK1149: "}</comment>
</data>
<data name="CrossgenToolMissingInPDBCompilationMode" xml:space="preserve">
<value>NETSDK1150: CrossgenTool not specified in PDB compilation mode.</value>
<comment>{StrBegin="NETSDK1150: "}</comment>
</data>
<data name="Crossgen2ToolMissingWhenUseCrossgen2IsSet" xml:space="preserve">
<value>NETSDK1151: Crossgen2Tool must be specified when UseCrossgen2 is set to true.</value>
<comment>{StrBegin="NETSDK1151: "}</comment>
</data>
<data name="Crossgen2ToolExecutableNotFound" xml:space="preserve">
<value>NETSDK1152: Crossgen2Tool executable '{0}' not found.</value>
<comment>{StrBegin="NETSDK1152: "}</comment>
</data>
<data name="DotNetHostExecutableNotFound" xml:space="preserve">
<value>NETSDK1153: .NET host executable '{0}' not found.</value>
<comment>{StrBegin="NETSDK1153: "}</comment>
</data>
<data name="JitLibraryNotFound" xml:space="preserve">
<value>NETSDK1154: JIT library '{0}' not found.</value>
<comment>{StrBegin="NETSDK1154: "}</comment>
</data>
<data name="Crossgen2MissingRequiredMetadata" xml:space="preserve">
<value>NETSDK1155: Required '{0}' metadata missing on Crossgen2Tool item.</value>
<comment>{StrBegin="NETSDK1155: "}</comment>
</data>
<data name="CrossgenToolMissingWhenUseCrossgen2IsNotSet" xml:space="preserve">
<value>NETSDK1156: CrossgenTool must be specified when UseCrossgen2 is set to false.</value>
<comment>{StrBegin="NETSDK1156: "}</comment>
</data>
<data name="CrossgenToolExecutableNotFound" xml:space="preserve">
<value>NETSDK1157: CrossgenTool executable '{0}' not found.</value>
<comment>{StrBegin="NETSDK1157: "}</comment>
</data>
<data name="DiaSymReaderLibraryNotFound" xml:space="preserve">
<value>NETSDK1158: DiaSymReader library '{0}' not found.</value>
<comment>{StrBegin="NETSDK1158: "}</comment>
</data>
<data name="PDBGeneratorInputExecutableNotFound" xml:space="preserve">
<value>NETSDK1159: PDB generation: R2R executable '{0}' not found.</value>
<comment>{StrBegin="NETSDK1159: "}</comment>
</data>
<data name="InputAssemblyNotFound" xml:space="preserve">
<value>NETSDK1160: Input assembly '{0}' not found.</value>
<comment>{StrBegin="NETSDK1160: "}</comment>
</data>
<data name="MissingOutputPDBImagePath" xml:space="preserve">
<value>NETSDK1161: Missing output PDB path in PDB generation mode (OutputPDBImage metadata).</value>
<comment>{StrBegin="NETSDK1161: "}</comment>
</data>
<data name="MissingOutputR2RImageFileName" xml:space="preserve">
<value>NETSDK1162: Missing output R2R image path (OutputR2RImage metadata).</value>
<comment>{StrBegin="NETSDK1162: "}</comment>
</data>
</root>
69 changes: 67 additions & 2 deletions src/Tasks/Common/Resources/xlf/Strings.cs.xlf
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="cs" original="../Strings.resx">
<body>
Expand Down Expand Up @@ -259,11 +259,51 @@
<target state="translated">NETSDK1120: Projekty C++/CLI, které cílí na .NET Core, vyžadují cílovou architekturu alespoň netcoreapp3.1.</target>
<note>{StrBegin="NETSDK1120: "}</note>
</trans-unit>
<trans-unit id="Crossgen2MissingRequiredMetadata">
<source>NETSDK1155: Required '{0}' metadata missing on Crossgen2Tool item.</source>
<target state="translated">NETSDK1155: Prvek Crossgen2Tool neobsahuje povinná metadata '{0}'.</target>
<note>{StrBegin="NETSDK1155: "}</note>
</trans-unit>
<trans-unit id="Crossgen2RequiresSelfContained">
<source>NETSDK1126: Publishing ReadyToRun using Crossgen2 is only supported for self-contained applications.</source>
<target state="translated">NETSDK1126: Publikování ReadyToRun pomocí Crossgen2 je podporované jenom pro samostatné (nezávislé) aplikace.</target>
<note>{StrBegin="NETSDK1126: "}</note>
</trans-unit>
<trans-unit id="Crossgen2ToolExecutableNotFound">
<source>NETSDK1152: Crossgen2Tool executable '{0}' not found.</source>
<target state="translated">NETSDK1152: Spustitelný soubor Crossgen2Tool '{0}' nebyl nalezen.</target>
<note>{StrBegin="NETSDK1152: "}</note>
</trans-unit>
<trans-unit id="Crossgen2ToolMissingWhenUseCrossgen2IsSet">
<source>NETSDK1151: Crossgen2Tool must be specified when UseCrossgen2 is set to true.</source>
<target state="translated">NETSDK1151: Crossgen2Tool musí být specifikován, pokud je UseCrossgen2 nastaven (true).</target>
<note>{StrBegin="NETSDK1151: "}</note>
</trans-unit>
<trans-unit id="CrossgenToolExecutableNotFound">
<source>NETSDK1157: CrossgenTool executable '{0}' not found.</source>
<target state="translated">NETSDK1157: Spustitelný soubor CrossgenTool '{0}' nebyl nalezen.</target>
<note>{StrBegin="NETSDK1157: "}</note>
</trans-unit>
<trans-unit id="CrossgenToolMissingInPDBCompilationMode">
<source>NETSDK1150: CrossgenTool not specified in PDB compilation mode.</source>
<target state="translated">NETSDK1150: CrossgenTool není zadán v módu generování PDB.</target>
<note>{StrBegin="NETSDK1150: "}</note>
</trans-unit>
<trans-unit id="CrossgenToolMissingWhenUseCrossgen2IsNotSet">
<source>NETSDK1156: CrossgenTool must be specified when UseCrossgen2 is set to false.</source>
<target state="translated">NETSDK1156: CrossgenTool musí být zadán, pokud je UseCrossgen2 neaktivní (false).</target>
<note>{StrBegin="NETSDK1156: "}</note>
</trans-unit>
<trans-unit id="DiaSymReaderLibraryNotFound">
<source>NETSDK1158: DiaSymReader library '{0}' not found.</source>
<target state="translated">NETSDK1158: Knihovna DiaSymReader '{0}' nebyla nalezena.</target>
<note>{StrBegin="NETSDK1158: "}</note>
</trans-unit>
<trans-unit id="DotNetHostExecutableNotFound">
<source>NETSDK1153: .NET host executable '{0}' not found.</source>
<target state="translated">NETSDK1153: Spustitelný soubor hostitele .NET '{0}' nebyl nalezen.</target>
<note>{StrBegin="NETSDK1153: "}</note>
</trans-unit>
<trans-unit id="DotnetToolDoesNotSupportTFMLowerThanNetcoreapp21">
<source>NETSDK1055: DotnetTool does not support target framework lower than netcoreapp2.1.</source>
<target state="translated">NETSDK1055: DotnetTool nepodporuje cílovou architekturu nižší než netcoreapp2.1.</target>
Expand Down Expand Up @@ -394,6 +434,11 @@
<target state="translated">NETSDK1025: Zadaný cílový manifest {0} nemá správný formát.</target>
<note>{StrBegin="NETSDK1025: "}</note>
</trans-unit>
<trans-unit id="InputAssemblyNotFound">
<source>NETSDK1160: Input assembly '{0}' not found.</source>
<target state="translated">NETSDK1160: Vstupní modul '{0}' nebyl nalezen.</target>
<note>{StrBegin="NETSDK1160: "}</note>
</trans-unit>
<trans-unit id="InvalidFrameworkName">
<source>NETSDK1003: Invalid framework name: '{0}'.</source>
<target state="translated">NETSDK1003: Neplatný název architektury: {0}</target>
Expand Down Expand Up @@ -427,6 +472,11 @@ The following are names of parameters or literal values and should not be transl
{2}</target>
<note>{StrBegin="NETSDK1140: "}</note>
</trans-unit>
<trans-unit id="JitLibraryNotFound">
<source>NETSDK1154: JIT library '{0}' not found.</source>
<target state="translated">NETSDK1154: Knihovna JIT '{0}' nebyla nalezena.</target>
<note>{StrBegin="NETSDK1154: "}</note>
</trans-unit>
<trans-unit id="MismatchedPlatformPackageVersion">
<source>NETSDK1061: The project was restored using {0} version {1}, but with current settings, version {2} would be used instead. To resolve this issue, make sure the same settings are used for restore and for subsequent operations such as build or publish. Typically this issue can occur if the RuntimeIdentifier property is set during build or publish but not during restore. For more information, see https://aka.ms/dotnet-runtime-patch-selection.</source>
<target state="translated">NETSDK1061: Projekt byl obnoven pomocí aplikace {0} verze {1}, ale s aktuálním nastavením by se místo toho použít verze {2}. Tento problém vyřešíte tak, že zkontrolujete, že se pro obnovení a následné operace, například sestavení nebo publikování, používá stejné nastavení. Obvykle k tomuto problému může dojít, pokud je vlastnost RuntimeIdentifier nastavena při sestavování nebo publikování, ale ne při obnovování. Další informace najdete na stránce https://aka.ms/dotnet-runtime-patch-selection.</target>
Expand All @@ -440,6 +490,16 @@ The following are names of parameters or literal values and should not be transl
<target state="translated">NETSDK1008: Chybí metadata {0} o {1} položky {2}.</target>
<note>{StrBegin="NETSDK1008: "}</note>
</trans-unit>
<trans-unit id="MissingOutputPDBImagePath">
<source>NETSDK1161: Missing output PDB path in PDB generation mode (OutputPDBImage metadata).</source>
<target state="translated">NETSDK1161: Není zadán název výstupního PDB souboru v módu generování PDB (metadata OutputPDBImage).</target>
<note>{StrBegin="NETSDK1161: "}</note>
</trans-unit>
<trans-unit id="MissingOutputR2RImageFileName">
<source>NETSDK1162: Missing output R2R image path (OutputR2RImage metadata).</source>
<target state="translated">NETSDK1162: Není zadán název výstupního R2R souboru (metadata OutputR2RImage).</target>
<note>{StrBegin="NETSDK1162: "}</note>
</trans-unit>
<trans-unit id="MultipleFilesResolved">
<source>NETSDK1021: More than one file found for {0}</source>
<target state="translated">NETSDK1021: Pro {0} se našel více než jeden soubor.</target>
Expand Down Expand Up @@ -510,6 +570,11 @@ The following are names of parameters or literal values and should not be transl
<target state="translated">NETSDK1121: Projekty C++/CLI cílené na rozhraní .NET Core nemůžou používat SelfContained=true.</target>
<note>{StrBegin="NETSDK1121: "}</note>
</trans-unit>
<trans-unit id="PDBGeneratorInputExecutableNotFound">
<source>NETSDK1159: PDB generation: R2R executable '{0}' not found.</source>
<target state="translated">NETSDK1159: Generování PDB: spustitelný soubor R2R '{0}' nebyl nalezen.</target>
<note>{StrBegin="NETSDK1159: "}</note>
</trans-unit>
<trans-unit id="PackAsToolCannotSupportSelfContained">
<source>NETSDK1053: Pack as tool does not support self contained.</source>
<target state="translated">NETSDK1053: Zabalit jako nástroj nepodporuje nezávislost.</target>
Expand Down Expand Up @@ -742,7 +807,7 @@ The following are names of parameters or literal values and should not be transl
</trans-unit>
<trans-unit id="WindowsSDKVersionConflicts">
<source>NETSDK1149: A referenced assembly was compiled using a newer version of Microsoft.Windows.SDK.NET.dll. Please update to a newer .NET SDK in order to reference this assembly.</source>
<target state="new">NETSDK1149: A referenced assembly was compiled using a newer version of Microsoft.Windows.SDK.NET.dll. Please update to a newer .NET SDK in order to reference this assembly.</target>
<target state="translated">NETSDK1149: Závislý modul byl zkompilován novější verzí Microsoft.Windows.SDK.NET.dll. Pro odkazování na tento modul prosím přejděte na novější verzi .NET SDK.</target>
<note>{StrBegin="NETSDK1149: "}</note>
</trans-unit>
<trans-unit id="WorkloadNotInstalled">
Expand Down
Loading