* SolutionParser.cs (ParseSolution): Project reference in a project
[mono.git] / mcs / tools / xbuild / ChangeLog
1 2009-08-18  Ankit Jain  <jankit@novell.com>
2
3         * SolutionParser.cs (ParseSolution): Project reference in a project
4         file, but not found in .sln file is ignored. Also, add dependencies
5         specified in the .sln file.
6
7 2009-08-14  Ankit Jain  <jankit@novell.com>
8
9         Fix bug #530368.
10         * SolutionParser.cs (AddProjectTargets): If a project name matches one
11         of the targets that we emit (Build/Clean etc), then rename to
12         "Solution:<project name>".
13
14 2009-08-14  Ankit Jain  <jankit@novell.com>
15
16         * xbuild/Microsoft.Common.targets (AllowUnsafeBlocks): Don't set any
17         default value.
18         (OutputPath): Set a default value.
19         (DeployOutputFiles): Copy only if something available to copy.
20
21 2009-08-14  Ankit Jain  <jankit@novell.com>
22
23         * SolutionParser.cs (ProjectInfo.Dependencies): Change to a dictionary
24         to keep track of corresponding ProjectInfo objects.
25         (ParseSolution): Refactor to populate the ProjectInfo.Dependencies
26         dictionary. Use AddBuildLevels to emit build levels to allow
27         parallel builds.
28         (AddProjectTargets): Dependency's projectInfo is directly available now.
29         (AddBuildLevels): New. Emit items named BuildLevelN, where each level
30         has projects that can be built in parallel. Lower levels represent
31         dependencies for higher levels.
32         (AddSolutionTargets): Instead of using CallTarget, directly use MSBuild
33         task with the new BuildLevelN stuff. Also tell the user about disabled
34         projects or missing project configs.
35         (TopologicalSort): New.
36         (Insert): New. Based on code from monodevelop.
37
38 2009-08-14  Ankit Jain  <jankit@novell.com>
39
40         * xbuild/Microsoft.Common.targets (ResolveAssemblyReference): Add
41         '{PkgConfig}' to SearchPaths.
42
43 2009-07-31  Ankit Jain  <jankit@novell.com>
44
45         * ErrorUtilities.cs (ShowUsage): Implement.
46
47 2009-07-30  Ankit Jain  <jankit@novell.com>
48
49         Fix bug #484771.
50         * xbuild/Microsoft.Common.targets (ResolveAssemblyReference): Add support
51         for $(OutDir).
52
53 2009-07-30  Ankit Jain  <jankit@novell.com>
54
55         * ErrorUtilities.cs: Set version to Consts.MonoVersion .
56
57 2009-07-30  Ankit Jain  <jankit@novell.com>
58
59         * xbuild/Microsoft.Common.targets (ResolveAssemblyReference): Output
60         ResolvedFiles to @(ReferencePath), required for IDE integration.
61
62 2009-07-30  Ankit Jain  <jankit@novell.com>
63
64         * xbuild/Microsoft.Common.targets: Implement 'Clean' target. Currently
65         just handles clean for a full build.
66
67 2009-07-28  Ankit Jain  <jankit@novell.com>
68
69         * xbuild/Microsoft.Common.targets: Add missing 'SkipUnchangedFiles=true'
70         for the Copy tasks.
71         (CopyDeployFiles*): Fix typos, Add inputs/outputs for the
72         PreserveNewest case and remove for copy always case.
73
74 2009-07-23  Ankit Jain  <jankit@novell.com>
75
76         * xbuild/Microsoft.Common.targets: Oops, forgot to remove some
77         debug stuff.
78
79 2009-07-23  Ankit Jain  <jankit@novell.com>
80
81         * Makefile: Create a lib/mono/xbuild directory for xbuild
82         extensions.
83
84 2009-07-23  Ankit Jain  <jankit@novell.com>
85
86         * xbuild/Microsoft.Common.targets (AssignProjectConfigurations): New.
87         (ResolveProjectReferences): Add dependency on AssignProjectConfigurations
88         target. Also, set the config and platform properties for the msbuild task
89         being invoked.
90         * xbuild/Microsoft.Common.tasks: Add AssignProjectConfiguration .
91
92 2009-07-22  Ankit Jain  <jankit@novell.com>
93
94         * xbuild/Microsoft.VisualBasic.targets (Vbc.References): Remove
95         "@(ChildProjectReferences)" as it gets resolved earlier
96         and is part of @(ResolvedFiles).
97
98 2009-07-22  Ankit Jain  <jankit@novell.com>
99
100         * xbuild.Microsoft.CSharp.targets (Csc.References): Remove
101         "@(ChildProjectReferences)" as it gets resolved earlier
102         and is part of @(ResolvedFiles).
103
104 2009-06-12  Ankit Jain  <jankit@novell.com>
105
106         * xbuild/Microsoft.Common.targets (ProjectDir): Fix typo.
107
108 2009-06-12  Ankit Jain  <jankit@novell.com>
109
110         * xbuild/Microsoft.Common.targets (IntermediateAssembly): Change to
111         an Item list to match msbuild.
112         * xbuild/Microsoft.CSharp.targets (IntermediateAssembly): Update for
113         above changes.
114
115 2009-06-12  Ankit Jain  <jankit@novell.com>
116
117         * Parameters.cs (.ctor): Use assembly's location to build
118         path for the default response file.
119
120 2009-06-08  Ankit Jain  <jankit@novell.com>
121
122         * xbuild/Microsoft.Common.targets: Use ResolveAssemblyReference
123         to find satellite assemblies, dependent assemblies, dependent
124         files, copy local files etc.
125         Add targets to fetch all this info for all referenced projects,
126         and copy them to the target locations. Also, copy the debug (.mdb)
127         files. Honor, "CopyToOutputDirectory" metadata.
128
129 2009-06-07  Ankit Jain  <jankit@novell.com>
130
131         * Parameters.cs (ProcessProperty): Handle invalid syntax.
132
133 2009-06-07  Ankit Jain  <jankit@novell.com>
134
135         * SolutionParser.cs (AddGeneralSettings): Don't hardcode the default
136         config/platform. Move to ..
137         (AddDefaultSolutionConfiguration): .. here.
138         (AddCurrentSolutionConfigurationContents): Use the first solution target
139         as the default config/platform or use Debug/anycpu if no config is available.
140
141 2009-05-20  Jonathan Chambers  <joncham@gmail.com>
142
143         * SolutionParser.cs (ParseSolution): Ignore vcproj projects in solutions 
144         and issue warning. 
145
146 2009-04-27  Ankit Jain  <jankit@novell.com>
147
148         * xbuild/Microsoft.VisualBasic.targets: Update to use
149         CreateVisualBasicManifestResourceName task, and fix compiler params.
150
151 2009-04-25 Daniel Nauck <dna@mono-project.de>
152
153         Fix bug #484649:
154         * LoggerInfo.cs: fixed the parsing of the /logger: argument as described in
155         http://msdn.microsoft.com/en-us/library/ms164311.aspx
156         Added logger class detection if it's not explicit specified in the argument.
157
158 2009-03-19  Ankit Jain  <jankit@novell.com>
159
160         Fix bug #484773.
161         * Main.cs (Execute): Check whether the project file exists or not.
162         * Parameters.cs (ParseArguments): Handle absolute paths too.
163
164 2009-03-13  Ankit Jain  <jankit@novell.com>
165
166         * Main.cs (Execute): Build the project/sln with current directory set to
167         the project file's dir.
168         * SolutionParser.cs (ParseSolution): Project paths are relative to
169         solution directory.
170
171 2009-03-06  Ankit Jain  <jankit@novell.com>
172
173         Fix bug #481336.
174         * SolutionParser.cs (AddWarningForMissingProjectConfiguration): New.
175         (AddProjectTargets): Emit warning for missing project configurations.
176
177 2009-02-26  Ankit Jain  <jankit@novell.com>
178
179         * xbuild/Microsoft.CSharp.targets (Csc): Fix "Resources" argument to use
180         ManifestNonResxWithCultureOnDisk instead of ManifestResourceWithNoCultureOnDisk.
181
182 2009-02-26  Ankit Jain  <jankit@novell.com>
183
184         * xbuild/Microsoft.Common.targets: Make targets extensible. Add
185         before/after hooks.
186
187 2009-02-25  Ankit Jain  <jankit@novell.com>
188
189         * xbuild/Microsoft.Common.targets: Use obj/$(Config) as the default intermediate
190         output path, instead of just obj/
191
192 2009-02-25  Ankit Jain  <jankit@novell.com>
193
194         * xbuild/Microsoft.Common.targets (CopyNonResxEmbeddedResources): New.
195         (GenerateSatelliteAssemblies): Update to use the new ManifestNonResxWithCultureOnDisk
196         instead of NonResxWithCulture.
197         * xbuild/Microsoft.CSharp.targets (Csc): Fix "Resources" argument to use
198         the new on disk file names instead of original filenames.
199
200 2009-02-25  Ankit Jain  <jankit@novell.com>
201
202         * xbuild/Microsoft.Common.targets (GetTargetPath): Add a path separator.
203
204 2009-02-25  Ankit Jain  <jankit@novell.com>
205
206         * SolutionParser.cs (ParseSolution): Report warning instead of error
207         for unknown global sections.
208
209 2009-02-21  Ankit Jain  <jankit@novell.com>
210
211         * xbuild/xbuild.rsp: Add descriptive comments.
212
213 2009-02-21  Ankit Jain  <jankit@novell.com>
214
215         * Parameters.cs (LoadResponseFile): Handle comments.
216
217 2009-02-20  Ankit Jain  <jankit@novell.com>
218
219         * SolutionParser.cs (ParseSolution): Ignore solution folders.
220
221 2009-02-20  Ankit Jain  <jankit@novell.com>
222
223         * SolutionParser.cs (ParseSolution): Ignore GlobalSection named
224         'NestedProjects'.
225
226 2009-02-20  Ankit Jain  <jankit@novell.com>
227
228         * SolutionParser.cs (ParseProjectConfigurationPlatforms): Report missing
229         project guids as Warnings and not errors. Report every missing guid only
230         once.
231
232 2009-02-20  Ankit Jain  <jankit@novell.com>
233
234         * SolutionParser.cs (projectRegex): Use '\s' to match whitespace.
235
236 2009-02-19  Jonathan Chambers  <joncham@gmail.com>
237
238         * xbuild.csproj: Add.
239         * xbuild.sln: Add.
240
241 2009-02-13  Jonathan Chambers  <joncham@gmail.com>
242
243         * SolutionParser.cs: Make Guid Regex case insensitive.
244         Handle project dependencies. The solution has explicit
245         dependencies, but we have to open projects for implicit
246         dependencies (via ProjectReferences).
247
248 2009-02-13  Jonathan Chambers  <joncham@gmail.com>
249
250         * Main.cs: Add support for .sln files.
251         * SolutionParser.cs: Class for generating project file
252         from solution file.
253         * xbuild.exe.sources: Added SolutionParser.cs.
254
255 2009-02-02  Ankit Jain  <jankit@novell.com>
256
257         * Microsoft.CSharp.targets: Add targets to generate resource ids.
258         * Microsoft.Common.targets: Add targets for generating resources,
259         generate and deploy satellite assemblies, resolve project and assembly
260         references. All intermediate build output goes into a 'obj/' dir by
261         default. 'Clean' target enabled.
262
263 2008-12-12  Ankit Jain  <jankit@novell.com>
264
265         * Microsoft.CSharp.targets: Add CreateCSharpManifestResourceName task.
266
267 2008-11-23  Ankit Jain  <jankit@novell.com>
268
269         * xbuild/Microsoft.Common.tasks: Add AssignCulture task.
270
271 2008-10-01  Ankit Jain  <jankit@novell.com>
272
273         * xbuild/Microsoft.Common.tasks: Add CallTarget and AssignTargetPath task.
274
275 2007-03-19  Marek Sieradzki  <marek.sieradzki@gmail.com>
276
277         * xbuild/Microsoft.Common.tasks: Added CombinePath task.
278
279 2007-03-10  Marek Sieradzki  <marek.sieradzki@gmail.com>
280
281         * xbuild/Microsoft.Common.tasks: Added Vbc task.
282
283         * xbuild/Microsoft.VisualBasic.targets: Added CoreCompile target for
284         VB.
285
286 2007-03-08  Marek Sieradzki  <marek.sieradzki@gmail.com>
287
288         * Microsoft.CSharp.targets: Add @(ChildProjectReferences) to
289         References.
290
291         * Microsoft.Common.targets: Add ResolveProjectReferences target.
292
293 2007-01-23  Marek Sieradzki  <marek.sieradzki@gmail.com>
294
295         * Makefile: Removed hack.
296
297 2007-01-23  Marek Sieradzki  <marek.sieradzki@gmail.com>
298
299         * Makefile: Fix Windows build.
300
301 2007-01-21  Marek Sieradzki  <marek.sieradzki@gmail.com>
302
303         * xbuild/Microsoft.VisualBasic.targets: Added.
304
305 2007-01-09  Marek Sieradzki  <marek.sieradzki@gmail.com>
306
307         * xbuild/Microsoft.Common.targets: Added $(ProjectDir).
308
309 2007-01-06  Marek Sieradzki  <marek.sieradzki@gmail.com>
310
311         * Makefile, Main.cs: Moved XBuild files to lib/mono/2.0 from
312         lib/mono/xbuild.
313
314 2006-12-19  Marek Sieradzki  <marek.sieradzki@gmail.com>
315
316         * Main.cs: Catch InvalidProjectFileException and
317         InternalLoggerException.
318
319 2006-12-16  Marek Sieradzki  <marek.sieradzki@gmail.com>
320
321         * Parameters.cs (ProcessProperty): Use SetProperty () not
322         AddNewProperty ().
323
324 2006-12-12  Marek Sieradzki  <marek.sieradzki@gmail.com>
325
326         * xbuild/Microsoft.Common.targets: Added.
327
328         * xbuild/Microsoft.CSharp.targets: Move common part to
329         Microsoft.Common.targets.
330
331 2006-12-11  Marek Sieradzki  <marek.sieradzki@gmail.com>
332
333         * xbuild/Microsoft.Common.tasks: Fix a typo (GetFrameworkPath).
334
335 2006-10-10  Marek Sieradzki  <marek.sieradzki@gmail.com>
336
337         * xbuild/Microsoft.CSharp.targets: Added empty SearchPaths to Csc.
338
339 2006-10-08  Marek Sieradzki  <marek.sieradzki@gmail.com>
340
341         * xbuild/Microsoft.CSharp.targets: Added parameters that should be
342         passed to Csc.
343
344 2006-10-05  Marek Sieradzki  <marek.sieradzki@gmail.com>
345
346         * xbuild/Microsoft.CSharp.targets: Make $(OutputPath) directory before
347         compiling and put output in this directory.
348
349 2006-09-30  Marek Sieradzki  <marek.sieradzki@gmail.com>
350
351         * xbuild/Microsoft.CSharp.targets: Use new ResolveAssemblyReference
352         task.
353         * xbuild/Microsoft.Common.tasks: Add new task (RAR).
354
355 2006-09-30  Marek Sieradzki  <marek.sieradzki@gmail.com>
356
357         * xbuild/Microsoft.CSharp.targets: Set AllowUnsafeBlocks to false when it's
358         equal to ''.
359
360 2006-09-29  Todd Berman  <tberman@off.net>
361
362         * xbuild/Microsoft.CSharp.targets: Copy over the AllowUnsafeBlocks
363         property definition.
364
365 2006-09-21  Marek Sieradzki  <marek.sieradzki@gmail.com>
366
367         * xbuild/Microsoft.CSharp.targets: Simplify: use PropertyGroups
368         instead of Targets to set properties needed by Csc task.
369
370 2006-09-20  Marek Sieradzki  <marek.sieradzki@gmail.com>
371
372         * Makefile: Fix broken build.
373
374 2006-09-20  Marek Sieradzki  <marek.sieradzki@gmail.com>
375
376         * xbuild/Microsoft.CSharp.targets: Support AssemblyName and
377         WarningLevel.
378
379 2006-09-20  Marek Sieradzki  <marek.sieradzki@gmail.com>
380
381         * Parameters.cs, Main.cs, ErrorUtilities.cs: Moved error handling to
382         new file and started to use ErrorUtilities.ReportError ()
383         instead of throw and catch. (In cases where xbuild should quit
384         instantly)
385
386 2006-06-25  Marek Sieradzki  <marek.sieradzki@gmail.com>
387
388         * Makefile, xbuild/Microsoft.CSharp.Targets: Renamed to
389         Microsoft.CSharp.targets. On make install it should be linked or
390         copied to another name.
391
392 2006-06-22  Marek Sieradzki  <marek.sieradzki@gmail.com>
393
394         * Makefile: Updated.
395         * xbuild/Microsoft.CSharp.Targets: Added hacky implementation of this
396         targets file.
397
398 2006-05-22  Marek Sieradzki  <marek.sieradzki@gmail.com>
399
400         * Main.cs: Patch from Matthew Metnetsky.
401
402 2006-04-19  Marek Sieradzki  <marek.sieradzki@gmail.com>
403
404         * XBuild.targets: Removed.
405         * xbuild/Microsoft.Build.xsd: Changed path separator.
406
407 2006-04-08  Marek Sieradzki  <marek.sieradzki@gmail.com>
408
409         * Makefile, xbuild/MSBuild/Microsoft.Build.CommonTypes.xsd: Changed
410         name of Microsoft.Build.Commontypes.xsd to
411         Microsoft.Build.CommonTypes.xsd.
412
413 2006-04-07  Marek Sieradzki  <marek.sieradzki@gmail.com>
414
415         * Makefile: Changed installation directory of schema files.
416
417 2006-03-11  Marek Sieradzki  <marek.sieradzki@gmail.com>
418
419         * Main.cs: Updated for new API.
420
421 2005-12-14  Wade Berrier <wberrier@novell.com>
422
423         * Makefile: Add missing EXTRA_DISTFILES in order to 'make install'
424
425 2005-11-05  Kornél Pál  <kornelpal@hotmail.com>
426
427         * AssemblyInfo.cs: Use Consts.MonoVersion as AssemblyVersion.
428
429 2005-09-22  Marek Sieradzki  <marek.sieradzki@gmail.com>
430
431         * Main.cs: Changed binPath to directory where all files are stored.
432         * Makefile: Added installing of additional files.
433
434 2005-09-21  Marek Sieradzki  <marek.sieradzki@gmail.com>
435
436         * LoggerInfo.cs: Changed public to internal.
437         * xbuild.exe.sources: Added reference to AssemblyLoadInfo.
438
439 2005-09-21  Marek Sieradzki  <marek.sieradzki@gmail.com>
440
441         * Microsoft.Common.tasks, xbuild.rsp, Microsoft.Build.xsd, MSBuild:
442         Moved to xbuild/.
443         * Main.cs, Pararameters.cs: Changed to use Mono.XBuild.Framework and
444         Mono.XBuild.Utilities.
445         * CommandLineException.cs, LoggerInfo.cs: Added #if NET_2_0
446         
447
448 2005-09-11  Marek Sieradzki  <marek.sieradzki@gmail.com>
449
450         * xbuild.exe.sources: Added Consts.cs from common build files.
451         * LoggerInfo.cs: Public key token update.
452         * Parameters.cs, Main.cs: Changed to use BinPath instead of hard-coded path.
453         * Makefile: Added installing of xbuild's files.
454         * Microsoft.Common.tasks: Moved from main directory and changed to use
455         assemblies from GAC.
456
457 2005-09-09  Marek Sieradzki  <marek.sieradzki@gmail.com>
458
459         * Main.cs: FxVersion.
460         * Makefile: Fixed Microsoft.Build.Utilities.dll name.
461
462 2005-09-05  Marek Sieradzki  <marek.sieradzki@gmail.com>
463
464         * Microsoft.Build.xsd, MSBuild/Microsoft.Build.Core.xsd,
465         Microsoft.Build.Commontypes.xsd: Added schema files.
466
467 2005-08-30  Marek Sieradzki  <marek.sieradzki@gmail.com>
468
469         * Main.cs, Parameters.cs: Added default target(s) handling.
470
471 2005-08-29  Marek Sieradzki  <marek.sieradzki@gmail.com>
472
473         * LoggerInfo.cs: Removed AssemblyLoadInfo property, changed to inherit
474         AssemblyLoadInfo.
475         * XBuild.targets: Updated.
476         * Parameters.cs: Removed debugging info and removed line producing
477         errors.
478         * Main.cs: Added check if engine is null.
479
480 2005-08-24  Marek Sieradzki  <marek.sieradzki@gmail.com>
481
482         * Parameters.cs, Main.cs: Changed paths to absolute paths. They should be
483         separated to .in file probably when moving to autotools.
484
485 2005-08-12  Marek Sieradzki  <marek.sieradzki@gmail.com>
486
487         * CommandLineException.cs, LoggerInfo.cs, Main.cs, Parameters.cs:
488         Added.