2011-03-01  Ankit Jain  <radical@corewars.org>

	[xbuild] Fix warnings.

2011-03-01  Ankit Jain  <radical@corewars.org>

	[xbuild] Fix assembly name comparison when resolving references.

	AssemblyResolver.cs (AssemblyNamesCompatible): If either of the
	references don't have a public key token, then ignore that.

2011-03-01  Ankit Jain  <radical@corewars.org>

	[xbuild] Vbc task - make error column check a little non-specific.

2011-03-01  Ankit Jain  <radical@corewars.org>

	[xbuild] Exec task - add support for custom error/warning regex.

	Add 4.0 api, CustomErrorRegularExpression and
	CustomWarningRegularExpression.

2011-02-28  Ankit Jain  <radical@corewars.org>

	[xbuild] ResolveAssemblyReference - log task parameters

2011-02-28  Ankit Jain  <radical@corewars.org>

	[xbuild] ResolveAssemblyReference - add missing api.

2011-02-28  Ankit Jain  <radical@corewars.org>

	[xbuild] GetReferenceAssemblyPaths - add missing license header.

2011-02-28  Ankit Jain  <radical@corewars.org>

	[xbuild] Add support for multi-targeting arbitrary frameworks.

	ToolsVersion 4.0 supports targeting arbitrary frameworks defined
	by FrameworkList.xml files and referenced by
	$(TargetFrameworkMoniker), which is of the format:
	Identifier,Version=<version>[,Profile=<profile>]

	built as:
	$(TargetFrameworkIdentifier),Version=$(TargetFrameworkVersion)[,Profile=$(TargetFrameworkProfile)]

	eg. '.NETFramework,Version=v4.0' .

	Frameworks are searched for in (order):

	1. Paths specified in the environment variable
	$XBUILD_FRAMEWORK_FOLDERS_PATH 2.
	/Library/Frameworks/Mono.framework/External/xbuild-frameworks on
	Mac OSX. 3. MSBuild property $(TargetFrameworkRoot) 4.
	$prefix/lib/mono/xbuild-frameworks (default location)

	.NET frameworks 2.0/3.0/3.5/4.0 have corresponding
	FrameworkList.xml files now, which allows projects to target them.
	Custom frameworks like MonoDroid can install suitable
	FrameworkList.xml files, and projects can target them using the
	correct $(TargetFrameworkIdentifier) and
	$(TargetFrameworkVersion).

	Update man page.

2011-02-28  Ankit Jain  <radical@corewars.org>

	[xbuild] Add missing property to Error/Warning tasks.

2011-02-24  Ankit Jain  <radical@corewars.org>

	* Microsoft.Build.Tasks/Microsoft.Build.Tasks/AssemblyResolver.cs
	(GetAssemblyNameFromFile): Rename to ..
	(TryGetAssemblyNameFromFile): .. this, to make it consistent with
	the similar method TryGetAssemblyNameFromFullName . Track api
	changes. *
	Microsoft.Build.Tasks/Microsoft.Build.Tasks/ResolveAssemblyReference.cs:
	Track api changes.

2011-02-24  Ankit Jain  <radical@corewars.org>

	[xbuild] Fix bug #674630.

	Handle errors in trying to create AssemblyName from invalid full
	names.

2011-02-15  Ankit Jain  <radical@corewars.org>

	[xbuild] Fix bug #671700, resource naming in presence of "Link".

	AssignTargetPath.cs: If 'Link' metadata is present, then use that
	as the target path.

	Add relevant test.

2011-02-11  Ankit Jain  <radical@corewars.org>

	[xbuild] Update Utilities.FromMSBuildPath from monodevelop.

	Updating FromMSBuildPath also fixes a bug on windows.

2011-01-11  Ankit Jain  <radical@corewars.org>

	[xbuild] Copy metadata from Project items to target outputs.

	Copy metadata from Project items to the corresponding target
	outputs in MSBuild task.

	Fix the corresponding test also.

2011-01-11  Ankit Jain  <radical@corewars.org>

	[xbuild] Fix bug #663180, second part.

	Fix the way RunningOnMac is detected (use `uname`=="Darwin"),
	thanks to Michael Hutchinson. And use
	"/Library/Frameworks/Mono.framework/External/pkgconfig" as a
	search path for pkg-config files on MacOSX.

2011-01-10  Ankit Jain  <radical@corewars.org>

	[xbuild] Sync *PcFileCache.cs changes from monodevelop.

2011-01-05  Ankit Jain  <radical@corewars.org>

	[xbuild] Fix bug #662355.

	Support reference aliases in Csc task.

2010-11-10  Ankit Jain  <radical@corewars.org>

	[xbuild] Emit /platform: for *mcs

	Emit /platform:foo for the *mcs. Based on patch from
	technomage1972 <dellis1972@googlemail.com> .

2010-09-16  Ankit Jain  <radical@corewars.org>

	[xbuild] Use files referenced by resx for dependency check.

	For .resx resource files, check files referenced by the resx file
	also, to determine whether to resgen it or not.

	IsResgenRequired () has been taken from MonoDevelop
	(main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1DotNetProjectHandler.cs)

2010-09-15  Ankit Jain  <radical@corewars.org>

	[xbuild] Add ToolTask.EnvironmentVariables property.

2010-08-31  Ankit Jain  <radical@corewars.org>

	[xbuild] Task 'Touch' should pass even if the file already exists.

	Microsoft.Build.Tasks/Microsoft.Build.Tasks/Touch.cs: Task should
	'succeed' even if the files already exist.

2010-08-31  Ankit Jain  <radical@corewars.org>

	[xbuild] Quote filenames for resgen.

	Microsoft.Build.Tasks/Microsoft.Build.Tasks/GenerateResource.cs:
	Quote filenames passed to resgen.

2010-08-18  Ankit Jain  <radical@corewars.org>

	[xbuild] Add env var to dump details of reference resolution.

	If xbuild is unable to resolve a reference, then it dumps details
	of why it failed. This adds a env var
	XBUILD_LOG_REFERENCE_RESOLVER, which if set, logs those details of
	why a particular search path was used to resolve the reference.

	Update the man page also.

2010-08-03  Ankit Jain  <radical@corewars.org>

	[xbuild]When invoking resgen, set MONO_IOMAP only if its not
	already set.

	Microsoft.Build.Tasks/Microsoft.Build.Tasks/GenerateResource.cs:
	Set MONO_IOMAP only if its unset, allowing it to be set from
	command line etc.

2010-06-10  Ankit Jain  <jankit@novell.com>

	* Csc.cs: Quote -define: arguments.

2010-06-09  Ankit Jain  <jankit@novell.com>

	* ToolTask.cs: Don't check for tool's existence, as we might
	not have the full path.

2010-05-28  Ankit Jain  <jankit@novell.com>

	* AssemblyResolver.cs: Add some comments.

2010-05-28  Ankit Jain  <jankit@novell.com>

	* AssemblyResolver.cs (FindInDirectory): Add a 'specific_version'
	parameter. Look for reference.{dll|exe} instead of checking all
	files in the directory. Compare assembly names only if
	specific_version is true.
	(ResolveHintPathReference): Extract code to check and compare assembly
	names to ..
	(ResolvedReferenceFromPath): .. this.
	(AssemblyNamesCompatible): Change default value of @specificVersion to
	true.
	Track api changes.
	* ResolveAssemblyReference.cs (ResolveReference): Specify
	'specific_version' in case of SearchPath.Directory.
	(TryGetSpecificVersionValue): msbuild seems to look only for ',' in
	the reference, instead of checking whether the assembly is strong
	named.
	(TryGetResolvedReferenceByAssemblyName): Track api changes.

2010-05-28  Ankit Jain  <jankit@novell.com>

	* AssemblyResolver.cs (PopulateTargetFrameworkAssemblies):
	Handle invalid dll, add a null check.

2010-04-10  Ankit Jain  <jankit@novell.com>

	* GetFrameworkPath.cs (FrameworkVersion40Path): New.

2010-04-10  Ankit Jain  <jankit@novell.com>

	* Copy.cs: Cleanly log errors, instead of throwing exceptions.

2010-04-10  Ankit Jain  <jankit@novell.com>

	* Vbc.cs (LogEventsFromTextOutput):
	* ToolTask.cs (LogEventsFromTextOutput): Emit the messages
	that don't match the error regex, as is.

2010-04-08  Ankit Jain  <jankit@novell.com>

	* Copy.cs: Handle non-existant source files.

2010-04-08  Ankit Jain  <jankit@novell.com>

	Fix bug #594541
	* Vbc.cs (LogEventsFromTextOutput): Override and correctly parse
	output. Taken regex from monodevelop for this.

2010-04-08  Ankit Jain  <jankit@novell.com>

	* Vbc.cs (ValidateParameters): Always return true, dummy implementation.

2010-04-07  Ankit Jain  <jankit@novell.com>

	* MSBuild.cs: Emit global properties, if any. Sort the property
	list.

2010-04-03  Ankit Jain  <jankit@novell.com>

	* Csc.cs: Use dmcs as the compiler for 4.0 profile.
	* MSBuild.cs (ToolsVersion): New.
	Use toolsVersion for building.

2010-02-10  Ankit Jain  <jankit@novell.com>

	* GenerateResource.cs (CompileResourceFile): Check File.Exists
	for source file.
	Don't build if the target is newer than the source file.
	(Execute): Continue building all the resources, even if there
	are failures for some files.

2010-02-10  Ankit Jain  <jankit@novell.com>

	Fix bug #558739.
	* GenerateResource (Resgen): New. Internal task to run resgen
	with MONO_IOMAP=drive .
	(Execute): Use the new Resgen task to compile the resources.

2010-02-06  Ankit Jain  <jankit@novell.com>

	* LC.cs: New.

2010-02-05  Ankit Jain  <jankit@novell.com>

	Fix bug #576579.
	* CreateManifestResourceName.cs: Use TargetPath metadata, as the link
	name.
	* CreateCSharpManifestResourceName.cs:
	* CreateVisualBasicManifestResourceName.cs: Prefer linkname over
	filename, if available.

2010-02-04  Ankit Jain  <jankit@novell.com>

	* WriteLinesToFile.cs: Delete the file if there is nothing to
	be written and overwrite==true.

2010-02-02	Rodrigo B. de Oliveira	<rodrigo@unity3d.com>

	* AssemblyResolver.cs:
		guard against non existing framework directory
		(for scenarios where lib/mono/3.5 is not available).

2009-12-22  Ankit Jain  <jankit@novell.com>

	Fix bug #565849.
	* CreateItem.cs: Use DirectoryScanner to handle wildcards.
	(IsExcluded): Remove.

2009-11-26  Ankit Jain  <jankit@novell.com>

	* ManagedCompiler.cs (AddResponseFileCommands): *mcs doesn't
	support /debug:pdbonly, so map it to /debug:full .

2009-11-10  Ankit Jain  <jankit@novell.com>

	* ToolTask.cs (ToolExe): New.
	* Csc.cs:
	* AL.cs: Use ToolExe instead of ToolName to construct
	tool's full path.

2009-11-09  Ankit Jain  <jankit@novell.com>

	* GetFrameworkPath.cs (FrameworkVersion11Path):
	(FrameworkVersion20Path):
	(FrameworkVersion30Path):
	(FrameworkVersion35Path): New.

2009-10-13  Ankit Jain  <jankit@novell.com>

	* ResolveAssemblyReference.cs: Fix warnings.

2009-10-13  Ankit Jain  <jankit@novell.com>

	* ResolveAssemblyReference.cs: Log only unique conflict warnings.

2009-10-12  Ankit Jain  <jankit@novell.com>

	* ResolveAssemblyReference.cs: Remove unnecessary tab in the warning
	messages.

2009-10-12  Ankit Jain  <jankit@novell.com>

	* MSBuild.cs (Execute): Handle build errors.

2009-10-09  Ankit Jain  <jankit@novell.com>

	* Exec.cs (AddCommandLineCommands): Add '/q' for cmd.exe, to
	turn 'echo off'. And make sure the script file on windows, has
	a '.bat' extension, otherwise cmd.exe opens it in a text editor.

2009-10-09  Ankit Jain  <jankit@novell.com>

	Fix bug #545703.
	* Exec.cs (Command): On unix, change CRLF to CR.

2009-10-08  Ankit Jain  <jankit@novell.com>

	* ResolveAssemblyReference.cs: Don't resolve any dependencies for
	assemblies resolved from {PkgConfig}. Honor parent's CopyLocal for
	dependencies.

2009-10-08  Ankit Jain  <jankit@novell.com>

	* MSBuild.cs (Execute): Don't share target output items,
	always create a copy.

2009-10-08  Ankit Jain  <jankit@novell.com>

	* RemoveDuplicates.cs: Use item's ItemSpec as the key.

2009-10-07  Ankit Jain  <jankit@novell.com>

	* ManagedCompiler.cs (HandleTaskExecutionErrors): Log error if
	required.

2009-10-06  Ankit Jain  <jankit@novell.com>

	* Exec.cs (ExecuteTool): Use DeleteTempFile instead of File.Delete
	(HandleTaskExecutionErrors): Log error, if required.
	* MSBuild.cs: Don't log error.
	* Warning.cs: Don't log if @text is empty.

2009-09-29  Ankit Jain  <jankit@novell.com>

	* Exec.cs: Write the commands, which can be multiline,
	to a temporary file, and execute that with "cmd.exe /c"
	on windows and "sh" on non-windows.
	(LogToolCommand): Override, and emit the commands instead
	of the actual args passed to the shell.

2009-09-28  Ankit Jain  <jankit@novell.com>

	* WriteLinesToFiles.cs (Execute): Handle empty list of
	lines.

2009-09-25  Ankit Jain  <jankit@novell.com>

	* FindAppConfigFile.cs: New.

2009-09-24  Ankit Jain  <jankit@novell.com>

	* ReadLinesFromFile.cs (Execute): Don't do anything, if
	file is non-existant.

2009-09-24  Ankit Jain  <jankit@novell.com>

	* ToolTaskExtension.cs (HasLoggedErrors): Override.

2009-09-23  Ankit Jain  <jankit@novell.com>

	* MSBuild.cs (BuildInParallel): Add missing property.

2009-09-10  Ankit Jain  <jankit@novell.com>

	* AssemblyResolver.cs: Move the SearchLogger to be a list of
	strings, so that it can be emitted with correct indentation.
	(SearchLogger): Remove.
	(LogSearchMessage): New.
	(LogSearchLoggerMessages): New.
	* ResolveAssemblyReference.cs: Track api changes.

2009-09-01  Ankit Jain  <jankit@novell.com>

	* ResolveAssemblyReference.cs (ResolveReference): targetFrameworkDirectories
	can be null.

2009-08-28  Ankit Jain  <jankit@novell.com>

	* AssignCulture.cs, AssignTargetPath.cs,
	CallTarget.cs, CombinePath.cs, Copy.cs,
	CreateItem.cs, CreateManifestResourceName.cs,
	Delete.cs, Error.cs, FindUnderPath.cs,
	GenerateResource.cs, MSBuild.cs, MakeDir.cs,
	Message.cs, RemoveDir.cs, RemoveDuplicates.cs,
	ResolveAssemblyReference.cs, Touch.cs,
	WriteLinesToFiles.cs: Add null checks and array
	length checks.

