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.
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
27 2009-08-26 Ankit Jain <jankit@novell.com>
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>
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>
47 * Main.cs: Dont generate .sln.proj, project.Load can handle
48 .sln directly now. Show stack trace for exceptions if logger
50 * SolutionParser.cs (ParseSolution): Add a param for a raise
51 warning delegate. Use Dictionary.TryGetValue, key might not
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)
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>
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
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
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>
117 * xbuild/Microsoft.Common.targets (ResolveAssemblyReference): Add support
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'
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
146 2009-07-23 Ankit Jain <jankit@novell.com>
148 * Makefile: Create a lib/mono/xbuild directory for xbuild
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
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
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
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>
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>
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
238 2009-03-06 Ankit Jain <jankit@novell.com>
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
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
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
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.
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
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
353 2007-03-08 Marek Sieradzki <marek.sieradzki@gmail.com>
355 * Microsoft.CSharp.targets: Add @(ChildProjectReferences) to
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
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
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
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
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
427 2006-09-29 Todd Berman <tberman@off.net>
429 * xbuild/Microsoft.CSharp.targets: Copy over the AllowUnsafeBlocks
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
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
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>
462 * xbuild/Microsoft.CSharp.Targets: Added hacky implementation of this
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:
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
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
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
542 * XBuild.targets: Updated.
543 * Parameters.cs: Removed debugging info and removed line producing
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: