1 2009-09-27 Ankit Jain <jankit@novell.com>
3 * SolutionParser.cs: Implement support for WebSite projects. These
4 projects lack a project file, so properties like references are read
5 from the .sln file, and targets are generated for build/clean etc.
7 2009-09-26 Ankit Jain <jankit@novell.com>
9 * xbuild/Microsoft.Common.targets: Remove _ValidateEssentialProperties
10 from BuildDependsOn, which was a hack. It will get invoked from the
13 2009-09-25 Ankit Jain <jankit@novell.com>
15 * Makefile(EXTRA_DISTFILES): Add Microsoft.WebApplication.targets
17 2009-09-25 Ankit Jain <jankit@novell.com>
19 * xbuild/Microsoft.Common.targets: Emit list of files written
20 during the build, even if the build fails.
22 2009-09-25 Ankit Jain <jankit@novell.com>
25 * xbuild/Microsoft.Common.targets: Add support for copying
26 app.config to AssemblyName.config
27 * xbuild/Microsoft.Common.tasks: Add FindAppConfigFile task.
29 2009-09-24 Ankit Jain <jankit@novell.com>
31 * Parameters.cs (ParseArguments): If no project file is specified,
32 then look for a .sln or *proj file in the current directory.
34 2009-09-24 Ankit Jain <jankit@novell.com>
36 * Makefile: Create dir for WebApplication.targets .
37 * Microsoft.Common.targets (_ValidateEssentialProperties): New.
38 (BuildDependsOn): Add _ValidateEssentialProperties, temporary.
39 This should actually work via InitialTargets, which will be fixed
40 in a subsequent commit. Add PrepareForRun.
42 * xbuild/Microsoft.WebApplication.targets: New.
44 2009-09-23 Ankit Jain <jankit@novell.com>
46 * xbuild/Microsoft.Common.targets: Add 'Rebuild' target.
47 Also, set DefaultTargets to "Build".
49 2009-08-26 Ankit Jain <jankit@novell.com>
51 * xbuild/Microsoft.Common.targets: Remove dummy
52 @(_TargetPathItem), since we support item refs with transforms
55 2009-08-26 Ankit Jain <jankit@novell.com>
58 * xbuild/Microsoft.Common.targets: Support building projects
59 directly from command line. Builds referenced projects. Honors
60 $(BuildingSolutionFile) and $(BuildingInsideVisualStudio) now.
61 Also, clean referenced projects.
63 2009-08-21 Ankit Jain <jankit@novell.com>
66 * xbuild/Microsoft.Common.targets: Add $(ConfigurationName)
67 and $(PlatformName) default values.
68 Move CoreCompile to a Compile target with corresponding
69 Before/After hooks and *DependsOn.
70 Add Pre/PostBuildEvents handling.
72 2009-08-20 Ankit Jain <jankit@novell.com>
75 * Main.cs: Dont generate .sln.proj, project.Load can handle
76 .sln directly now. Show stack trace for exceptions if logger
78 * SolutionParser.cs (ParseSolution): Add a param for a raise
79 warning delegate. Use Dictionary.TryGetValue, key might not
82 2009-08-20 Ankit Jain <jankit@novell.com>
84 * xbuild/Microsoft.Common.targets (ResolveReferences*): Add
85 a *DependsOn property and Before/After hooks. Change output
86 of ResolvedFiles to @(ReferencePath).
87 * xbuild/Microsoft.CSharp.targets (Csc): Use @(ReferencePath)
90 2009-08-19 Ankit Jain <jankit@novell.com>
92 * xbuild/Microsoft.Common.targets (ResolveAssemblyReference):
93 Make SearchPaths get value from a property (AssemblySearchPaths)
94 to allow it to be overridden.
96 2009-08-18 Ankit Jain <jankit@novell.com>
98 * SolutionParser.cs (ParseSolution): Project reference in a project
99 file, but not found in .sln file is ignored. Also, add dependencies
100 specified in the .sln file.
102 2009-08-14 Ankit Jain <jankit@novell.com>
105 * SolutionParser.cs (AddProjectTargets): If a project name matches one
106 of the targets that we emit (Build/Clean etc), then rename to
107 "Solution:<project name>".
109 2009-08-14 Ankit Jain <jankit@novell.com>
111 * xbuild/Microsoft.Common.targets (AllowUnsafeBlocks): Don't set any
113 (OutputPath): Set a default value.
114 (DeployOutputFiles): Copy only if something available to copy.
116 2009-08-14 Ankit Jain <jankit@novell.com>
118 * SolutionParser.cs (ProjectInfo.Dependencies): Change to a dictionary
119 to keep track of corresponding ProjectInfo objects.
120 (ParseSolution): Refactor to populate the ProjectInfo.Dependencies
121 dictionary. Use AddBuildLevels to emit build levels to allow
123 (AddProjectTargets): Dependency's projectInfo is directly available now.
124 (AddBuildLevels): New. Emit items named BuildLevelN, where each level
125 has projects that can be built in parallel. Lower levels represent
126 dependencies for higher levels.
127 (AddSolutionTargets): Instead of using CallTarget, directly use MSBuild
128 task with the new BuildLevelN stuff. Also tell the user about disabled
129 projects or missing project configs.
130 (TopologicalSort): New.
131 (Insert): New. Based on code from monodevelop.
133 2009-08-14 Ankit Jain <jankit@novell.com>
135 * xbuild/Microsoft.Common.targets (ResolveAssemblyReference): Add
136 '{PkgConfig}' to SearchPaths.
138 2009-07-31 Ankit Jain <jankit@novell.com>
140 * ErrorUtilities.cs (ShowUsage): Implement.
142 2009-07-30 Ankit Jain <jankit@novell.com>
145 * xbuild/Microsoft.Common.targets (ResolveAssemblyReference): Add support
148 2009-07-30 Ankit Jain <jankit@novell.com>
150 * ErrorUtilities.cs: Set version to Consts.MonoVersion .
152 2009-07-30 Ankit Jain <jankit@novell.com>
154 * xbuild/Microsoft.Common.targets (ResolveAssemblyReference): Output
155 ResolvedFiles to @(ReferencePath), required for IDE integration.
157 2009-07-30 Ankit Jain <jankit@novell.com>
159 * xbuild/Microsoft.Common.targets: Implement 'Clean' target. Currently
160 just handles clean for a full build.
162 2009-07-28 Ankit Jain <jankit@novell.com>
164 * xbuild/Microsoft.Common.targets: Add missing 'SkipUnchangedFiles=true'
166 (CopyDeployFiles*): Fix typos, Add inputs/outputs for the
167 PreserveNewest case and remove for copy always case.
169 2009-07-23 Ankit Jain <jankit@novell.com>
171 * xbuild/Microsoft.Common.targets: Oops, forgot to remove some
174 2009-07-23 Ankit Jain <jankit@novell.com>
176 * Makefile: Create a lib/mono/xbuild directory for xbuild
179 2009-07-23 Ankit Jain <jankit@novell.com>
181 * xbuild/Microsoft.Common.targets (AssignProjectConfigurations): New.
182 (ResolveProjectReferences): Add dependency on AssignProjectConfigurations
183 target. Also, set the config and platform properties for the msbuild task
185 * xbuild/Microsoft.Common.tasks: Add AssignProjectConfiguration .
187 2009-07-22 Ankit Jain <jankit@novell.com>
189 * xbuild/Microsoft.VisualBasic.targets (Vbc.References): Remove
190 "@(ChildProjectReferences)" as it gets resolved earlier
191 and is part of @(ResolvedFiles).
193 2009-07-22 Ankit Jain <jankit@novell.com>
195 * xbuild.Microsoft.CSharp.targets (Csc.References): Remove
196 "@(ChildProjectReferences)" as it gets resolved earlier
197 and is part of @(ResolvedFiles).
199 2009-06-12 Ankit Jain <jankit@novell.com>
201 * xbuild/Microsoft.Common.targets (ProjectDir): Fix typo.
203 2009-06-12 Ankit Jain <jankit@novell.com>
205 * xbuild/Microsoft.Common.targets (IntermediateAssembly): Change to
206 an Item list to match msbuild.
207 * xbuild/Microsoft.CSharp.targets (IntermediateAssembly): Update for
210 2009-06-12 Ankit Jain <jankit@novell.com>
212 * Parameters.cs (.ctor): Use assembly's location to build
213 path for the default response file.
215 2009-06-08 Ankit Jain <jankit@novell.com>
217 * xbuild/Microsoft.Common.targets: Use ResolveAssemblyReference
218 to find satellite assemblies, dependent assemblies, dependent
219 files, copy local files etc.
220 Add targets to fetch all this info for all referenced projects,
221 and copy them to the target locations. Also, copy the debug (.mdb)
222 files. Honor, "CopyToOutputDirectory" metadata.
224 2009-06-07 Ankit Jain <jankit@novell.com>
226 * Parameters.cs (ProcessProperty): Handle invalid syntax.
228 2009-06-07 Ankit Jain <jankit@novell.com>
230 * SolutionParser.cs (AddGeneralSettings): Don't hardcode the default
231 config/platform. Move to ..
232 (AddDefaultSolutionConfiguration): .. here.
233 (AddCurrentSolutionConfigurationContents): Use the first solution target
234 as the default config/platform or use Debug/anycpu if no config is available.
236 2009-05-20 Jonathan Chambers <joncham@gmail.com>
238 * SolutionParser.cs (ParseSolution): Ignore vcproj projects in solutions
241 2009-04-27 Ankit Jain <jankit@novell.com>
243 * xbuild/Microsoft.VisualBasic.targets: Update to use
244 CreateVisualBasicManifestResourceName task, and fix compiler params.
246 2009-04-25 Daniel Nauck <dna@mono-project.de>
249 * LoggerInfo.cs: fixed the parsing of the /logger: argument as described in
250 http://msdn.microsoft.com/en-us/library/ms164311.aspx
251 Added logger class detection if it's not explicit specified in the argument.
253 2009-03-19 Ankit Jain <jankit@novell.com>
256 * Main.cs (Execute): Check whether the project file exists or not.
257 * Parameters.cs (ParseArguments): Handle absolute paths too.
259 2009-03-13 Ankit Jain <jankit@novell.com>
261 * Main.cs (Execute): Build the project/sln with current directory set to
262 the project file's dir.
263 * SolutionParser.cs (ParseSolution): Project paths are relative to
266 2009-03-06 Ankit Jain <jankit@novell.com>
269 * SolutionParser.cs (AddWarningForMissingProjectConfiguration): New.
270 (AddProjectTargets): Emit warning for missing project configurations.
272 2009-02-26 Ankit Jain <jankit@novell.com>
274 * xbuild/Microsoft.CSharp.targets (Csc): Fix "Resources" argument to use
275 ManifestNonResxWithCultureOnDisk instead of ManifestResourceWithNoCultureOnDisk.
277 2009-02-26 Ankit Jain <jankit@novell.com>
279 * xbuild/Microsoft.Common.targets: Make targets extensible. Add
282 2009-02-25 Ankit Jain <jankit@novell.com>
284 * xbuild/Microsoft.Common.targets: Use obj/$(Config) as the default intermediate
285 output path, instead of just obj/
287 2009-02-25 Ankit Jain <jankit@novell.com>
289 * xbuild/Microsoft.Common.targets (CopyNonResxEmbeddedResources): New.
290 (GenerateSatelliteAssemblies): Update to use the new ManifestNonResxWithCultureOnDisk
291 instead of NonResxWithCulture.
292 * xbuild/Microsoft.CSharp.targets (Csc): Fix "Resources" argument to use
293 the new on disk file names instead of original filenames.
295 2009-02-25 Ankit Jain <jankit@novell.com>
297 * xbuild/Microsoft.Common.targets (GetTargetPath): Add a path separator.
299 2009-02-25 Ankit Jain <jankit@novell.com>
301 * SolutionParser.cs (ParseSolution): Report warning instead of error
302 for unknown global sections.
304 2009-02-21 Ankit Jain <jankit@novell.com>
306 * xbuild/xbuild.rsp: Add descriptive comments.
308 2009-02-21 Ankit Jain <jankit@novell.com>
310 * Parameters.cs (LoadResponseFile): Handle comments.
312 2009-02-20 Ankit Jain <jankit@novell.com>
314 * SolutionParser.cs (ParseSolution): Ignore solution folders.
316 2009-02-20 Ankit Jain <jankit@novell.com>
318 * SolutionParser.cs (ParseSolution): Ignore GlobalSection named
321 2009-02-20 Ankit Jain <jankit@novell.com>
323 * SolutionParser.cs (ParseProjectConfigurationPlatforms): Report missing
324 project guids as Warnings and not errors. Report every missing guid only
327 2009-02-20 Ankit Jain <jankit@novell.com>
329 * SolutionParser.cs (projectRegex): Use '\s' to match whitespace.
331 2009-02-19 Jonathan Chambers <joncham@gmail.com>
333 * xbuild.csproj: Add.
336 2009-02-13 Jonathan Chambers <joncham@gmail.com>
338 * SolutionParser.cs: Make Guid Regex case insensitive.
339 Handle project dependencies. The solution has explicit
340 dependencies, but we have to open projects for implicit
341 dependencies (via ProjectReferences).
343 2009-02-13 Jonathan Chambers <joncham@gmail.com>
345 * Main.cs: Add support for .sln files.
346 * SolutionParser.cs: Class for generating project file
348 * xbuild.exe.sources: Added SolutionParser.cs.
350 2009-02-02 Ankit Jain <jankit@novell.com>
352 * Microsoft.CSharp.targets: Add targets to generate resource ids.
353 * Microsoft.Common.targets: Add targets for generating resources,
354 generate and deploy satellite assemblies, resolve project and assembly
355 references. All intermediate build output goes into a 'obj/' dir by
356 default. 'Clean' target enabled.
358 2008-12-12 Ankit Jain <jankit@novell.com>
360 * Microsoft.CSharp.targets: Add CreateCSharpManifestResourceName task.
362 2008-11-23 Ankit Jain <jankit@novell.com>
364 * xbuild/Microsoft.Common.tasks: Add AssignCulture task.
366 2008-10-01 Ankit Jain <jankit@novell.com>
368 * xbuild/Microsoft.Common.tasks: Add CallTarget and AssignTargetPath task.
370 2007-03-19 Marek Sieradzki <marek.sieradzki@gmail.com>
372 * xbuild/Microsoft.Common.tasks: Added CombinePath task.
374 2007-03-10 Marek Sieradzki <marek.sieradzki@gmail.com>
376 * xbuild/Microsoft.Common.tasks: Added Vbc task.
378 * xbuild/Microsoft.VisualBasic.targets: Added CoreCompile target for
381 2007-03-08 Marek Sieradzki <marek.sieradzki@gmail.com>
383 * Microsoft.CSharp.targets: Add @(ChildProjectReferences) to
386 * Microsoft.Common.targets: Add ResolveProjectReferences target.
388 2007-01-23 Marek Sieradzki <marek.sieradzki@gmail.com>
390 * Makefile: Removed hack.
392 2007-01-23 Marek Sieradzki <marek.sieradzki@gmail.com>
394 * Makefile: Fix Windows build.
396 2007-01-21 Marek Sieradzki <marek.sieradzki@gmail.com>
398 * xbuild/Microsoft.VisualBasic.targets: Added.
400 2007-01-09 Marek Sieradzki <marek.sieradzki@gmail.com>
402 * xbuild/Microsoft.Common.targets: Added $(ProjectDir).
404 2007-01-06 Marek Sieradzki <marek.sieradzki@gmail.com>
406 * Makefile, Main.cs: Moved XBuild files to lib/mono/2.0 from
409 2006-12-19 Marek Sieradzki <marek.sieradzki@gmail.com>
411 * Main.cs: Catch InvalidProjectFileException and
412 InternalLoggerException.
414 2006-12-16 Marek Sieradzki <marek.sieradzki@gmail.com>
416 * Parameters.cs (ProcessProperty): Use SetProperty () not
419 2006-12-12 Marek Sieradzki <marek.sieradzki@gmail.com>
421 * xbuild/Microsoft.Common.targets: Added.
423 * xbuild/Microsoft.CSharp.targets: Move common part to
424 Microsoft.Common.targets.
426 2006-12-11 Marek Sieradzki <marek.sieradzki@gmail.com>
428 * xbuild/Microsoft.Common.tasks: Fix a typo (GetFrameworkPath).
430 2006-10-10 Marek Sieradzki <marek.sieradzki@gmail.com>
432 * xbuild/Microsoft.CSharp.targets: Added empty SearchPaths to Csc.
434 2006-10-08 Marek Sieradzki <marek.sieradzki@gmail.com>
436 * xbuild/Microsoft.CSharp.targets: Added parameters that should be
439 2006-10-05 Marek Sieradzki <marek.sieradzki@gmail.com>
441 * xbuild/Microsoft.CSharp.targets: Make $(OutputPath) directory before
442 compiling and put output in this directory.
444 2006-09-30 Marek Sieradzki <marek.sieradzki@gmail.com>
446 * xbuild/Microsoft.CSharp.targets: Use new ResolveAssemblyReference
448 * xbuild/Microsoft.Common.tasks: Add new task (RAR).
450 2006-09-30 Marek Sieradzki <marek.sieradzki@gmail.com>
452 * xbuild/Microsoft.CSharp.targets: Set AllowUnsafeBlocks to false when it's
455 2006-09-29 Todd Berman <tberman@off.net>
457 * xbuild/Microsoft.CSharp.targets: Copy over the AllowUnsafeBlocks
460 2006-09-21 Marek Sieradzki <marek.sieradzki@gmail.com>
462 * xbuild/Microsoft.CSharp.targets: Simplify: use PropertyGroups
463 instead of Targets to set properties needed by Csc task.
465 2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com>
467 * Makefile: Fix broken build.
469 2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com>
471 * xbuild/Microsoft.CSharp.targets: Support AssemblyName and
474 2006-09-20 Marek Sieradzki <marek.sieradzki@gmail.com>
476 * Parameters.cs, Main.cs, ErrorUtilities.cs: Moved error handling to
477 new file and started to use ErrorUtilities.ReportError ()
478 instead of throw and catch. (In cases where xbuild should quit
481 2006-06-25 Marek Sieradzki <marek.sieradzki@gmail.com>
483 * Makefile, xbuild/Microsoft.CSharp.Targets: Renamed to
484 Microsoft.CSharp.targets. On make install it should be linked or
485 copied to another name.
487 2006-06-22 Marek Sieradzki <marek.sieradzki@gmail.com>
490 * xbuild/Microsoft.CSharp.Targets: Added hacky implementation of this
493 2006-05-22 Marek Sieradzki <marek.sieradzki@gmail.com>
495 * Main.cs: Patch from Matthew Metnetsky.
497 2006-04-19 Marek Sieradzki <marek.sieradzki@gmail.com>
499 * XBuild.targets: Removed.
500 * xbuild/Microsoft.Build.xsd: Changed path separator.
502 2006-04-08 Marek Sieradzki <marek.sieradzki@gmail.com>
504 * Makefile, xbuild/MSBuild/Microsoft.Build.CommonTypes.xsd: Changed
505 name of Microsoft.Build.Commontypes.xsd to
506 Microsoft.Build.CommonTypes.xsd.
508 2006-04-07 Marek Sieradzki <marek.sieradzki@gmail.com>
510 * Makefile: Changed installation directory of schema files.
512 2006-03-11 Marek Sieradzki <marek.sieradzki@gmail.com>
514 * Main.cs: Updated for new API.
516 2005-12-14 Wade Berrier <wberrier@novell.com>
518 * Makefile: Add missing EXTRA_DISTFILES in order to 'make install'
520 2005-11-05 Kornél Pál <kornelpal@hotmail.com>
522 * AssemblyInfo.cs: Use Consts.MonoVersion as AssemblyVersion.
524 2005-09-22 Marek Sieradzki <marek.sieradzki@gmail.com>
526 * Main.cs: Changed binPath to directory where all files are stored.
527 * Makefile: Added installing of additional files.
529 2005-09-21 Marek Sieradzki <marek.sieradzki@gmail.com>
531 * LoggerInfo.cs: Changed public to internal.
532 * xbuild.exe.sources: Added reference to AssemblyLoadInfo.
534 2005-09-21 Marek Sieradzki <marek.sieradzki@gmail.com>
536 * Microsoft.Common.tasks, xbuild.rsp, Microsoft.Build.xsd, MSBuild:
538 * Main.cs, Pararameters.cs: Changed to use Mono.XBuild.Framework and
539 Mono.XBuild.Utilities.
540 * CommandLineException.cs, LoggerInfo.cs: Added #if NET_2_0
543 2005-09-11 Marek Sieradzki <marek.sieradzki@gmail.com>
545 * xbuild.exe.sources: Added Consts.cs from common build files.
546 * LoggerInfo.cs: Public key token update.
547 * Parameters.cs, Main.cs: Changed to use BinPath instead of hard-coded path.
548 * Makefile: Added installing of xbuild's files.
549 * Microsoft.Common.tasks: Moved from main directory and changed to use
552 2005-09-09 Marek Sieradzki <marek.sieradzki@gmail.com>
554 * Main.cs: FxVersion.
555 * Makefile: Fixed Microsoft.Build.Utilities.dll name.
557 2005-09-05 Marek Sieradzki <marek.sieradzki@gmail.com>
559 * Microsoft.Build.xsd, MSBuild/Microsoft.Build.Core.xsd,
560 Microsoft.Build.Commontypes.xsd: Added schema files.
562 2005-08-30 Marek Sieradzki <marek.sieradzki@gmail.com>
564 * Main.cs, Parameters.cs: Added default target(s) handling.
566 2005-08-29 Marek Sieradzki <marek.sieradzki@gmail.com>
568 * LoggerInfo.cs: Removed AssemblyLoadInfo property, changed to inherit
570 * XBuild.targets: Updated.
571 * Parameters.cs: Removed debugging info and removed line producing
573 * Main.cs: Added check if engine is null.
575 2005-08-24 Marek Sieradzki <marek.sieradzki@gmail.com>
577 * Parameters.cs, Main.cs: Changed paths to absolute paths. They should be
578 separated to .in file probably when moving to autotools.
580 2005-08-12 Marek Sieradzki <marek.sieradzki@gmail.com>
582 * CommandLineException.cs, LoggerInfo.cs, Main.cs, Parameters.cs: