namespace Microsoft.Build.Tasks {
public class AL : ToolTaskExtension {
- Process alProcess;
-
public AL ()
{
}
+ [MonoTODO]
protected internal override void AddResponseFileCommands (
CommandLineBuilderExtension commandLine)
{
commandLine.AppendSwitchIfNotNull ("/baseaddress:", BaseAddress);
commandLine.AppendSwitchIfNotNull ("/company:", CompanyName);
commandLine.AppendSwitchIfNotNull ("/configuration:", Configuration);
- commandLine.AppendSwitchIfNotNull ("/copyright:", Copyright);
commandLine.AppendSwitchIfNotNull ("/culture:", Culture);
- if (DelaySign == true)
- commandLine.AppendSwitch ("/delaysign");
+ commandLine.AppendSwitchIfNotNull ("/copyright:", Copyright);
+ if (Bag ["DelaySign"] != null)
+ if (DelaySign)
+ commandLine.AppendSwitch ("/delaysign+");
+ else
+ commandLine.AppendSwitch ("/delaysign-");
+ commandLine.AppendSwitchIfNotNull ("/description:", Description);
if (EmbedResources != null)
foreach (ITaskItem item in EmbedResources)
- commandLine.AppendSwitchIfNotNull ("/embedresource:", item.ItemSpec);
+ commandLine.AppendSwitchIfNotNull ("/embed:", item.ItemSpec);
commandLine.AppendSwitchIfNotNull ("/evidence:", EvidenceFile);
commandLine.AppendSwitchIfNotNull ("/fileversion:", FileVersion);
commandLine.AppendSwitchIfNotNull ("/flags:", Flags);
- if (GenerateFullPaths == true)
+ if (GenerateFullPaths)
commandLine.AppendSwitch ("/fullpaths");
commandLine.AppendSwitchIfNotNull ("/keyname:", KeyContainer);
commandLine.AppendSwitchIfNotNull ("/keyfile:", KeyFile);
if (LinkResources != null)
foreach (ITaskItem item in LinkResources)
- commandLine.AppendSwitchIfNotNull ("/linkresource:", item.ItemSpec);
+ commandLine.AppendSwitchIfNotNull ("/link:", item.ItemSpec);
commandLine.AppendSwitchIfNotNull ("/main:", MainEntryPoint);
if (OutputAssembly != null)
commandLine.AppendSwitchIfNotNull ("/out:", OutputAssembly.ItemSpec);
public override bool Execute ()
{
- CommandLineBuilderExtension clbe = new CommandLineBuilderExtension ();
- AddResponseFileCommands (clbe);
-
- alProcess = new Process ();
- alProcess.StartInfo.Arguments = clbe.ToString ();
- alProcess.StartInfo.FileName = GenerateFullPathToTool ();
- alProcess.Start ();
- alProcess.WaitForExit ();
- return true;
+ return base.Execute ();
}
protected override string GenerateFullPathToTool ()
{
- return Path.Combine (ToolPath, ToolName);
+ if (!string.IsNullOrEmpty (ToolPath))
+ return Path.Combine (ToolPath, ToolExe);
+ return ToolLocationHelper.GetPathToDotNetFrameworkFile (ToolExe, TargetDotNetFrameworkVersion.VersionLatest);
}
public string AlgorithmId {
}
[Required]
+ [Output]
public ITaskItem OutputAssembly {
get { return (ITaskItem) Bag ["OutputAssembly"]; }
set { Bag ["OutputAssembly"] = value; }
}
protected override string ToolName {
- get {
- return "al";
- }
+ get { return "al.exe"; }
}
public string Trademark {
}
}
-#endif
\ No newline at end of file
+#endif