Imported Upstream version 3.6.0

Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
This commit is contained in:
Jo Shields
2014-08-13 10:39:27 +01:00
commit a575963da9
50588 changed files with 8155799 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
using System.Reflection;
using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following
// attributes.
//
// change them to the information which is associated with the assembly
// you compile.
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// The assembly version has following format :
//
// Major.Minor.Build.Revision
//
// You can specify all values by your own or you can build default build and revision
// numbers with the '*' character (the default):
[assembly: AssemblyVersion(Consts.MonoVersion)]
// The following attributes specify the key for the sign of your assembly. See the
// .NET Framework documentation for more information about signing.
// This is not required, if you don't want signing let these attributes like they're.
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]

906
mcs/tools/xbuild/ChangeLog Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,93 @@
//
// CommandLineException.cs: Represents various exceptions thrown during parsing
// command line parameters.
//
// Author:
// Marek Sieradzki (marek.sieradzki@gmail.com)
//
// (C) 2005 Marek Sieradzki
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so, subject to
// the following conditions:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#if NET_2_0
using System;
using System.Runtime.Serialization;
namespace Mono.XBuild.CommandLine {
[Serializable]
public class CommandLineException : Exception {
int errorCode;
public CommandLineException ()
: base ("Unknown command line exception has occured.")
{
}
public CommandLineException (string message)
: base (message)
{
}
public CommandLineException (string message, int errorCode)
: base (message)
{
this.errorCode = errorCode;
}
public CommandLineException (string message, Exception innerException)
: base (message, innerException)
{
}
public CommandLineException (string message, Exception innerException, int errorCode)
: base (message, innerException)
{
this.errorCode = errorCode;
}
public CommandLineException (SerializationInfo info, StreamingContext context)
: base (info, context)
{
errorCode = info.GetInt32 ("ErrorCode");
}
public override void GetObjectData (SerializationInfo info, StreamingContext context)
{
base.GetObjectData (info, context);
info.AddValue ("ErrorCode", errorCode);
}
public int ErrorCode {
get { return errorCode; }
}
public override string Message {
get {
if (InnerException != null)
return base.Message + ": " + InnerException.Message;
else
return base.Message;
}
}
}
}
#endif

View File

@@ -0,0 +1,119 @@
//
// ErrorUtilities.cs: Functions that print out errors, warnings, help etc.
//
// Author:
// Marek Sieradzki (marek.sieradzki@gmail.com)
//
// (C) 2006 Marek Sieradzki
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so, subject to
// the following conditions:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#if NET_2_0
using System;
namespace Mono.XBuild.CommandLine {
public static class ErrorUtilities {
static string[] version = {
String.Format ("XBuild Engine Version {0}", XBuildConsts.Version),
String.Format ("Mono, Version {0}", Consts.MonoVersion),
"Copyright (C) 2005-2013 Various Mono authors",
};
static public void ReportError (int errorNum, string msg)
{
Console.WriteLine (String.Format ("MSBUILD: error MSBUILD{0:0000}: {1}", errorNum, msg));
Environment.Exit (1);
}
static public void ReportWarning (int errorNum, string msg)
{
Console.WriteLine (String.Format ("MSBUILD: warning MSBUILD{0:0000}: {1}", errorNum, msg));
}
static public void ReportInvalidArgument (string option, string value)
{
ReportError (1012, String.Format ("'{0}' is not a valid setting for option '{1}'", value, option));
}
static public void ReportMissingArgument (string option)
{
ReportError (1003, String.Format ("Compiler option '{0}' must be followed by an argument", option));
}
static public void ReportNotImplemented (string option)
{
ReportError (0, String.Format ("Compiler option '{0}' is not implemented", option));
}
static public void ReportMissingFileSpec (string option)
{
ReportError (1008, String.Format ("Missing file specification for '{0}' command-line option", option));
}
static public void ReportMissingText (string option)
{
ReportError (1010, String.Format ("Missing ':<text>' for '{0}' option", option));
}
static public void ShowUsage ()
{
Display (version);
Console.WriteLine ("xbuild [options] [project-file]");
Console.WriteLine (
" /version Show the xbuild version\n" +
" /noconsolelogger Disable the default console logger\n" +
" /target:T1[,TN] List of targets to build\n" +
" /property:Name=Value\n" +
" Set or override project properties\n" +
" /logger:<logger> Custom logger to log events\n" +
" /verbosity:<level> Logger verbosity level : quiet, minimal, normal, detailed, diagnostic\n" +
" /validate Validate the project file against the schema\n" +
" /validate:<schema> Validate the project file against the specified schema\n" +
" /consoleloggerparameters:<params>\n" +
" /clp:<params>\n" +
" Parameters for the console logger\n" +
" /fileloggerparameters[n]:<params>\n" +
" /flp[n]:<params>\n" +
" Parameters for the file logger, eg. LogFile=foo.log\n" +
" /nologo Don't show the initial banner\n" +
" /help Show this help\n"
);
Environment.Exit (0);
}
static public void ShowVersion (bool exit)
{
Display (version);
if (exit)
Environment.Exit (0);
}
static private void Display (string[] array)
{
foreach (string s in array)
Console.WriteLine (s);
}
}
}
#endif

View File

@@ -0,0 +1,171 @@
//
// LoggerInfo.cs: Contains information about logger parameters.
//
// Authors:
// Craig Sutherland (cj.sutherland(at)xtra.co.nz)
// Daniel Nauck (dna(at)mono-project.de)
//
// (C) 2009 Craig Sutherland, Daniel Nauck
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so, subject to
// the following conditions:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#if NET_2_0
using System;
using System.Globalization;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text.RegularExpressions;
using Mono.XBuild.Framework;
namespace Mono.XBuild.CommandLine
{
internal class LoggerInfo : AssemblyLoadInfo
{
static readonly Regex assemblyInfoRegEx = new Regex(@"(?<assemblyName>[\w\.]+)(,\s?Version=(?<assemblyVersion>\d+\.\d+\.\d+\.\d+))?(,\s?Culture=(?<assemblyCulture>\w+))?(,\s?PublicKeyToken=(?<publicKeyToken>\w+))?",
RegexOptions.Compiled | RegexOptions.CultureInvariant);
string loggerAssemblyName;
string loggerType;
string loggerArgs;
string assemblyInfoName;
string assemblyInfoVersion;
string assemblyInfoCulture;
string assemblyInfoPublicKeyToken;
internal LoggerInfo (string value)
{
if (!Parse (value))
return;
if (string.IsNullOrEmpty (loggerType))
loggerType = GetLoggerTypeName (loggerAssemblyName);
if (assemblyInfoName != null)
SetAssemblyName (LoadInfoType.AssemblyName, null, assemblyInfoName, assemblyInfoVersion, assemblyInfoCulture, assemblyInfoPublicKeyToken, loggerType);
else
SetAssemblyName (LoadInfoType.AssemblyFilename, loggerAssemblyName, null, null, null, null, loggerType);
}
internal string Parameters {
get { return loggerArgs; }
}
static string GetLoggerTypeName (string assemblyName)
{
Assembly loggerAssembly = null;
// try to load assembly that contains the logger
if (HasAssemblyInfo (assemblyName))
loggerAssembly = Assembly.Load (assemblyName);
else if (File.Exists (assemblyName))
loggerAssembly = Assembly.LoadFile (assemblyName);
if (loggerAssembly == null)
return null;
// search for a class thats implement ILogger
var loggerClass = (from t in loggerAssembly.GetTypes ()
where t.IsClass &&
t.GetInterface ("Microsoft.Build.Framework.ILogger") != null &&
t.IsPublic
select t).FirstOrDefault ();
if (loggerClass != null)
return loggerClass.FullName;
return null;
}
bool Parse (string arg)
{
// Wipe all the existing values, just in case
loggerAssemblyName = null;
loggerType = null;
loggerArgs = null;
assemblyInfoName = null;
assemblyInfoVersion = null;
assemblyInfoCulture = null;
assemblyInfoPublicKeyToken = null;
if (string.IsNullOrEmpty (arg))
return false;
string [] parts = arg.Split (new char [] {':'}, 2);
if (parts.Length != 2)
return false;
if (string.Compare ("/l", parts [0], StringComparison.OrdinalIgnoreCase) != 0 &&
string.Compare ("/logger", parts [0], StringComparison.OrdinalIgnoreCase) != 0)
return false;
arg = parts [1];
// We have a logger arg, now get the various parts
parts = arg.Split (new char [] {';'}, 2);
string firstPart = parts [0];
if (parts.Length > 1)
loggerArgs = parts [1];
// Next see if there is a type name
parts = firstPart.Split (new char [] {','}, 2);
if (parts.Length == 1) {
loggerAssemblyName = firstPart;
} else {
if (HasAssemblyInfo (parts [1])) {
loggerAssemblyName = firstPart;
GetAssemblyInfo (loggerAssemblyName);
} else {
loggerType = parts [0];
parts [0] = string.Empty;
loggerAssemblyName = string.Join (",", parts).Substring (1).Trim ();
}
}
return true;
}
static bool HasAssemblyInfo (string part)
{
var containsInfo = (part.IndexOf ("version=", StringComparison.OrdinalIgnoreCase) >= 0) ||
(part.IndexOf ("culture=", StringComparison.OrdinalIgnoreCase) >= 0) ||
(part.IndexOf ("publickeytoken=", StringComparison.OrdinalIgnoreCase) >= 0);
return containsInfo;
}
void GetAssemblyInfo (string assemblyName)
{
var match = assemblyInfoRegEx.Match (assemblyName);
if(match == null)
return;
assemblyInfoName = match.Groups ["assemblyName"].Value;
assemblyInfoVersion = match.Groups ["assemblyVersion"].Value;
assemblyInfoCulture = match.Groups ["assemblyCulture"].Value;
assemblyInfoPublicKeyToken = match.Groups ["publicKeyToken"].Value;
}
}
}
#endif

