* Parameters.cs (ParseArguments): If no project file is specified,
[mcs.git] / tools / xbuild / ChangeLog
blob8a1df53eb33dd0333d27ccf89136292c6f7071a9
1 2009-09-24  Ankit Jain  <jankit@novell.com>
3         * Parameters.cs (ParseArguments): If no project file is specified,
4         then look for a .sln or *proj file in the current directory.
6 2009-09-24  Ankit Jain  <jankit@novell.com>
8         * Makefile: Create dir for WebApplication.targets .
9         * Microsoft.Common.targets (_ValidateEssentialProperties): New.
10         (BuildDependsOn): Add _ValidateEssentialProperties, temporary.
11         This should actually work via InitialTargets, which will be fixed
12         in a subsequent commit. Add PrepareForRun.
13         (PrepareForRun): New.
14         * xbuild/Microsoft.WebApplication.targets: New.
16 2009-09-23  Ankit Jain  <jankit@novell.com>
18         * xbuild/Microsoft.Common.targets: Add 'Rebuild' target.
19         Also, set DefaultTargets to "Build".
21 2009-08-26  Ankit Jain  <jankit@novell.com>
23         * xbuild/Microsoft.Common.targets: Remove dummy
24         @(_TargetPathItem), since we support item refs with transforms
25         as a property value.
27 2009-08-26  Ankit Jain  <jankit@novell.com>
29         Fix bug #533903.
30         * xbuild/Microsoft.Common.targets: Support building projects
31         directly from command line. Builds referenced projects. Honors
32         $(BuildingSolutionFile) and $(BuildingInsideVisualStudio) now.
33         Also, clean referenced projects.
35 2009-08-21  Ankit Jain  <jankit@novell.com>
37         Fix bug #531926
38         * xbuild/Microsoft.Common.targets: Add $(ConfigurationName)
39         and $(PlatformName) default values.
40         Move CoreCompile to a Compile target with corresponding
41         Before/After hooks and *DependsOn.
42         Add Pre/PostBuildEvents handling.
44 2009-08-20  Ankit Jain  <jankit@novell.com>
46         Fix bug #532264.
47         * Main.cs: Dont generate .sln.proj, project.Load can handle
48         .sln directly now. Show stack trace for exceptions if logger
49         verbosity is > normal
50         * SolutionParser.cs (ParseSolution): Add a param for a raise
51         warning delegate. Use Dictionary.TryGetValue, key might not
52         be present.
54 2009-08-20  Ankit Jain  <jankit@novell.com>
56         * xbuild/Microsoft.Common.targets (ResolveReferences*): Add
57         a *DependsOn property and Before/After hooks. Change output
58         of ResolvedFiles to @(ReferencePath).
59         * xbuild/Microsoft.CSharp.targets (Csc): Use @(ReferencePath)
60         for references.
62 2009-08-19  Ankit Jain  <jankit@novell.com>
64         * xbuild/Microsoft.Common.targets (ResolveAssemblyReference):
65         Make SearchPaths get value from a property (AssemblySearchPaths)
66         to allow it to be overridden.
68 2009-08-18  Ankit Jain  <jankit@novell.com>
70         * SolutionParser.cs (ParseSolution): Project reference in a project
71         file, but not found in .sln file is ignored. Also, add dependencies
72         specified in the .sln file.
74 2009-08-14  Ankit Jain  <jankit@novell.com>
76         Fix bug #530368.
77         * SolutionParser.cs (AddProjectTargets): If a project name matches one
78         of the targets that we emit (Build/Clean etc), then rename to
79         "Solution:<project name>".
81 2009-08-14  Ankit Jain  <jankit@novell.com>
83         * xbuild/Microsoft.Common.targets (AllowUnsafeBlocks): Don't set any
84         default value.
85         (OutputPath): Set a default value.
86         (DeployOutputFiles): Copy only if something available to copy.
88 2009-08-14  Ankit Jain  <jankit@novell.com>
90         * SolutionParser.cs (ProjectInfo.Dependencies): Change to a dictionary
91         to keep track of corresponding ProjectInfo objects.
92         (ParseSolution): Refactor to populate the ProjectInfo.Dependencies
93         dictionary. Use AddBuildLevels to emit build levels to allow
94         parallel builds.
95         (AddProjectTargets): Dependency's projectInfo is directly available now.
96         (AddBuildLevels): New. Emit items named BuildLevelN, where each level
97         has projects that can be built in parallel. Lower levels represent
98         dependencies for higher levels.
99         (AddSolutionTargets): Instead of using CallTarget, directly use MSBuild
100         task with the new BuildLevelN stuff. Also tell the user about disabled
101         projects or missing project configs.
102         (TopologicalSort): New.
103         (Insert): New. Based on code from monodevelop.
105 2009-08-14  Ankit Jain  <jankit@novell.com>
107         * xbuild/Microsoft.Common.targets (ResolveAssemblyReference): Add
108         '{PkgConfig}' to SearchPaths.
110 2009-07-31  Ankit Jain  <jankit@novell.com>
112         * ErrorUtilities.cs (ShowUsage): Implement.
114 2009-07-30  Ankit Jain  <jankit@novell.com>
116         Fix bug #484771.
117         * xbuild/Microsoft.Common.targets (ResolveAssemblyReference): Add support
118         for $(OutDir).
120 2009-07-30  Ankit Jain  <jankit@novell.com>
122         * ErrorUtilities.cs: Set version to Consts.MonoVersion .
124 2009-07-30  Ankit Jain  <jankit@novell.com>
126         * xbuild/Microsoft.Common.targets (ResolveAssemblyReference): Output
127         ResolvedFiles to @(ReferencePath), required for IDE integration.
129 2009-07-30  Ankit Jain  <jankit@novell.com>
131         * xbuild/Microsoft.Common.targets: Implement 'Clean' target. Currently
132         just handles clean for a full build.
134 2009-07-28  Ankit Jain  <jankit@novell.com>
136         * xbuild/Microsoft.Common.targets: Add missing 'SkipUnchangedFiles=true'
137         for the Copy tasks.
138         (CopyDeployFiles*): Fix typos, Add inputs/outputs for the
139         PreserveNewest case and remove for copy always case.
141 2009-07-23  Ankit Jain  <jankit@novell.com>
143         * xbuild/Microsoft.Common.targets: Oops, forgot to remove some
144         debug stuff.
146 2009-07-23  Ankit Jain  <jankit@novell.com>
148         * Makefile: Create a lib/mono/xbuild directory for xbuild
149         extensions.
151 2009-07-23  Ankit Jain  <jankit@novell.com>
153         * xbuild/Microsoft.Common.targets (AssignProjectConfigurations): New.
154         (ResolveProjectReferences): Add dependency on AssignProjectConfigurations
155         target. Also, set the config and platform properties for the msbuild task
156         being invoked.
157         * xbuild/Microsoft.Common.tasks: Add AssignProjectConfiguration .
159 2009-07-22  Ankit Jain  <jankit@novell.com>
161         * xbuild/Microsoft.VisualBasic.targets (Vbc.References): Remove
162         "@(ChildProjectReferences)" as it gets resolved earlier
163         and is part of @(ResolvedFiles).
165 2009-07-22  Ankit Jain  <jankit@novell.com>
167         * xbuild.Microsoft.CSharp.targets (Csc.References): Remove
168         "@(ChildProjectReferences)" as it gets resolved earlier
169         and is part of @(ResolvedFiles).
171 2009-06-12  Ankit Jain  <jankit@novell.com>
173         * xbuild/Microsoft.Common.targets (ProjectDir): Fix typo.
175 2009-06-12  Ankit Jain  <jankit@novell.com>
177         * xbuild/Microsoft.Common.targets (IntermediateAssembly): Change to
178         an Item list to match msbuild.
179         * xbuild/Microsoft.CSharp.targets (IntermediateAssembly): Update for
180         above changes.
182 2009-06-12  Ankit Jain  <jankit@novell.com>
184         * Parameters.cs (.ctor): Use assembly's location to build
185         path for the default response file.
187 2009-06-08  Ankit Jain  <jankit@novell.com>
189         * xbuild/Microsoft.Common.targets: Use ResolveAssemblyReference
190         to find satellite assemblies, dependent assemblies, dependent
191         files, copy local files etc.
192         Add targets to fetch all this info for all referenced projects,
193         and copy them to the target locations. Also, copy the debug (.mdb)
194         files. Honor, "CopyToOutputDirectory" metadata.
196 2009-06-07  Ankit Jain  <jankit@novell.com>
198         * Parameters.cs (ProcessProperty): Handle invalid syntax.
200 2009-06-07  Ankit Jain  <jankit@novell.com>
202         * SolutionParser.cs (AddGeneralSettings): Don't hardcode the default
203         config/platform. Move to ..
204         (AddDefaultSolutionConfiguration): .. here.
205         (AddCurrentSolutionConfigurationContents): Use the first solution target
206         as the default config/platform or use Debug/anycpu if no config is available.
208 2009-05-20  Jonathan Chambers  <joncham@gmail.com>
210         * SolutionParser.cs (ParseSolution): Ignore vcproj projects in solutions 
211         and issue warning. 
213 2009-04-27  Ankit Jain  <jankit@novell.com>
215         * xbuild/Microsoft.VisualBasic.targets: Update to use
216         CreateVisualBasicManifestResourceName task, and fix compiler params.
218 2009-04-25 Daniel Nauck <dna@mono-project.de>
220         Fix bug #484649:
221         * LoggerInfo.cs: fixed the parsing of the /logger: argument as described in
222         http://msdn.microsoft.com/en-us/library/ms164311.aspx
223         Added logger class detection if it's not explicit specified in the argument.
225 2009-03-19  Ankit Jain  <jankit@novell.com>
227         Fix bug #484773.
228         * Main.cs (Execute): Check whether the project file exists or not.
229         * Parameters.cs (ParseArguments): Handle absolute paths too.
231 2009-03-13  Ankit Jain  <jankit@novell.com>
233         * Main.cs (Execute): Build the project/sln with current directory set to
234         the project file's dir.
235         * SolutionParser.cs (ParseSolution): Project paths are relative to
236         solution directory.
238 2009-03-06  Ankit Jain  <jankit@novell.com>
240         Fix bug #481336.
241         * SolutionParser.cs (AddWarningForMissingProjectConfiguration): New.
242         (AddProjectTargets): Emit warning for missing project configurations.
244 2009-02-26  Ankit Jain  <jankit@novell.com>
246         * xbuild/Microsoft.CSharp.targets (Csc): Fix "Resources" argument to use
247         ManifestNonResxWithCultureOnDisk instead of ManifestResourceWithNoCultureOnDisk.
249 2009-02-26  Ankit Jain  <jankit@novell.com>
251         * xbuild/Microsoft.Common.targets: Make targets extensible. Add
252         before/after hooks.
254 2009-02-25  Ankit Jain  <jankit@novell.com>
256         * xbuild/Microsoft.Common.targets: Use obj/$(Config) as the default intermediate
257         output path, instead of just obj/
259 2009-02-25  Ankit Jain  <jankit@novell.com>
261         * xbuild/Microsoft.Common.targets (CopyNonResxEmbeddedResources): New.
262         (GenerateSatelliteAssemblies): Update to use the new ManifestNonResxWithCultureOnDisk
263         instead of NonResxWithCulture.
264         * xbuild/Microsoft.CSharp.targets (Csc): Fix "Resources" argument to use
265         the new on disk file names instead of original filenames.
267 2009-02-25  Ankit Jain  <jankit@novell.com>
269         * xbuild/Microsoft.Common.targets (GetTargetPath): Add a path separator.
271 2009-02-25  Ankit Jain  <jankit@novell.com>
273         * SolutionParser.cs (ParseSolution): Report warning instead of error
274         for unknown global sections.
276 2009-02-21  Ankit Jain  <jankit@novell.com>
278         * xbuild/xbuild.rsp: Add descriptive comments.
280 2009-02-21  Ankit Jain  <jankit@novell.com>
282         * Parameters.cs (LoadResponseFile): Handle comments.
284 2009-02-20  Ankit Jain  <jankit@novell.com>
286         * SolutionParser.cs (ParseSolution): Ignore solution folders.
288 2009-02-20  Ankit Jain  <jankit@novell.com>
290         * SolutionParser.cs (ParseSolution): Ignore GlobalSection named
291         'NestedProjects'.
293 2009-02-20  Ankit Jain  <jankit@novell.com>
295         * SolutionParser.cs (ParseProjectConfigurationPlatforms): Report missing
296         project guids as Warnings and not errors. Report every missing guid only
297         once.
299 2009-02-20  Ankit Jain  <jankit@novell.com>
301         * SolutionParser.cs (projectRegex): Use '\s' to match whitespace.
303 2009-02-19  Jonathan Chambers  <joncham@gmail.com>
305         * xbuild.csproj: Add.
306         * xbuild.sln: Add.
308 2009-02-13  Jonathan Chambers  <joncham@gmail.com>
310         * SolutionParser.cs: Make Guid Regex case insensitive.
311         Handle project dependencies. The solution has explicit
312         dependencies, but we have to open projects for implicit
313         dependencies (via ProjectReferences).
315 2009-02-13  Jonathan Chambers  <joncham@gmail.com>
317         * Main.cs: Add support for .sln files.
318         * SolutionParser.cs: Class for generating project file
319         from solution file.
320         * xbuild.exe.sources: Added SolutionParser.cs.
322 2009-02-02  Ankit Jain  <jankit@novell.com>
324         * Microsoft.CSharp.targets: Add targets to generate resource ids.
325         * Microsoft.Common.targets: Add targets for generating resources,
326         generate and deploy satellite assemblies, resolve project and assembly
327         references. All intermediate build output goes into a 'obj/' dir by
328         default. 'Clean' target enabled.
330 2008-12-12  Ankit Jain  <jankit@novell.com>
332         * Microsoft.CSharp.targets: Add CreateCSharpManifestResourceName task.
334 2008-11-23  Ankit Jain  <jankit@novell.com>
336         * xbuild/Microsoft.Common.tasks: Add AssignCulture task.
338 2008-10-01  Ankit Jain  <jankit@novell.com>
340         * xbuild/Microsoft.Common.tasks: Add CallTarget and AssignTargetPath task.
342 2007-03-19  Marek Sieradzki  <marek.sieradzki@gmail.com>
344         * xbuild/Microsoft.Common.tasks: Added CombinePath task.
346 2007-03-10  Marek Sieradzki  <marek.sieradzki@gmail.com>
348         * xbuild/Microsoft.Common.tasks: Added Vbc task.
350         * xbuild/Microsoft.VisualBasic.targets: Added CoreCompile target for
351         VB.
353 2007-03-08  Marek Sieradzki  <marek.sieradzki@gmail.com>
355         * Microsoft.CSharp.targets: Add @(ChildProjectReferences) to
356         References.
358         * Microsoft.Common.targets: Add ResolveProjectReferences target.
360 2007-01-23  Marek Sieradzki  <marek.sieradzki@gmail.com>
362         * Makefile: Removed hack.
364 2007-01-23  Marek Sieradzki  <marek.sieradzki@gmail.com>
366         * Makefile: Fix Windows build.
368 2007-01-21  Marek Sieradzki  <marek.sieradzki@gmail.com>
370         * xbuild/Microsoft.VisualBasic.targets: Added.
372 2007-01-09  Marek Sieradzki  <marek.sieradzki@gmail.com>
374         * xbuild/Microsoft.Common.targets: Added $(ProjectDir).
376 2007-01-06  Marek Sieradzki  <marek.sieradzki@gmail.com>
378         * Makefile, Main.cs: Moved XBuild files to lib/mono/2.0 from
379         lib/mono/xbuild.
381 2006-12-19  Marek Sieradzki  <marek.sieradzki@gmail.com>
383         * Main.cs: Catch InvalidProjectFileException and
384         InternalLoggerException.
386 2006-12-16  Marek Sieradzki  <marek.sieradzki@gmail.com>
388         * Parameters.cs (ProcessProperty): Use SetProperty () not
389         AddNewProperty ().
391 2006-12-12  Marek Sieradzki  <marek.sieradzki@gmail.com>
393         * xbuild/Microsoft.Common.targets: Added.
395         * xbuild/Microsoft.CSharp.targets: Move common part to
396         Microsoft.Common.targets.
398 2006-12-11  Marek Sieradzki  <marek.sieradzki@gmail.com>
400         * xbuild/Microsoft.Common.tasks: Fix a typo (GetFrameworkPath).
402 2006-10-10  Marek Sieradzki  <marek.sieradzki@gmail.com>
404         * xbuild/Microsoft.CSharp.targets: Added empty SearchPaths to Csc.
406 2006-10-08  Marek Sieradzki  <marek.sieradzki@gmail.com>
408         * xbuild/Microsoft.CSharp.targets: Added parameters that should be
409         passed to Csc.
411 2006-10-05  Marek Sieradzki  <marek.sieradzki@gmail.com>
413         * xbuild/Microsoft.CSharp.targets: Make $(OutputPath) directory before
414         compiling and put output in this directory.
416 2006-09-30  Marek Sieradzki  <marek.sieradzki@gmail.com>
418         * xbuild/Microsoft.CSharp.targets: Use new ResolveAssemblyReference
419         task.
420         * xbuild/Microsoft.Common.tasks: Add new task (RAR).
422 2006-09-30  Marek Sieradzki  <marek.sieradzki@gmail.com>
424         * xbuild/Microsoft.CSharp.targets: Set AllowUnsafeBlocks to false when it's
425         equal to ''.
427 2006-09-29  Todd Berman  <tberman@off.net>
429         * xbuild/Microsoft.CSharp.targets: Copy over the AllowUnsafeBlocks
430         property definition.
432 2006-09-21  Marek Sieradzki  <marek.sieradzki@gmail.com>
434         * xbuild/Microsoft.CSharp.targets: Simplify: use PropertyGroups
435         instead of Targets to set properties needed by Csc task.
437 2006-09-20  Marek Sieradzki  <marek.sieradzki@gmail.com>
439         * Makefile: Fix broken build.
441 2006-09-20  Marek Sieradzki  <marek.sieradzki@gmail.com>
443         * xbuild/Microsoft.CSharp.targets: Support AssemblyName and
444         WarningLevel.
446 2006-09-20  Marek Sieradzki  <marek.sieradzki@gmail.com>
448         * Parameters.cs, Main.cs, ErrorUtilities.cs: Moved error handling to
449         new file and started to use ErrorUtilities.ReportError ()
450         instead of throw and catch. (In cases where xbuild should quit
451         instantly)
453 2006-06-25  Marek Sieradzki  <marek.sieradzki@gmail.com>
455         * Makefile, xbuild/Microsoft.CSharp.Targets: Renamed to
456         Microsoft.CSharp.targets. On make install it should be linked or
457         copied to another name.
459 2006-06-22  Marek Sieradzki  <marek.sieradzki@gmail.com>
461         * Makefile: Updated.
462         * xbuild/Microsoft.CSharp.Targets: Added hacky implementation of this
463         targets file.
465 2006-05-22  Marek Sieradzki  <marek.sieradzki@gmail.com>
467         * Main.cs: Patch from Matthew Metnetsky.
469 2006-04-19  Marek Sieradzki  <marek.sieradzki@gmail.com>
471         * XBuild.targets: Removed.
472         * xbuild/Microsoft.Build.xsd: Changed path separator.
474 2006-04-08  Marek Sieradzki  <marek.sieradzki@gmail.com>
476         * Makefile, xbuild/MSBuild/Microsoft.Build.CommonTypes.xsd: Changed
477         name of Microsoft.Build.Commontypes.xsd to
478         Microsoft.Build.CommonTypes.xsd.
480 2006-04-07  Marek Sieradzki  <marek.sieradzki@gmail.com>
482         * Makefile: Changed installation directory of schema files.
484 2006-03-11  Marek Sieradzki  <marek.sieradzki@gmail.com>
486         * Main.cs: Updated for new API.
488 2005-12-14  Wade Berrier <wberrier@novell.com>
490         * Makefile: Add missing EXTRA_DISTFILES in order to 'make install'
492 2005-11-05  Kornél Pál  <kornelpal@hotmail.com>
494         * AssemblyInfo.cs: Use Consts.MonoVersion as AssemblyVersion.
496 2005-09-22  Marek Sieradzki  <marek.sieradzki@gmail.com>
498         * Main.cs: Changed binPath to directory where all files are stored.
499         * Makefile: Added installing of additional files.
501 2005-09-21  Marek Sieradzki  <marek.sieradzki@gmail.com>
503         * LoggerInfo.cs: Changed public to internal.
504         * xbuild.exe.sources: Added reference to AssemblyLoadInfo.
506 2005-09-21  Marek Sieradzki  <marek.sieradzki@gmail.com>
508         * Microsoft.Common.tasks, xbuild.rsp, Microsoft.Build.xsd, MSBuild:
509         Moved to xbuild/.
510         * Main.cs, Pararameters.cs: Changed to use Mono.XBuild.Framework and
511         Mono.XBuild.Utilities.
512         * CommandLineException.cs, LoggerInfo.cs: Added #if NET_2_0
513         
515 2005-09-11  Marek Sieradzki  <marek.sieradzki@gmail.com>
517         * xbuild.exe.sources: Added Consts.cs from common build files.
518         * LoggerInfo.cs: Public key token update.
519         * Parameters.cs, Main.cs: Changed to use BinPath instead of hard-coded path.
520         * Makefile: Added installing of xbuild's files.
521         * Microsoft.Common.tasks: Moved from main directory and changed to use
522         assemblies from GAC.
524 2005-09-09  Marek Sieradzki  <marek.sieradzki@gmail.com>
526         * Main.cs: FxVersion.
527         * Makefile: Fixed Microsoft.Build.Utilities.dll name.
529 2005-09-05  Marek Sieradzki  <marek.sieradzki@gmail.com>
531         * Microsoft.Build.xsd, MSBuild/Microsoft.Build.Core.xsd,
532         Microsoft.Build.Commontypes.xsd: Added schema files.
534 2005-08-30  Marek Sieradzki  <marek.sieradzki@gmail.com>
536         * Main.cs, Parameters.cs: Added default target(s) handling.
538 2005-08-29  Marek Sieradzki  <marek.sieradzki@gmail.com>
540         * LoggerInfo.cs: Removed AssemblyLoadInfo property, changed to inherit
541         AssemblyLoadInfo.
542         * XBuild.targets: Updated.
543         * Parameters.cs: Removed debugging info and removed line producing
544         errors.
545         * Main.cs: Added check if engine is null.
547 2005-08-24  Marek Sieradzki  <marek.sieradzki@gmail.com>
549         * Parameters.cs, Main.cs: Changed paths to absolute paths. They should be
550         separated to .in file probably when moving to autotools.
552 2005-08-12  Marek Sieradzki  <marek.sieradzki@gmail.com>
554         * CommandLineException.cs, LoggerInfo.cs, Main.cs, Parameters.cs:
555         Added.