2009-08-24  Ankit Jain  <jankit@novell.com>

	* LibraryPcFileCache.cs: New. From monodevelop.
	* PcFileCache.cs: Update from monodevelop, see r140528.
	* AssemblyResolver.cs: Track api changes.

2009-08-24  Ankit Jain  <jankit@novell.com>

	* CreateManifestResourceName.cs (GetResourceIdFromFileName): Spaces
	in folder names should be converted to '_'.

2009-08-18  Ankit Jain  <jankit@novell.com>

	* TaskLoggingHelperExtensios.cs (.ctor): Mark internal.

2009-08-18  Ankit Jain  <jankit@novell.com>

	* PcFileCache.cs (PackageInfo): Mark internal.

2009-08-18  Ankit Jain  <jankit@novell.com>

	* AssemblyResolver.cs (FindInTargetFramework): Perform case insensitive
	assembly name comparison. Use the new AssemblyNamesCompatible api.
	(AssemblyNamesCompatible): Add new overload with a 'ignoreCase' param.

2009-08-17  Ankit Jain  <jankit@novell.com>

	* AssemblyResolver.cs (TargetFrameworkAssemblies..ctor): Make assembly
	name lookups for target framework assemblies, case insensitive. Helps
	with cases like "System.configuration", which vs.net is known to emit.

2009-08-14  Ankit Jain  <jankit@novell.com>

	* PcFileCache.cs: New. From monodevelop.
	* AssemblyResolver.cs (ResolvePkgConfigReference): New. Use PcFileCache
	to resolve assembly references.
	(AssemblyNamesCompatible): If SpecificVersion is false, then compare
	only simple names.
	(GetResolvedReference): Rename default_value to default_copy_local_value.
	(Cache): New.
	(PcFileCacheContext): New.
	(SearchPath): Add 'PkgConfig' to the enum.
	* ResolveAssemblyReference.cs: Add support for '{PkgConfig}'. Update
	messages.
	* ResolvedReference.cs (FoundInSearchPathToString): Create from ..
	(FoundInSearchPathAsString): .. this. Change this to a property to
	allow custom "found in .. " messages.

2009-07-31  Ankit Jain  <jankit@novell.com>

	* MSBuild.cs (Execute): Log error if the file doesn't exist.

2009-07-30  Ankit Jain  <jankit@novell.com>

	* ResolvedReference.cs (.ctor): Set 'OriginalItemSpec' and 'ResolvedFrom',
	required for IDE integration.
	* AssemblyResolver.cs (GetResolvedReference): All the original metadata
	should be retained. Track api changes.

2009-07-30  Ankit Jain  <jankit@novell.com>

	* ReadLinesFromFile.cs (Execute): Log a warning instead of an error
	if unable to read from the file. Fix a null check. Always return
	true.

2009-07-30  Ankit Jain  <jankit@novell.com>

	* Delete.cs (Execute): Log a message when deleting a file.

2009-07-28  Ankit Jain  <jankit@novell.com>

	* Exec.cs (AddCommandLineCommands): First word from @command is treated
	as exec name, and rest as arguments. Extract arguments here.
	(ExecuteTool): Don't ignore params.
	(GenerateFullPathToTool): Extract first word as tool name.
	(HandleTaskExecutionErrors): Honor IgnoreExitCode property.
	(LogEventsFromTextOutput): Log as messages.
	* ManagedCompiler.cs (HandleTaskExecutionErrors): Implement.

2009-07-23  Ankit Jain  <jankit@novell.com>

	* AssignProjectConfiguration.cs (Execute): Implement.

2009-07-22  Ankit Jain  <jankit@novell.com>

	Fix bug #517974.
	* ResolvedReference.cs (AssemblyName): New.
	(IsPrimary): New. Primary (eg. specified in the project file) or
	dependent reference.
	(FoundInSearchPathAsString): New.
	* AssemblyResolver.cs (GetResolvedReference): Add a 'assembly name'
	param for the new field in ResolvedReference.
	(AssemblyNamesCompatible): Fix the check for public key token.
	Track api changes.

	* ResolveAssemblyReference.cs: Keep track of resolved assemblies,
	prevent duplicate references and other files.
	Process dependencies after resolving all the primary references.
	Search for dependencies in parent assembly's dir first and then
	the specified search paths.
	Detect assembly version conflicts and try to resolve.
	Improve logged messages.
	(PrimaryReference): New.
	(ResolveAssemblyReferenceHelper.AddUniqueFile): New extension method.

2009-07-16  Ankit Jain  <jankit@novell.com>

	Fix bug #519922.

	* AssemblyResolver.cs (FindInDirectory): Try the @reference as a
	filename as it is, or with different @file_extensions.
	If @reference is a assembly name, then look for *.@file_extensions
	for target assembly.
	(GetAssemblyNameFromFile): Log FileNotFoundException and BadImageFormatException
	separately, instead of a single unclear message.

	Change all uses of Assembly.GetAssemblyName with GetAssemblyNameFromFile
	which does the required error checking and logging.

2009-06-12  Ankit Jain  <jankit@novell.com>

	* Utilities.cs: New.
	* AL.cs, AspNetCompiler.cs, Csc.cs,
	SGen.cs, Vbc.cs (ToolName): Append ".bat" when running
	on windows.

2009-06-09  Ankit Jain  <jankit@novell.com>

	* MSBuild.cs (Execute): Copy metadata from the @Projects items
	to the target outputs.

2009-06-08  Ankit Jain  <jankit@novell.com>

	* ResolvedReference.cs: Add missing file.

2009-06-08  Ankit Jain  <jankit@novell.com>

	* AssignCulture.cs (TrySplitResourceName): Reset culture arg to null
	if returning false.
	* CreateCSharpManifestResourceName.cs: Set culture to null if the
	culture was invalid.

2009-06-08  Ankit Jain  <jankit@novell.com>

	* ResolvedReference.cs: New.
	* AssemblyResolver.cs (GetResolvedReference): New. Honor's the
	'Private' metadata and sets CopyLocal.
	(SearchPath): New. Used to track how the reference was resolved.
	(IsStrongNamed): Fix potential null ref.
	All the assembly resolution methods now return ResolvedReference
	instead of strings, to aid in proper CopyLocal behavior and
	dependency resolution.
	* ResolveAssemblyReference.cs: Add support for finding related files,
	satellite files, resolving dependencies, copy local files.
	Resolve files specified in "AssemblyFiles" param also, used to resolve
	project references and dependencies.

2009-06-07  Ankit Jain  <jankit@novell.com>

	* Csc.cs (AddResponseFileCommands): Split DefineConstants on space also.

2009-06-07  Ankit Jain  <jankit@novell.com>

	* AssignTargetPath.cs (Execute): Expand incoming path to absolute
	path, and correctly extract relative path (skipping over the preceding
	dir separator).

2009-06-07  Ankit Jain  <jankit@novell.com>

	* Copy.cs (CopyFile): Don't copy if the source and dest are the same.

2009-04-27  Ankit Jain  <jankit@novell.com>

	* CreateCSharpManifestResourceName.cs (GetResourceIdFromFileName): Move
	to ..
	* CreateManifestResourceName.cs: .. here.
	* CreateVisualBasicManifestResourceName.cs: Implement.

2009-04-27  Ankit Jain  <jankit@novell.com>

	* Vbc.cs (AddResponseFileCommands): Escape DefineConstants as it can
	contain double quotes itself. Fix /doc switch.
	(EscapeDoubleQuotes): New.

2009-03-22  Daniel Nauck  <dna@mono-project.de>

	* GenerateResource.cs: Set BasePath property of
		ResXResourceReader class.
		See: http://lists.ximian.com/pipermail/mono-devel-list/2009-March/031459.html

2009-03-19  Ankit Jain  <jankit@novell.com>

	Fix bugs #323833 and #484384.
	* AssemblyResolver.cs (GatherGacAssemblies): Handle duplicate entries.
	These seem to be old copies of the assemblies with old keys. Pick
	the one with the latest timestamp.

2009-03-03  Ankit Jain  <jankit@novell.com>

	Fix bug #480856.
	* Csc.cs (AddResponseFileCommands): Split DefineConstants on ';'.

2009-02-26  Ankit Jain  <jankit@novell.com>

	* MakeDir.cs (Execute): Don't create+log if dir already exists.

2009-02-25  Ankit Jain  <jankit@novell.com>

	* AL.cs (Execute): Use ToolTask.Execute instead of doing our own.

2009-02-25  Ankit Jain  <jankit@novell.com>

	* AssemblyResolver.cs:
	* ResolveAssemblyReference.cs: Honor SpecificVersion. Emit detailed error
	messages incase assembly resolution fails. Make specific version
	strict.

2009-02-25  Ankit Jain  <jankit@novell.com>

	* ManagedCompiler.cs (AddResponseFileCommands): Use LogicalName for
	embedded resources, wherever available.
	* CreateCSharpManifestResourceName.cs (GetResourceIdFromFileName): Use
	Path.Combine instead of hardcoding "\".

2009-02-25  Ankit Jain  <jankit@novell.com>

	* MSBuild.cs (Execute): Reset current directory back after every
	project's execution.

2009-02-21  Ankit Jain  <jankit@novell.com>

	Fix bug #458916.
	* Copy.cs: CopiedFiles and DestinationFiles should have target paths
	instead of source. Also, the metadata should get retained from source
	items. Based on a patch by Jeffrey Richardson <themann@indyfantasysports.net>
	Refactor a bit to remove code duplication.

2009-02-21  Ankit Jain  <jankit@novell.com>

	* MSBuild.cs (SplitPropertiesToDictionary): Split into exactly 2 parts.

2009-02-11  Leszek Ciesielski <skolima@gmail.com>

	* ResolveAssemblyReference.cs : AllowedRelatedFileExtensions stub

2009-02-02  Ankit Jain  <jankit@novell.com>

	* MSBuild.cs (Execute): Disable incorrect 'rebaseOutputs' behavior.