325
mcs/tools/xbuild/Main.cs Normal file
View File

@@ -0,0 +1,325 @@
//
// Main.cs: Main program file of command line utility.
//
// Author:
// Marek Sieradzki (marek.sieradzki@gmail.com)
// Miguel de Icaza (miguel@ximian.com)
// Marek Safar (marek.safar@seznam.cz)
//
// (C) 2005 Marek Sieradzki
// Copyright 2009 Novell, Inc (http://www.novell.com)
// Copyright 2011 Xamarin Inc (http://www.xamarin.com).
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so, subject to
// the following conditions:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#if NET_2_0
using System;
using System.Collections;
using System.IO;
using System.Reflection;
using System.Text;
using Microsoft.Build.BuildEngine;
using Microsoft.Build.Framework;
using Microsoft.Build.Utilities;
using Mono.XBuild.Framework;
namespace Mono.XBuild.CommandLine {
public class MainClass {
Parameters parameters;
string[] args;
string defaultSchema;
Engine engine;
Project project;
ConsoleReportPrinter printer;
public static void Main (string[] args)
{
MainClass mc = new MainClass ();
mc.args = args;
mc.Execute ();
}
public MainClass ()
{
string binPath = ToolLocationHelper.GetPathToDotNetFramework (TargetDotNetFrameworkVersion.Version20);
defaultSchema = Path.Combine (binPath, "Microsoft.Build.xsd");
parameters = new Parameters ();
}
public void Execute ()
{
bool result = false;
bool show_stacktrace = false;
try {
parameters.ParseArguments (args);
show_stacktrace = (parameters.LoggerVerbosity == LoggerVerbosity.Detailed ||
parameters.LoggerVerbosity == LoggerVerbosity.Diagnostic);
if (!parameters.NoLogo)
ErrorUtilities.ShowVersion (false);
engine = Engine.GlobalEngine;
if (!String.IsNullOrEmpty (parameters.ToolsVersion)) {
if (engine.Toolsets [parameters.ToolsVersion] == null)
ErrorUtilities.ReportError (0, new UnknownToolsVersionException (parameters.ToolsVersion).Message);
engine.DefaultToolsVersion = parameters.ToolsVersion;
}
engine.GlobalProperties = this.parameters.Properties;
if (!parameters.NoConsoleLogger) {
printer = new ConsoleReportPrinter ();
ConsoleLogger cl = new ConsoleLogger (parameters.LoggerVerbosity,
printer.Print, printer.SetForeground, printer.ResetColor);
cl.Parameters = parameters.ConsoleLoggerParameters;
cl.Verbosity = parameters.LoggerVerbosity;
engine.RegisterLogger (cl);
}
if (parameters.FileLoggerParameters != null) {
for (int i = 0; i < parameters.FileLoggerParameters.Length; i ++) {
string fl_params = parameters.FileLoggerParameters [i];
if (fl_params == null)
continue;
var fl = new FileLogger ();
if (fl_params.Length == 0 && i > 0)
fl.Parameters = String.Format ("LogFile=msbuild{0}.log", i);
else
fl.Parameters = fl_params;
engine.RegisterLogger (fl);
}
}
foreach (LoggerInfo li in parameters.Loggers) {
Assembly assembly;
if (li.InfoType == LoadInfoType.AssemblyFilename)
assembly = Assembly.LoadFrom (li.Filename);
else
assembly = Assembly.Load (li.AssemblyName);
ILogger logger = (ILogger)Activator.CreateInstance (assembly.GetType (li.ClassName));
logger.Parameters = li.Parameters;
engine.RegisterLogger (logger);
}
project = engine.CreateNewProject ();
if (parameters.Validate) {
if (parameters.ValidationSchema == null)
project.SchemaFile = defaultSchema;
else
project.SchemaFile = parameters.ValidationSchema;
}
string projectFile = parameters.ProjectFile;
if (!File.Exists (projectFile)) {
ErrorUtilities.ReportError (0, String.Format ("Project file '{0}' not found.", projectFile));
return;
}
result = engine.BuildProjectFile (projectFile, parameters.Targets, null, null, BuildSettings.None, parameters.ToolsVersion);
}
catch (InvalidProjectFileException ipfe) {
ErrorUtilities.ReportError (0, show_stacktrace ? ipfe.ToString () : ipfe.Message);
}
catch (InternalLoggerException ile) {
ErrorUtilities.ReportError (0, show_stacktrace ? ile.ToString () : ile.Message);
}
catch (CommandLineException cle) {
ErrorUtilities.ReportError(cle.ErrorCode, show_stacktrace ? cle.ToString() : cle.Message);
}
finally {
if (engine != null)
engine.UnregisterAllLoggers ();
Environment.Exit (result ? 0 : 1);
}
}
}
// code from mcs/report.cs
class ConsoleReportPrinter
{
string prefix, postfix;
bool color_supported;
TextWriter writer;
string [] colorPrefixes;
public ConsoleReportPrinter ()
: this (Console.Out)
{
}
public ConsoleReportPrinter (TextWriter writer)
{
this.writer = writer;
string term = Environment.GetEnvironmentVariable ("TERM");
bool xterm_colors = false;
color_supported = false;
switch (term){
case "xterm":
case "rxvt":
case "rxvt-unicode":
if (Environment.GetEnvironmentVariable ("COLORTERM") != null){
xterm_colors = true;
}
break;
case "xterm-color":
case "xterm-256color":
xterm_colors = true;
break;
}
if (!xterm_colors)
return;
if (!(UnixUtils.isatty (1) && UnixUtils.isatty (2)))
return;
color_supported = true;
PopulateColorPrefixes ();
postfix = "\x001b[0m";
}
void PopulateColorPrefixes ()
{
colorPrefixes = new string [16];
colorPrefixes [(int)ConsoleColor.Black] = GetForeground ("black");
colorPrefixes [(int)ConsoleColor.DarkBlue] = GetForeground ("blue");
colorPrefixes [(int)ConsoleColor.DarkGreen] = GetForeground ("green");
colorPrefixes [(int)ConsoleColor.DarkCyan] = GetForeground ("cyan");
colorPrefixes [(int)ConsoleColor.DarkRed] = GetForeground ("red");
colorPrefixes [(int)ConsoleColor.DarkMagenta] = GetForeground ("magenta");
colorPrefixes [(int)ConsoleColor.DarkYellow] = GetForeground ("yellow");
colorPrefixes [(int)ConsoleColor.DarkGray] = GetForeground ("grey");
colorPrefixes [(int)ConsoleColor.Gray] = GetForeground ("brightgrey");
colorPrefixes [(int)ConsoleColor.Blue] = GetForeground ("brightblue");
colorPrefixes [(int)ConsoleColor.Green] = GetForeground ("brightgreen");
colorPrefixes [(int)ConsoleColor.Cyan] = GetForeground ("brightcyan");
colorPrefixes [(int)ConsoleColor.Red] = GetForeground ("brightred");
colorPrefixes [(int)ConsoleColor.Magenta] = GetForeground ("brightmagenta");
colorPrefixes [(int)ConsoleColor.Yellow] = GetForeground ("brightyellow");
colorPrefixes [(int)ConsoleColor.White] = GetForeground ("brightwhite");
}
public void SetForeground (ConsoleColor color)
{
if (color_supported)
prefix = colorPrefixes [(int)color];
}
public void ResetColor ()
{
prefix = "\x001b[0m";
}
static int NameToCode (string s)
{
switch (s) {
case "black":
return 0;
case "red":
return 1;
case "green":
return 2;
case "yellow":
return 3;
case "blue":
return 4;
case "magenta":
return 5;
case "cyan":
return 6;
case "grey":
case "white":
return 7;
}
return 7;
}
//
// maps a color name to its xterm color code
//
static string GetForeground (string s)
{
string highcode;
if (s.StartsWith ("bright")) {
highcode = "1;";
s = s.Substring (6);
} else
highcode = "";
return "\x001b[" + highcode + (30 + NameToCode (s)).ToString () + "m";
}
static string GetBackground (string s)
{
return "\x001b[" + (40 + NameToCode (s)).ToString () + "m";
}
string FormatText (string txt)
{
if (prefix != null && color_supported)
return prefix + txt + postfix;
return txt;
}
public void Print (string message)
{
writer.WriteLine (FormatText (message));
}
}
class UnixUtils {
[System.Runtime.InteropServices.DllImport ("libc", EntryPoint="isatty")]
extern static int _isatty (int fd);
public static bool isatty (int fd)
{
try {
return _isatty (fd) == 1;
} catch {
return false;
}
}
}
}
#endif

101
mcs/tools/xbuild/Makefile Normal file
View File

@@ -0,0 +1,101 @@
thisdir = tools/xbuild
SUBDIRS =
include ../../build/rules.make
NO_TESTS = yes
include xbuild.make
LOCAL_MCS_FLAGS = -r:$(XBUILD_FRAMEWORK) -r:$(XBUILD_UTILITIES) -r:$(XBUILD_ENGINE)
PROGRAM = xbuild.exe
include ../../build/executable.make
XBUILD_DIR=.
include $(XBUILD_DIR)/xbuild_test.make
ifeq (4.0, $(FRAMEWORK_VERSION))
install-local: xbuild-net4-fail
else
install-local: install-extras
endif
NETFRAMEWORK_DIR=$(mono_libdir)/mono/xbuild-frameworks/.NETFramework
VS_TARGETS_DIR = $(mono_libdir)/mono/xbuild/Microsoft/VisualStudio
PORTABLE_TARGETS_DIR = $(mono_libdir)/mono/xbuild/Microsoft/Portable
install-extras: install-bin-data install-frameworks install-pcl-targets install-web-targets
install-bin-data:
$(MKINSTALLDIRS) $(DESTDIR)$(XBUILD_BIN_DIR)/MSBuild
$(INSTALL_DATA) data/xbuild.rsp $(DESTDIR)$(XBUILD_BIN_DIR)
$(INSTALL_DATA) data/$(XBUILD_VERSION)/Microsoft.Common.tasks $(DESTDIR)$(XBUILD_BIN_DIR)
$(INSTALL_DATA) data/$(XBUILD_VERSION)/Microsoft.Common.targets $(DESTDIR)$(XBUILD_BIN_DIR)
$(INSTALL_DATA) data/$(XBUILD_VERSION)/Microsoft.CSharp.targets $(DESTDIR)$(XBUILD_BIN_DIR)
$(INSTALL_DATA) data/Microsoft.Build.xsd $(DESTDIR)$(XBUILD_BIN_DIR)
$(INSTALL_DATA) data/Microsoft.VisualBasic.targets $(DESTDIR)$(XBUILD_BIN_DIR)
$(INSTALL_DATA) data/MSBuild/Microsoft.Build.CommonTypes.xsd $(DESTDIR)$(XBUILD_BIN_DIR)/MSBuild
$(INSTALL_DATA) data/MSBuild/Microsoft.Build.Core.xsd $(DESTDIR)$(XBUILD_BIN_DIR)/MSBuild
sed -e 's/@ASM_VERSION@/$(XBUILD_ASSEMBLY_VERSION)/g' data/xbuild.exe.config.in > $(DESTDIR)$(XBUILD_BIN_DIR)/xbuild.exe.config
install-frameworks:
$(MKINSTALLDIRS) $(DESTDIR)$(NETFRAMEWORK_DIR)/v$(FRAMEWORK_VERSION)/RedistList
$(INSTALL_DATA) frameworks/net_$(FRAMEWORK_VERSION).xml $(DESTDIR)$(NETFRAMEWORK_DIR)/v$(FRAMEWORK_VERSION)/RedistList/FrameworkList.xml
$(MKINSTALLDIRS) $(DESTDIR)$(NETFRAMEWORK_DIR)/v3.0/RedistList
$(INSTALL_DATA) frameworks/net_3.0.xml $(DESTDIR)$(NETFRAMEWORK_DIR)/v3.0/RedistList/FrameworkList.xml
$(MKINSTALLDIRS) $(DESTDIR)$(NETFRAMEWORK_DIR)/v4.0/RedistList
$(INSTALL_DATA) frameworks/net_4.0.xml $(DESTDIR)$(NETFRAMEWORK_DIR)/v4.0/RedistList/FrameworkList.xml
$(MKINSTALLDIRS) $(DESTDIR)$(NETFRAMEWORK_DIR)/v4.0/Profile/Client/RedistList
$(INSTALL_DATA) frameworks/net_4.0_client.xml $(DESTDIR)$(NETFRAMEWORK_DIR)/v4.0/Profile/Client/RedistList/FrameworkList.xml
install-pcl-targets:
$(MKINSTALLDIRS) $(DESTDIR)$(PORTABLE_TARGETS_DIR)/v4.0
$(INSTALL_DATA) targets/Microsoft.Portable.Common.targets $(DESTDIR)$(PORTABLE_TARGETS_DIR)/v4.0/Microsoft.Portable.Common.targets
$(INSTALL_DATA) targets/Microsoft.Portable.CSharp_4.0.targets $(DESTDIR)$(PORTABLE_TARGETS_DIR)/v4.0/Microsoft.Portable.CSharp.targets
$(MKINSTALLDIRS) $(DESTDIR)$(PORTABLE_TARGETS_DIR)/v4.5
$(INSTALL_DATA) targets/Microsoft.Portable.Common.targets $(DESTDIR)$(PORTABLE_TARGETS_DIR)/v4.5/Microsoft.Portable.Common.targets
$(INSTALL_DATA) targets/Microsoft.Portable.CSharp_4.5.targets $(DESTDIR)$(PORTABLE_TARGETS_DIR)/v4.5/Microsoft.Portable.CSharp.targets
$(INSTALL_DATA) targets/Microsoft.Portable.Core.targets $(DESTDIR)$(PORTABLE_TARGETS_DIR)/Microsoft.Portable.Core.targets
$(INSTALL_DATA) targets/Microsoft.Portable.Core.props $(DESTDIR)$(PORTABLE_TARGETS_DIR)/Microsoft.Portable.Core.props
install-web-targets:
$(MKINSTALLDIRS) $(DESTDIR)$(VS_TARGETS_DIR)/v9.0/WebApplications
$(INSTALL_DATA) targets/Microsoft.WebApplication.targets $(DESTDIR)$(VS_TARGETS_DIR)/v9.0/WebApplications
$(MKINSTALLDIRS) $(DESTDIR)$(VS_TARGETS_DIR)/v10.0/WebApplications
$(INSTALL_DATA) targets/Microsoft.WebApplication.targets $(DESTDIR)$(VS_TARGETS_DIR)/v10.0/WebApplications
$(MKINSTALLDIRS) $(DESTDIR)$(VS_TARGETS_DIR)/v11.0/WebApplications
$(INSTALL_DATA) targets/Microsoft.WebApplication.targets $(DESTDIR)$(VS_TARGETS_DIR)/v11.0/WebApplications
EXTRA_DISTFILES = \
data/xbuild.rsp \
data/xbuild.exe.config.in \
data/Microsoft.Build.xsd \
data/2.0/Microsoft.Common.tasks \
data/3.5/Microsoft.Common.tasks \
data/4.0/Microsoft.Common.tasks \
data/12.0/Microsoft.Common.tasks \
data/2.0/Microsoft.Common.targets \
data/3.5/Microsoft.Common.targets \
data/4.0/Microsoft.Common.targets \
data/12.0/Microsoft.Common.targets \
data/2.0/Microsoft.CSharp.targets \
data/3.5/Microsoft.CSharp.targets \
data/4.0/Microsoft.CSharp.targets \
data/12.0/Microsoft.CSharp.targets \
data/Microsoft.VisualBasic.targets \
data/MSBuild/Microsoft.Build.CommonTypes.xsd \
data/MSBuild/Microsoft.Build.Core.xsd \
frameworks/net_2.0.xml \
frameworks/net_3.0.xml \
frameworks/net_3.5.xml \
frameworks/net_4.0.xml \
frameworks/net_4.0_client.xml \
frameworks/net_4.5.xml \
targets/Microsoft.Portable.CSharp_4.0.targets \
targets/Microsoft.Portable.CSharp_4.5.targets \
targets/Microsoft.Portable.Common.targets \
targets/Microsoft.Portable.Core.targets \
targets/Microsoft.Portable.Core.props \
targets/Microsoft.WebApplication.targets \
xbuild.make \
xbuild_test.make

View File

@@ -0,0 +1,428 @@
//
// Parameters.cs: Class that contains information about command line parameters
//
// Author:
// Marek Sieradzki (marek.sieradzki@gmail.com)
//
// (C) 2005 Marek Sieradzki
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to
// permit persons to whom the Software is furnished to do so, subject to
// the following conditions:
//
// The above copyright notice and this permission notice shall be
// included in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#if NET_2_0
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Reflection;
using Microsoft.Build.BuildEngine;
using Microsoft.Build.Framework;
using Microsoft.Build.Utilities;
namespace Mono.XBuild.CommandLine {
public class Parameters {
string consoleLoggerParameters;
bool displayHelp;
IList flatArguments;
IList loggers;
LoggerVerbosity loggerVerbosity;
bool noConsoleLogger;
bool noLogo;
string projectFile;
BuildPropertyGroup properties;
IList remainingArguments;
Hashtable responseFiles;
string[] targets;
bool validate;
string validationSchema;
string toolsVersion;
string responseFile;
public Parameters ()
{
consoleLoggerParameters = "";
displayHelp = false;
loggers = new ArrayList ();
loggerVerbosity = LoggerVerbosity.Normal;
noConsoleLogger = false;
noLogo = false;
properties = new BuildPropertyGroup ();
targets = new string [0];
responseFile = Path.Combine (
Path.GetDirectoryName (Assembly.GetExecutingAssembly ().Location),
"xbuild.rsp");
}
public void ParseArguments (string[] args)
{
bool autoResponse = true;
flatArguments = new ArrayList ();
remainingArguments = new ArrayList ();
responseFiles = new Hashtable ();
FileLoggerParameters = new string[10];
foreach (string s in args) {
if (s.StartsWith ("/noautoresponse") || s.StartsWith ("/noautorsp")) {
autoResponse = false;
continue;
}
if (s [0] != '@') {
flatArguments.Add (s);
continue;
}
string responseFilename = Path.GetFullPath (UnquoteIfNeeded (s.Substring (1)));
if (responseFiles.ContainsKey (responseFilename))
ReportError (1, String.Format ("We already have {0} file.", responseFilename));
responseFiles [responseFilename] = responseFilename;
LoadResponseFile (responseFilename);
}
if (autoResponse == true) {
// FIXME: we do not allow nested auto response file
LoadResponseFile (responseFile);
}
foreach (string s in flatArguments) {
if (s [0] != '/' || !ParseFlatArgument (s))
remainingArguments.Add (s);
}
if (remainingArguments.Count == 0) {
string[] sln_files = Directory.GetFiles (Directory.GetCurrentDirectory (), "*.sln");
string[] proj_files = Directory.GetFiles (Directory.GetCurrentDirectory (), "*proj");
if (sln_files.Length == 0 && proj_files.Length == 0)
ReportError (3, "Please specify the project or solution file " +
"to build, as none was found in the current directory.");
if (sln_files.Length == 1 && proj_files.Length > 0) {
var projects_table = new Dictionary<string, string> ();
foreach (string pfile in SolutionParser.GetAllProjectFileNames (sln_files [0])) {
string full_path = Path.GetFullPath (pfile);
projects_table [full_path] = full_path;
}
if (!proj_files.Any (p => !projects_table.ContainsKey (Path.GetFullPath (p))))
// if all the project files in the cur dir, are referenced
// from the single .sln in the cur dir, then pick the sln
proj_files = new string [0];
}
if (sln_files.Length + proj_files.Length > 1)
ReportError (5, "Please specify the project or solution file " +
"to build, as more than one solution or project file was found " +
"in the current directory");
if (sln_files.Length == 1)
projectFile = sln_files [0];
else
projectFile = proj_files [0];
} else if (remainingArguments.Count == 1) {
projectFile = (string) remainingArguments [0];
} else {
ReportError (4, "Too many project files specified");
}
}
private string UnquoteIfNeeded(string arg)
{
if (arg.StartsWith("\""))
return arg.Substring(1, arg.Length - 2);
return arg;
}
void LoadResponseFile (string filename)
{
StreamReader sr = null;
string line;
try {
sr = new StreamReader (filename);
StringBuilder sb = new StringBuilder ();
while ((line = sr.ReadLine ()) != null) {
int t = line.Length;
for (int i = 0; i < t; i++) {
char c = line [i];
if (c == '#')
// comment, ignore rest of the line
break;
if (c == '"' || c == '\'') {
char end = c;
for (i++; i < t; i++) {
c = line [i];
if (c == end)
break;
sb.Append (c);
}
} else if (c == ' ') {
if (sb.Length > 0) {
flatArguments.Add (sb.ToString ());
sb.Length = 0;
}
} else
sb.Append (c);
}
if (sb.Length > 0){
flatArguments.Add (sb.ToString ());
sb.Length = 0;
}
}
} catch (IOException x) {
ErrorUtilities.ReportWarning (2, String.Format (
"Error loading response file. (Exception: {0}). Ignoring.",
x.Message));
} finally {
if (sr != null)
sr.Close ();
}
}
private bool ParseFlatArgument (string s)
{
switch (s) {
case "/help":
case "/h":
case "/?":
ErrorUtilities.ShowUsage ();
break;
case "/nologo":
noLogo = true;
break;
case "/version":
case "/ver":
ErrorUtilities.ShowVersion (true);
break;
case "/noconsolelogger":
case "/noconlog":
noConsoleLogger = true;
break;
case "/validate":
case "/val":
validate = true;
break;
case "/fl":
case "/filelogger":
if (FileLoggerParameters [0] == null)
FileLoggerParameters [0] = String.Empty;
break;
default:
if (s.StartsWith ("/fl") && s.Length == 4 && Char.IsDigit (s[3])) {
int index = Int32.Parse (s[3].ToString ());
if (FileLoggerParameters [index] == null)
FileLoggerParameters [index] = String.Empty;
} else if (s.StartsWith ("/fileloggerparameters") || s.StartsWith ("/flp")) {
ProcessFileLoggerParameters (s);
} else if (s.StartsWith ("/target:") || s.StartsWith ("/t:")) {
ProcessTarget (s);
} else if (s.StartsWith ("/property:") || s.StartsWith ("/p:")) {
if (!ProcessProperty (s))
return false;
} else if (s.StartsWith ("/logger:") || s.StartsWith ("/l:")) {
ProcessLogger (s);
} else if (s.StartsWith ("/verbosity:") || s.StartsWith ("/v:")) {
ProcessVerbosity (s);
} else if (s.StartsWith ("/consoleloggerparameters:") || s.StartsWith ("/clp:")) {
ProcessConsoleLoggerParameters (s);
} else if (s.StartsWith ("/validate:") || s.StartsWith ("/val:")) {
ProcessValidate (s);
} else if (s.StartsWith ("/toolsversion:") || s.StartsWith ("/tv:")) {
ToolsVersion = s.Split (':') [1];
} else
return false;
break;
}
return true;
}
internal void ProcessTarget (string s)
{
TryProcessMultiOption (s, "Target names must be specified as /t:Target1;Target2",
out targets);
}
internal bool ProcessProperty (string s)
{
string[] splitProperties;
if (!TryProcessMultiOption (s, "Property name and value expected as /p:<prop name>=<prop value>",
out splitProperties))
return false;
foreach (string st in splitProperties) {
if (st.IndexOf ('=') < 0) {
ReportError (5,
"Invalid syntax. Property name and value expected as " +
"<prop name>=[<prop value>]");
return false;
}
string [] property = st.Split ('=');
properties.SetProperty (property [0], property.Length == 2 ? property [1] : "");
}
return true;
}
bool TryProcessMultiOption (string s, string error_message, out string[] values)
{
values = null;
int colon = s.IndexOf (':');
if (colon + 1 == s.Length) {
ReportError (5, error_message);
return false;
}
values = s.Substring (colon + 1).Split (';');
return true;
}
private void ReportError (int errorCode, string message)
{
throw new CommandLineException (message, errorCode);
}
private void ReportError (int errorCode, string message, Exception cause)
{
throw new CommandLineException (message, cause, errorCode);
}
internal void ProcessLogger (string s)
{
loggers.Add (new LoggerInfo (s));
}
internal void ProcessVerbosity (string s)
{
string[] temp = s.Split (':');
switch (temp [1]) {
case "q":
case "quiet":
loggerVerbosity = LoggerVerbosity.Quiet;
break;
case "m":
case "minimal":
loggerVerbosity = LoggerVerbosity.Minimal;
break;
case "n":
case "normal":
loggerVerbosity = LoggerVerbosity.Normal;
break;
case "d":
case "detailed":
loggerVerbosity = LoggerVerbosity.Detailed;
break;
case "diag":
case "diagnostic":
loggerVerbosity = LoggerVerbosity.Diagnostic;
break;
}
}
void ProcessFileLoggerParameters (string s)
{
int colon = s.IndexOf (':');
if (colon + 1 == s.Length)
ReportError (5, "Invalid syntax, specify parameters as /fileloggerparameters[n]:parameters");
int index = 0;
string key = s.Substring (0, colon);
if (Char.IsDigit (key [key.Length - 1]))
//if (key.Length == 22 && Char.IsDigit (key [21]))
index = Int32.Parse (key [key.Length - 1].ToString ());
FileLoggerParameters [index] = s.Substring (colon + 1);
}
internal void ProcessConsoleLoggerParameters (string s)
{
int colon = s.IndexOf (':');
if (colon + 1 == s.Length)
ReportError (5, "Invalid syntax, specify parameters as /clp:parameters");
consoleLoggerParameters = s.Substring (colon + 1);
}
internal void ProcessValidate (string s)
{
string[] temp;
validate = true;
temp = s.Split (':');
validationSchema = temp [1];
}
public bool DisplayHelp {
get { return displayHelp; }
}
public bool NoLogo {
get { return noLogo; }
}
public string ProjectFile {
get { return projectFile; }
}
public string[] Targets {
get { return targets; }
}
public BuildPropertyGroup Properties {
get { return properties; }
}
public IList Loggers {
get { return loggers; }
}
public LoggerVerbosity LoggerVerbosity {
get { return loggerVerbosity; }
}
public string ConsoleLoggerParameters {
get { return consoleLoggerParameters; }
}
public bool NoConsoleLogger {
get { return noConsoleLogger; }
}
public string[] FileLoggerParameters { get; set; }
public bool Validate {
get { return validate; }
}
public string ValidationSchema {
get { return validationSchema; }
}
public string ToolsVersion {
get { return toolsVersion; }
private set { toolsVersion = value; }
}
}
}
#endif

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,20 @@
class XBuildConsts
{
#if XBUILD_12
public const string Version = "12.0";
public const string AssemblyVersion = "12.0.0.0";
public const string FileVersion = "12.0.21005.1";
#elif NET_4_0
public const string Version = "4.0";
public const string AssemblyVersion = Consts.FxVersion;
public const string FileVersion = Consts.FxFileVersion;
#elif NET_3_5
public const string Version = "3.5";
public const string AssemblyVersion = Consts.FxVersion;
public const string FileVersion = Consts.FxFileVersion;
#else
public const string Version = "2.0";
public const string AssemblyVersion = Consts.FxVersion;
public const string FileVersion = Consts.FxFileVersion;
#endif
}

View File

@@ -0,0 +1,129 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<DefaultLanguageSourceExtension>.cs</DefaultLanguageSourceExtension>
<Language>C#</Language>
</PropertyGroup>
<PropertyGroup>
<DebugSymbols Condition=" '$(DebugType)' == 'none' ">false</DebugSymbols>
<DebugType Condition=" '$(DebugType)' == 'none' "></DebugType>
</PropertyGroup>
<PropertyGroup>
<CreateManifestResourceNamesDependsOn></CreateManifestResourceNamesDependsOn>
<CoreCompileDependsOn></CoreCompileDependsOn>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildToolsPath)\Microsoft.CSharp.targets</MSBuildAllProjects>
</PropertyGroup>
<PropertyGroup>
<NoCompilerStandardLib Condition="'$(NoCompilerStandardLib)'==''">true</NoCompilerStandardLib>
</PropertyGroup>
<ItemGroup>
<DocFileItem Include="$(DocumentationFile)" Condition="'$(DocumentationFile)' != ''"/>
</ItemGroup>
<Target Name="_AddCorlibReference" DependsOnTargets="GetReferenceAssemblyPaths">
<!--
HACK: We don't yet support property functions, so can't calculate FrameworkPathOverride
by calling ToolLocationHelper.GetPathToStandardLibraries. Instead, we search the framework
directories for mscorlib.dll by constructing a filtered item set, and assume it only has
one item.
-->
<ItemGroup>
<_ExplicitReference Include="@(_TargetFrameworkDirectories->'%(FullPath)\mscorlib.dll')" Condition="Exists('%(FullPath)\mscorlib.dll')">
<Private>false</Private>
</_ExplicitReference>
</ItemGroup>
</Target>
<Target
Name="CoreCompile"
Inputs="$(MSBuildAllProjects);@(Compile);@(ManifestResourceWithNoCulture);@(ManifestNonResxWithNoCultureOnDisk);@(CompiledLicenseFile);
$(KeyOriginatorFile);@(ReferencePath);$(Win32Icon);$(Win32Resource)"
Outputs="@(DocFileItem);@(IntermediateAssembly)"
DependsOnTargets="$(CoreCompileDependsOn)"
>
<Csc
AdditionalLibPaths="$(AdditionalLibPaths)"
AddModules="@(AddModules)"
AllowUnsafeBlocks="$(AllowUnsafeBlocks)"
BaseAddress="$(BaseAddress)"
CheckForOverflowUnderflow="$(CheckForOverflowUnderflow)"
CodePage="$(CodePage)"
DebugType="$(DebugType)"
DefineConstants="$(DefineConstants)"
DelaySign="$(DelaySign)"
DisabledWarnings="$(NoWarn)"
DocumentationFile="@(DocFileItem)"
EmitDebugInformation="$(DebugSymbols)"
ErrorReport="$(ErrorReport)"
FileAlignment="$(FileAlignment)"
GenerateFullPaths="$(GenerateFullPaths)"
KeyContainer="$(KeyContainerName)"
KeyFile="$(KeyOriginatorFile)"
LangVersion="$(LangVersion)"
MainEntryPoint="$(StartupObject)"
ModuleAssemblyName="$(ModuleAssemblyName)"
NoConfig="true"
NoLogo="$(NoLogo)"
NoStandardLib="$(NoCompilerStandardLib)"
Optimize="$(Optimize)"
OutputAssembly="@(IntermediateAssembly)"
PdbFile="$(PdbFile)"
Platform="$(PlatformTarget)"
References="@(ReferencePath)"
ResponseFiles="$(CompilerResponseFile)"
Sources="@(Compile)"
TargetType="$(OutputType)"
TreatWarningsAsErrors="$(TreatWarningsAsErrors)"
UseHostCompilerIfAvailable="$(UseHostCompilerIfAvailable)"
Utf8Output="$(Utf8Output)"
WarningLevel="$(WarningLevel)"
WarningsAsErrors="$(WarningsAsErrors)"
WarningsNotAsErrors="$(WarningsNotAsErrors)"
Win32Icon="$(Win32Icon)"
Win32Resource="$(Win32Resource)"
Resources="@(ManifestResourceWithNoCulture);@(ManifestNonResxWithNoCultureOnDisk);@(CompiledLicenseFile)"
ToolExe="$(CscToolExe)"
ToolPath="$(CscToolPath)" />
</Target>
<Target Name="CreateManifestResourceNames">
<CreateCSharpManifestResourceName Condition="'@(ResxWithNoCulture)' != ''"
ResourceFiles="@(ResxWithNoCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestResourceWithNoCultureName" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(NonResxWithNoCulture)' != ''"
ResourceFiles="@(NonResxWithNoCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestNonResxWithNoCulture" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(ResxWithCulture)' != ''"
ResourceFiles="@(ResxWithCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestResourceWithCultureName" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(NonResxWithCulture)' != ''"
ResourceFiles="@(NonResxWithCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestNonResxWithCulture" />
</CreateCSharpManifestResourceName>
</Target>
<Import Project="Microsoft.Common.targets" />
<PropertyGroup Condition="'$(NoCompilerStandardLib)'=='true' and '$(NoStdLib)'!='true'">
<ResolveAssemblyReferencesDependsOn>$(ResolveAssemblyReferencesDependsOn);_AddCorlibReference</ResolveAssemblyReferencesDependsOn>
</PropertyGroup>
<PropertyGroup>
<TargetFrameworkMonikerAssemblyAttributeText Condition="'$(TargetFrameworkMoniker)' != '' and '$(TargetingClr2Framework)' != 'true'">
// &lt;autogenerated /&gt;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(&quot;$(TargetFrameworkMoniker)&quot;, FrameworkDisplayName = &quot;$(TargetFrameworkMonikerDisplayName)&quot;)]
</TargetFrameworkMonikerAssemblyAttributeText>
</PropertyGroup>
</Project>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,37 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" >
<UsingTask TaskName="Microsoft.Build.Tasks.AL" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.AssignTargetPath" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.AssignCulture" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.AssignProjectConfiguration" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CallTarget" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CombinePath" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Copy" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CreateCSharpManifestResourceName" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
<UsingTask TaskName="Microsoft.Build.Tasks.CreateItem" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CreateProperty" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Csc" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Delete" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Error" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Exec" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.FindAppConfigFile" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.FindUnderPath" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GenerateResource" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GetAssemblyIdentity" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GetFrameworkPath" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GetFrameworkSdkPath" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GetReferenceAssemblyPaths" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.LC" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.MakeDir" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Message" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.MSBuild" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.ReadLinesFromFile" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.RemoveDir" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.RemoveDuplicates" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.ResolveAssemblyReference" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.SignFile" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Touch" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Vbc" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Warning" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.WriteCodeFragment" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
<UsingTask TaskName="Microsoft.Build.Tasks.WriteLinesToFile" AssemblyName="Microsoft.Build.Tasks.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</Project>

View File

@@ -0,0 +1,99 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<DefaultLanguageSourceExtension>.cs</DefaultLanguageSourceExtension>
<Language>C#</Language>
</PropertyGroup>
<PropertyGroup>
<DebugSymbols Condition=" '$(DebugType)' == 'none' ">false</DebugSymbols>
<DebugType Condition=" '$(DebugType)' == 'none' "></DebugType>
</PropertyGroup>
<PropertyGroup>
<CreateManifestResourceNamesDependsOn></CreateManifestResourceNamesDependsOn>
<CoreCompileDependsOn></CoreCompileDependsOn>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildToolsPath)\Microsoft.CSharp.targets</MSBuildAllProjects>
</PropertyGroup>
<ItemGroup>
<DocFileItem Include="$(DocumentationFile)" Condition="'$(DocumentationFile)' != ''"/>
</ItemGroup>
<Target
Name="CoreCompile"
Inputs="$(MSBuildAllProjects);@(Compile);@(ManifestResourceWithNoCulture);@(ManifestNonResxWithNoCultureOnDisk);@(CompiledLicenseFile);
$(KeyOriginatorFile);@(ReferencePath);$(Win32Icon);$(Win32Resource)"
Outputs="@(DocFileItem);@(IntermediateAssembly)"
DependsOnTargets="$(CoreCompileDependsOn)"
>
<Csc
AdditionalLibPaths="$(AdditionalLibPaths)"
AddModules="@(AddModules)"
AllowUnsafeBlocks="$(AllowUnsafeBlocks)"
BaseAddress="$(BaseAddress)"
CheckForOverflowUnderflow="$(CheckForOverflowUnderflow)"
CodePage="$(CodePage)"
DebugType="$(DebugType)"
DefineConstants="$(DefineConstants)"
DelaySign="$(DelaySign)"
DisabledWarnings="$(NoWarn)"
DocumentationFile="@(DocFileItem)"
EmitDebugInformation="$(DebugSymbols)"
ErrorReport="$(ErrorReport)"
FileAlignment="$(FileAlignment)"
GenerateFullPaths="$(GenerateFullPaths)"
KeyContainer="$(KeyContainerName)"
KeyFile="$(KeyOriginatorFile)"
LangVersion="$(LangVersion)"
MainEntryPoint="$(StartupObject)"
ModuleAssemblyName="$(ModuleAssemblyName)"
NoConfig="true"
NoLogo="$(NoLogo)"
NoStandardLib="$(NoStdLib)"
Optimize="$(Optimize)"
OutputAssembly="@(IntermediateAssembly)"
PdbFile="$(PdbFile)"
Platform="$(PlatformTarget)"
References="@(ReferencePath)"
ResponseFiles="$(CompilerResponseFile)"
Sources="@(Compile)"
TargetType="$(OutputType)"
TreatWarningsAsErrors="$(TreatWarningsAsErrors)"
UseHostCompilerIfAvailable="$(UseHostCompilerIfAvailable)"
Utf8Output="$(Utf8Output)"
WarningLevel="$(WarningLevel)"
WarningsAsErrors="$(WarningsAsErrors)"
WarningsNotAsErrors="$(WarningsNotAsErrors)"
Win32Icon="$(Win32Icon)"
Win32Resource="$(Win32Resource)"
Resources="@(ManifestResourceWithNoCulture);@(ManifestNonResxWithNoCultureOnDisk);@(CompiledLicenseFile)"
ToolExe="$(CscToolExe)"
ToolPath="$(CscToolPath)" />
</Target>
<Target Name="CreateManifestResourceNames">
<CreateCSharpManifestResourceName Condition="'@(ResxWithNoCulture)' != ''"
ResourceFiles="@(ResxWithNoCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestResourceWithNoCultureName" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(NonResxWithNoCulture)' != ''"
ResourceFiles="@(NonResxWithNoCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestNonResxWithNoCulture" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(ResxWithCulture)' != ''"
ResourceFiles="@(ResxWithCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestResourceWithCultureName" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(NonResxWithCulture)' != ''"
ResourceFiles="@(NonResxWithCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestNonResxWithCulture" />
</CreateCSharpManifestResourceName>
</Target>
<Import Project="Microsoft.Common.targets" />
</Project>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,35 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" >
<UsingTask TaskName="Microsoft.Build.Tasks.AL" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.AssignTargetPath" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.AssignCulture" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.AssignProjectConfiguration" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CallTarget" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CombinePath" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Copy" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CreateCSharpManifestResourceName" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CreateItem" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CreateProperty" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Csc" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Delete" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Error" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Exec" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.FindAppConfigFile" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.FindUnderPath" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GenerateResource" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GetAssemblyIdentity" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GetFrameworkPath" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GetFrameworkSdkPath" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.LC" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.MakeDir" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Message" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.MSBuild" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.ReadLinesFromFile" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.RemoveDir" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.RemoveDuplicates" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.ResolveAssemblyReference" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.SignFile" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Touch" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Vbc" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Warning" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.WriteLinesToFile" AssemblyName="Microsoft.Build.Tasks, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</Project>