2009-02-02  Ankit Jain  <jankit@novell.com>

	* ResolveAssemblyReference.cs: Honor SearchPaths and the special
	items like '{HintPathFromItem}', '{TargetFrameworkDirectory}' etc.
	* AssemblyResolver.cs: Add api for more specific search, like search
	in a directory, target frameworks, gac etc.

2009-02-01  Ankit Jain  <jankit@novell.com>

	* CallTarget.cs: Copy all items from target to TargetOutputs.

2009-02-01  Ankit Jain  <jankit@novell.com>

	* Csc.cs (AddResponseFileCommands):
	* ManagedCompiler.cs (AddResponseFileCommands): 'AddModules' and
	'AdditionalLibPaths' can be empty.

2009-01-30  Ankit Jain  <jankit@novell.com>

	* Copy.cs (Execute): Use for loop instead of enumerators.
	sourceFiles and destinationFiles can be null, handle that.
	Create new directory if required.

2009-01-27  Ankit Jain  <jankit@novell.com>

	* Delete.cs (Execute): Skip non-existant files.

2009-01-06  Ankit Jain  <jankit@novell.com>

	* CreateManifestResourceName.cs (Execute): Use full path, also helps
	with debugging.

2008-12-17  Ankit Jain  <jankit@novell.com>

	* Copy.cs: Always overwrite destination files.

2008-12-17  Ankit Jain  <jankit@novell.com>

	* GenerateResource.cs (Execute): Items in 'OutputResources' correspond to
	items in 'Sources', handle correctly.

2008-12-12  Ankit Jain  <jankit@novell.com>

	* CreateManifestResourceName.cs: Implement.
	* CreateCSharpManifestResourceName.cs: Implement.

2008-11-27  Ankit Jain  <jankit@novell.com>

	* AssignCulture.cs (Execute): Emit "Culture" metadata also.

2008-11-23  Ankit Jain  <jankit@novell.com>

	* AssignCulture.cs (Execute): Implement.

2008-11-22  Ankit Jain  <jankit@novell.com>

	* AssignTargetPath.cs (Execute): Implement.

2008-11-21  Ankit Jain  <jankit@novell.com>

	* GenerateResource.cs (Execute): Use for loop instead of manually
	using enumerators.

2008-11-21  Ankit Jain  <jankit@novell.com>

	* CreateItem (Execute): AdditionalMetadata can be null.
	Trim metadata values.
	(IsExcluded): 'exclude' can be null.

2008-10-09  Ankit Jain  <jankit@novell.com>

	* CreateItem.cs (Execute): Implement.

2008-10-01  Ankit Jain  <jankit@novell.com>

	* CallTarget.cs (Execute): Implement.

2008-08-06  Ankit Jain  <jankit@novell.com>

	* Csc.cs (AddResponseFileCommands): Don't quote DefineConstants.
	Correctly handle response filenames and win32 resource switch.

2008-06-02  Atsushi Enomoto  <atsushi@ximian.com>

	* AssemblyResolver.cs : do not crash when there is no mono installed.

2007-05-17  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* ResolveAssemblyReference.cs
	* AssemblyResolver.cs: Resolve HintPath properly.

2007-03-19  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* CombinePath.cs: Implemented.

2007-03-10  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Vbc.cs: Implemented.

2007-03-08  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* MSBuild.cs (Execute): Copy referenced project's dlls to output
	directory.

2007-02-18  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* AssemblyResolver.cs: Resolve HintPath correctly.

2007-02-04  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Delete.cs: Formatting.

2007-02-02  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* AppDomainIsolatedTaskExtension.cs
	* ManagedCompiler.cs: corcompare changes.

2007-02-02  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* ResolveAssemblyReference.cs (Execute): Use Low MessageImportance.

2007-01-29  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* AssemblyResolver.cs: Added.
	* ResolveAssemblyReference.cs: Moved most of code to AssemblyResolver.

2007-01-24  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* GetFrameworkPath.cs
	* GetFrameworkSdkPath.cs: Changed to use ToolLocationHelper instead of
	MonoLocationHelper.

2007-01-06  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* GetAssemblyIdentity.cs
	* ResolveManifestFiles.cs
	* RemoveDuplicates.cs
	* TaskLoggingHelperExtensios.cs: Added

	* SGen.cs: Added missing [Required] and [Output].

2006-12-11  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* RemoveDir.cs (Execute): Don't remove recursively.
	* CreateProperty.cs: Use the same field for both properties.

2006-12-08  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* ManagedCompiler.cs, Csc.cs: Moved some code from
	ManagedCompiler.AddResponseFileCommands to Csc.
	* SGen.cs: Added. It won't work yet.