View File

@@ -0,0 +1,99 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<DefaultLanguageSourceExtension>.cs</DefaultLanguageSourceExtension>
<Language>C#</Language>
</PropertyGroup>
<PropertyGroup>
<DebugSymbols Condition=" '$(DebugType)' == 'none' ">false</DebugSymbols>
<DebugType Condition=" '$(DebugType)' == 'none' "></DebugType>
</PropertyGroup>
<PropertyGroup>
<CreateManifestResourceNamesDependsOn></CreateManifestResourceNamesDependsOn>
<CoreCompileDependsOn></CoreCompileDependsOn>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildToolsPath)\Microsoft.CSharp.targets</MSBuildAllProjects>
</PropertyGroup>
<ItemGroup>
<DocFileItem Include="$(DocumentationFile)" Condition="'$(DocumentationFile)' != ''"/>
</ItemGroup>
<Target
Name="CoreCompile"
Inputs="$(MSBuildAllProjects);@(Compile);@(ManifestResourceWithNoCulture);@(ManifestNonResxWithNoCultureOnDisk);@(CompiledLicenseFile);
$(KeyOriginatorFile);@(ReferencePath);$(Win32Icon);$(Win32Resource)"
Outputs="@(DocFileItem);@(IntermediateAssembly)"
DependsOnTargets="$(CoreCompileDependsOn)"
>
<Csc
AdditionalLibPaths="$(AdditionalLibPaths)"
AddModules="@(AddModules)"
AllowUnsafeBlocks="$(AllowUnsafeBlocks)"
BaseAddress="$(BaseAddress)"
CheckForOverflowUnderflow="$(CheckForOverflowUnderflow)"
CodePage="$(CodePage)"
DebugType="$(DebugType)"
DefineConstants="$(DefineConstants)"
DelaySign="$(DelaySign)"
DisabledWarnings="$(NoWarn)"
DocumentationFile="@(DocFileItem)"
EmitDebugInformation="$(DebugSymbols)"
ErrorReport="$(ErrorReport)"
FileAlignment="$(FileAlignment)"
GenerateFullPaths="$(GenerateFullPaths)"
KeyContainer="$(KeyContainerName)"
KeyFile="$(KeyOriginatorFile)"
LangVersion="$(LangVersion)"
MainEntryPoint="$(StartupObject)"
ModuleAssemblyName="$(ModuleAssemblyName)"
NoConfig="true"
NoLogo="$(NoLogo)"
NoStandardLib="$(NoStdLib)"
Optimize="$(Optimize)"
OutputAssembly="@(IntermediateAssembly)"
PdbFile="$(PdbFile)"
Platform="$(PlatformTarget)"
References="@(ReferencePath)"
ResponseFiles="$(CompilerResponseFile)"
Sources="@(Compile)"
TargetType="$(OutputType)"
TreatWarningsAsErrors="$(TreatWarningsAsErrors)"
UseHostCompilerIfAvailable="$(UseHostCompilerIfAvailable)"
Utf8Output="$(Utf8Output)"
WarningLevel="$(WarningLevel)"
WarningsAsErrors="$(WarningsAsErrors)"
WarningsNotAsErrors="$(WarningsNotAsErrors)"
Win32Icon="$(Win32Icon)"
Win32Resource="$(Win32Resource)"
Resources="@(ManifestResourceWithNoCulture);@(ManifestNonResxWithNoCultureOnDisk);@(CompiledLicenseFile)"
ToolExe="$(CscToolExe)"
ToolPath="$(CscToolPath)" />
</Target>
<Target Name="CreateManifestResourceNames">
<CreateCSharpManifestResourceName Condition="'@(ResxWithNoCulture)' != ''"
ResourceFiles="@(ResxWithNoCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestResourceWithNoCultureName" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(NonResxWithNoCulture)' != ''"
ResourceFiles="@(NonResxWithNoCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestNonResxWithNoCulture" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(ResxWithCulture)' != ''"
ResourceFiles="@(ResxWithCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestResourceWithCultureName" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(NonResxWithCulture)' != ''"
ResourceFiles="@(NonResxWithCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestNonResxWithCulture" />
</CreateCSharpManifestResourceName>
</Target>
<Import Project="Microsoft.Common.targets" />
</Project>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,35 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" >
<UsingTask TaskName="Microsoft.Build.Tasks.AL" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.AssignTargetPath" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.AssignCulture" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.AssignProjectConfiguration" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CallTarget" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CombinePath" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Copy" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CreateCSharpManifestResourceName" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CreateItem" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.CreateProperty" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Csc" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Delete" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Error" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Exec" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.FindAppConfigFile" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.FindUnderPath" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GenerateResource" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GetAssemblyIdentity" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GetFrameworkPath" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.GetFrameworkSdkPath" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.LC" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.MakeDir" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Message" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.MSBuild" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.ReadLinesFromFile" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.RemoveDir" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.RemoveDuplicates" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.ResolveAssemblyReference" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.SignFile" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Touch" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Vbc" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.Warning" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<UsingTask TaskName="Microsoft.Build.Tasks.WriteLinesToFile" AssemblyName="Microsoft.Build.Tasks.v3.5, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</Project>

View File

@@ -0,0 +1,129 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<DefaultLanguageSourceExtension>.cs</DefaultLanguageSourceExtension>
<Language>C#</Language>
</PropertyGroup>
<PropertyGroup>
<DebugSymbols Condition=" '$(DebugType)' == 'none' ">false</DebugSymbols>
<DebugType Condition=" '$(DebugType)' == 'none' "></DebugType>
</PropertyGroup>
<PropertyGroup>
<CreateManifestResourceNamesDependsOn></CreateManifestResourceNamesDependsOn>
<CoreCompileDependsOn></CoreCompileDependsOn>
<MSBuildAllProjects>$(MSBuildAllProjects);$(MSBuildToolsPath)\Microsoft.CSharp.targets</MSBuildAllProjects>
</PropertyGroup>
<PropertyGroup>
<NoCompilerStandardLib Condition="'$(NoCompilerStandardLib)'==''">true</NoCompilerStandardLib>
</PropertyGroup>
<ItemGroup>
<DocFileItem Include="$(DocumentationFile)" Condition="'$(DocumentationFile)' != ''"/>
</ItemGroup>
<Target Name="_AddCorlibReference" DependsOnTargets="GetReferenceAssemblyPaths">
<!--
HACK: We don't yet support property functions, so can't calculate FrameworkPathOverride
by calling ToolLocationHelper.GetPathToStandardLibraries. Instead, we search the framework
directories for mscorlib.dll by constructing a filtered item set, and assume it only has
one item.
-->
<ItemGroup>
<_ExplicitReference Include="@(_TargetFrameworkDirectories->'%(FullPath)\mscorlib.dll')" Condition="Exists('%(FullPath)\mscorlib.dll')">
<Private>false</Private>
</_ExplicitReference>
</ItemGroup>
</Target>
<Target
Name="CoreCompile"
Inputs="$(MSBuildAllProjects);@(Compile);@(ManifestResourceWithNoCulture);@(ManifestNonResxWithNoCultureOnDisk);@(CompiledLicenseFile);
$(KeyOriginatorFile);@(ReferencePath);$(Win32Icon);$(Win32Resource)"
Outputs="@(DocFileItem);@(IntermediateAssembly)"
DependsOnTargets="$(CoreCompileDependsOn)"
>
<Csc
AdditionalLibPaths="$(AdditionalLibPaths)"
AddModules="@(AddModules)"
AllowUnsafeBlocks="$(AllowUnsafeBlocks)"
BaseAddress="$(BaseAddress)"
CheckForOverflowUnderflow="$(CheckForOverflowUnderflow)"
CodePage="$(CodePage)"
DebugType="$(DebugType)"
DefineConstants="$(DefineConstants)"
DelaySign="$(DelaySign)"
DisabledWarnings="$(NoWarn)"
DocumentationFile="@(DocFileItem)"
EmitDebugInformation="$(DebugSymbols)"
ErrorReport="$(ErrorReport)"
FileAlignment="$(FileAlignment)"
GenerateFullPaths="$(GenerateFullPaths)"
KeyContainer="$(KeyContainerName)"
KeyFile="$(KeyOriginatorFile)"
LangVersion="$(LangVersion)"
MainEntryPoint="$(StartupObject)"
ModuleAssemblyName="$(ModuleAssemblyName)"
NoConfig="true"
NoLogo="$(NoLogo)"
NoStandardLib="$(NoCompilerStandardLib)"
Optimize="$(Optimize)"
OutputAssembly="@(IntermediateAssembly)"
PdbFile="$(PdbFile)"
Platform="$(PlatformTarget)"
References="@(ReferencePath)"
ResponseFiles="$(CompilerResponseFile)"
Sources="@(Compile)"
TargetType="$(OutputType)"
TreatWarningsAsErrors="$(TreatWarningsAsErrors)"
UseHostCompilerIfAvailable="$(UseHostCompilerIfAvailable)"
Utf8Output="$(Utf8Output)"
WarningLevel="$(WarningLevel)"
WarningsAsErrors="$(WarningsAsErrors)"
WarningsNotAsErrors="$(WarningsNotAsErrors)"
Win32Icon="$(Win32Icon)"
Win32Resource="$(Win32Resource)"
Resources="@(ManifestResourceWithNoCulture);@(ManifestNonResxWithNoCultureOnDisk);@(CompiledLicenseFile)"
ToolExe="$(CscToolExe)"
ToolPath="$(CscToolPath)" />
</Target>
<Target Name="CreateManifestResourceNames">
<CreateCSharpManifestResourceName Condition="'@(ResxWithNoCulture)' != ''"
ResourceFiles="@(ResxWithNoCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestResourceWithNoCultureName" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(NonResxWithNoCulture)' != ''"
ResourceFiles="@(NonResxWithNoCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestNonResxWithNoCulture" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(ResxWithCulture)' != ''"
ResourceFiles="@(ResxWithCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestResourceWithCultureName" />
</CreateCSharpManifestResourceName>
<CreateCSharpManifestResourceName Condition="'@(NonResxWithCulture)' != ''"
ResourceFiles="@(NonResxWithCulture)" RootNamespace="$(RootNamespace)">
<Output TaskParameter = "ManifestResourceNames" ItemName = "ManifestNonResxWithCulture" />
</CreateCSharpManifestResourceName>
</Target>
<Import Project="Microsoft.Common.targets" />
<PropertyGroup Condition="'$(NoCompilerStandardLib)'=='true' and '$(NoStdLib)'!='true'">
<ResolveAssemblyReferencesDependsOn>$(ResolveAssemblyReferencesDependsOn);_AddCorlibReference</ResolveAssemblyReferencesDependsOn>
</PropertyGroup>
<PropertyGroup>
<TargetFrameworkMonikerAssemblyAttributeText Condition="'$(TargetFrameworkMoniker)' != '' and '$(TargetingClr2Framework)' != 'true'">
// &lt;autogenerated /&gt;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(&quot;$(TargetFrameworkMoniker)&quot;, FrameworkDisplayName = &quot;$(TargetFrameworkMonikerDisplayName)&quot;)]
</TargetFrameworkMonikerAssemblyAttributeText>
</PropertyGroup>
</Project>

Some files were not shown because too many files have changed in this diff Show More