2006-12-05  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* VCBuild.cs: Changed formatting and changed EnvironmentOverride to
	override from virtual. (corcompare didn't notice the difference)
	* ToolTaskExtension.cs, TaskExtension.cs: Moved ctors to the beginning
	of the file.
	* GenerateDeploymentManifest.cs: Added "using";
	* ManagedCompiler.cs: Set OutputAssembly when it's empty and Sources
	is set.

2006-12-04  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* ManagedCompiler.cs: AddCommandLineCommands (): Changes according to
	new tests. CheckAllReferences (): Added a null check.
	* AL.cs (AddResponseFileCommands): Changes according to new tests.

2006-12-04  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* MSBuild.cs: Added MonoTODO.
	* MakeDir.cs: Added logging.
	* Exec.cs: Added FIXME and commented unused variables.

2006-10-21  Leszek Ciesielski <skolima@gmail.com>

	* CreateTemporaryVCProject.cs:
	* VCBuild.cs:
	* UpdateManifest.cs:
	* Vbc.cs:
	* GenerateDeploymentManifest.cs: added class stubs
	* ToolTaskExtension.cs:
	* TaskExtension.cs: changed constructor to internal

2006-10-14  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Exec.cs: Added AddCommandLineCommands ().
	* GenerateBootstrapper.cs: Added missing attributes.
	* GenerateManifestBase.cs: Added missing attributes.
	* GenerateApplicationManifest.cs: Added ValidateInputs ().

2006-10-10  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* FormatUrl.cs
	* ResolveAssemblyReference.cs
	* ResolveProjectBase.cs
	* AssignTargetPath.cs
	* CallTarget.cs
	* AssignCulture.cs
	* FormatVersion.cs
	* AssignProjectConfiguration.cs
	* CreateManifestResourceName.cs: Added missing [Output] and
	[Required].

2006-10-06  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* MSBuild.cs: Added error logging.
	* Copy.cs: Fixed runtime cast exception.

2006-09-30  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* ResolveAssemblyReference.cs: Added.

2006-09-20  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* CreateProperty.cs: First implementation.

2006-08-15  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* MakeDir.cs, Touch.cs, ReadLinesFromFile.cs, RemoveDir.cs, Delete.cs,
	Message.cs, FindUnderPath.cs, GenerateResource.cs, Copy.cs: Start to
	use generics.

2006-07-17  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* ManagedCompiler.cs: TargetType.Get: added null check.

2006-06-25  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Csc.cs: Changed ToolName to make it use gmcs.
	* ExtractedClassName.cs: Fixed a typo.

2006-06-22  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* ManagedCompiler.cs: Change TargetType to return lower case text.

2006-06-22  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* FormatUrl.cs, CreateVisualBasicManifestResourceName.cs,
	GenereateBootstrapper.cs, ExtractedClassName.cs,
	GenerateManifestBase.cs, FormatVersion.cs,
	CreateManifestResourceName.cs, CreateCSharpManifestResourceName.cs,
	GenerateApplicationManifest.cs: Added stubs.
	* Exec.cs: Removed some assignments.
	* CreateItem.cs: Formatting.

2006-06-17  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Error.cs: Added null check and changed return value of Execute () to
	false.
	* ResolveProjectBase.cs, AssignTargetPath.cs, CallTarget.cs,
	AspNetCompiler.cs, AssignCulture.cs, AssignProjectConfiguration.cs:
	Added stubs.

2006-05-26  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* RegisterAssembly.cs, SignFile.cs, GenerateTrustInfo.cs,
	CreateItem.cs, UnregisterAssembly.cs, Csc.cs: Changed various return
	null and return true to NotImplementedException;
	* Error.cs: Changed to use helpKeyword and code.
	* GetFrameworkSdkPath.cs, GetFrameworkPath.cs: Changed to use
	Mono.XBuild.Utilities.MonoLocationHelper.
	* Message.cs: Fixed to use proper MessageImportance and removed error
	logging.
	* ManagedCompiler.cs: Added MonoTODO and ListHasNoDuplicateItems ().
	* GenerateResource.cs: Fixed wrong if block.

2006-05-22  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Message.cs: Made messageImportance local variable.

2006-05-03  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* MakeDir.cs: Removed warning.
	* Exec.cs: Fixed commmand execution.
	* ReadLinesFromFile.cs: Formatting.

2006-04-14  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* GenerateResource.cs: Added authors of monoresgen.

2006-03-18  Marek Sieradzki  <marek.sieradzki@gmail.com> 

	* ManagedCompiler.cs: Fixed a typo.
	* AssemblyInfo.cs: Removed AllowPartiallyTrustedCallersAttribute.

2006-03-11  Marek Sieradzki  <marek.sieradzki@gmail.com> 

	* MonoTODOAttribute.cs: Removed.
	* CombinePath.cs, CreateProperty.cs, GenerateResources.cs,
	SignFile.cs: Added missing attributes.
	* Warning.cs: Added missing properties.
	* WriteLinesToFiles.cs: Compressed properties.
	* Exec.cs, ManagedCompiler.cs: Added missing methods.

2006-02-26  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* CombinePath.cs: Added.

2006-02-26  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* AL.cs: Added Output attribute to OutputAssembly.
	* AppDomainIsolatedTaskExtension.cs: Added LoadInSeparateAppDomain
	attribute.
	* Copy.cs: Added Output attribute to DestinationFiles and Required to
	SourceFiles.
	* CreateItem.cs, CreateProperty.cs: Changed string to string[].
	* Csc.cs: Added PdbFile property.
	* Error.cs: Added Code and HelpKeyword properties.
	* Exec.cs: Changed TaskExtension to ToolTaskExtension.
	* GenerateResource.cs: Added NeverLockType and PublicClass properties.
	* GenerateTrustInfo.cs: Added Required to TargetZone and Output to
	TrustInfoFile.
	* GetFrameworkPath.cs, GetFrameworkSdkPath: Added Output to Path.
	* MSBuild.cs: Changed string to string[].
	* ReadLinesFromFile.cs: Added Required to File.
	* RegiserAssembly.cs: Added AssemblyListFile and CreateCodeBase
	properties.
	* UnregisterAssembly.cs: Added AssemblyListFile property.
	* WriteLinesToFile.cs: Added Required to Lines.

2006-02-25  Marek Sieradzki <marek.sieradzki@gmail.com> 

	* Csc.cs, ManagedCompiler.cs: Changes required by the new API.

2005-09-22  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* MakeDir.cs, AppDomainIsolatedTaskExtension.cs, Touch.cs, Exec.cs,
	RegisterAssembly.cs, Error.cs, ReadLinesFromFile.cs,
	CommandLineBuilderExtension.cs, RemoveDir.cs, ToolTaskExtension.cs,
	TaskExtension.cs, SignFile.cs, Delete.cs, Warning.cs,
	GenerateTrustInfo.cs, GetFrameworkSdkPath.cs, CreateItem.cs,
	Message.cs, ManagedCompiler.cs, UnregisterAssembly.cs,
	WriteLinesToFile.cs, FindUnderPath.cs, AL.cs, MSBuild.cs,
	GenerateResource.cs, CreateProperty.cs, Csc.cs, Copy.cs,
	GetFrameworkPath.cs: Added #if NET_2_0.

2005-09-21  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* ManagedCompiler.cs, Csc.cs: Moved code to ManagedCompiler.
	* MSBuild.cs: Added really simple temporary code.
	* AL.cs: Replaced variables with Bag property.

2005-09-09  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* AppDomainIsolatedTaskExtension.cs: Changed Log property to base.Log
	instead of previous protected log field.

2005-09-03  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Touch.cs: Changed to use full paths and fixed stream closing.
	* ReadLinesFromFile.cs: Formatting.
	* WriteLineToFile.cs: Changed to use full paths.
	* AL.cs: Changed ToolName.

2005-08-30  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Touch.cs: Changed Console.WriteLine to Log.LogErrorFromException.

2005-08-27  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Exec.cs: Removed "exited".
	* AL.cs: Removed Regex.
	* Csc.cs: Changed default GenerateFullPaths to false.

2005-08-24  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Exec.cs: Reformatted and added try/catch.
	* Error.cs, RemoveDir.cs, Warning.cs, Message.cs, FindUnderPath.cs,
	GenerateResource.cs, Copy.cs: Changed to use properties.
	* ToolTaskExtension.cs: Rewritten.
	* TaskExtension.cs: Changed to use base property.
	* GetFrameworkSdkPath.cs: Formatting.
	* ManagedCompiler.cs: Changed to use Bag instead of fields.
	* AL.cs: Moved command line arguments generation to proper method.
	* Csc.cs: Changed to use Bag instead of fields and added support for
	compilation.

2005-08-19  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Exec.cs: Fixed arguments.

2005-08-16  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Exec.cs: Added redirection of output and removed timeout handling.
	* Copy.cs: Formatting.
	* CommandLineBuilderExtension.cs: Formatting.

2005-08-12  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* CommandLineBuilderExtension.cs: Added.
	* ToolTaskExtension.cs, GenerateTrustInfo.cs, GetFrameworkSdkPath.cs,
	CreateItem.cs, ManagedCompiler.cs, AL.cs, MSBuild.cs,
	GenerateResource.cs, Csc.cs, CreateProperty.cs, GetFrameworkPath.cs:
	Updated.

2005-08-11  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* Exec.cs: First implementation.
	* MakeDir.cs, GetFrameworkSdkPath.cs, RegisterAssembly.cs, Message.cs,
	ManagedCompiler.cs, Error.cs, FindUnderPath.cs, RemoveDir.cs, AL.cs,
	ToolTaskExtension.cs, SignFile.cs, Delete.cs, GenerateResource.cs,
	Warnings.cs, Csc.cs, GetFrameworkPath.cs: Various fixes.

2005-08-06  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* CreateItem.cs, CreateProperty.cs, MSBuild.cs,: Initial check-in.
	* Copy.cs, ReadLinesFromFile.cs, TaskExtension.cs, Touch.cs,
	Warning.cs, WriteLinesToFile.cs: First implementation.

2005-07-13  Marek Sieradzki  <marek.sieradzki@gmail.com>

	* AL.cs, AppDomainIsolatedTaskExtension.cs, Copy.cs, Csc.cs,
	Delete.cs, Error.cs, Exec.cs, FindUnderPath.cs, GenerateResource.cs,
	GenerateTrustInfo.cs, GetFrameworkPath.cs, GetFrameworkSdkPath.cs,
	MSBuild.cs, MakeDir.cs, ManagedCompiler.cs, Message.cs,
	MonoTODOAttribute.cs, ReadLinesFromFile.cs, RegisterAssembly.cs,
	RemoveDir.cs, SignFile.cs, TaskExtension.cs, ToolTaskExtension.cs,
	Touch.cs, UnregisterAssembly.cs, Warning.cs, WriteLinesToFile.cs:
	initial check-in
