Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xconfigure2
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/ChangeLog123
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Makefile71
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Makefile.include110
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/AssemblyInfo.cs9
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/ChangeLog79
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Makefile115
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Manifest.addin.xml25
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Mono.Debugging.Backend.Mdb.AspNet.csproj126
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/MonoXspDebuggerSessionFactory.cs89
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/AssemblyInfo.cs9
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/ChangeLog325
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/DebuggerController.cs255
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/IDebuggerController.cs28
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/IDebuggerServer.cs87
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Makefile133
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Manifest.addin.xml23
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Mono.Debugging.Backend.Mdb.csproj156
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerSession.cs192
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerSessionFactory.cs106
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerStartInfo.cs42
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/mono.debugging.backend.mdb.pc.in6
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ArrayAdaptor.cs77
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/AssemblyInfo.cs30
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/BacktraceWrapper.cs137
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ChangeLog742
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Convert.cs522
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/DebuggerServer.cs967
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/EvaluationContext.cs86
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/FieldReference.cs113
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/IndexerValueReference.cs139
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Makefile135
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-0.cs67
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-4-2.cs97
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-4-4.cs59
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-6.cs20
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor.cs89
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptorFactory.cs122
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbObjectValueAdaptor.cs1122
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Mono.Debugging.Server.Mdb.csproj195
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/PropertyReference.cs86
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Server.cs109
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/VariableReference.cs79
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/MonoDevelop.Debugger.Mdb.sln59
-rwxr-xr-xextras/MonoDevelop.Debugger.Mdb/configure160
-rw-r--r--extras/MonoDevelop.Debugger.Mdb/rules.make42
-rw-r--r--extras/extras.mdw2
-rw-r--r--main/Main.sln10
-rw-r--r--main/configure.in1
m---------main/external/debugger-libs0
m---------main/external/mono-addins0
m---------main/external/nrefactory0
m---------main/external/xwt0
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am4
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.csproj4
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.MD1Serialization/MD1AspNetCustomDataItem.cs104
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.MD1Serialization/md1format.xml13
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.addin.xml4
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.csproj8
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProject.cs11
-rw-r--r--main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs3
-rwxr-xr-xmain/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/WebTypeManager.cs2
-rw-r--r--main/src/addins/CBinding/CBinding.Autotools/CBinding.Autotools.csproj4
-rw-r--r--main/src/addins/CBinding/CBinding.addin.xml4
-rw-r--r--main/src/addins/CBinding/CBinding.csproj7
-rw-r--r--main/src/addins/CBinding/md1format.xml27
-rw-r--r--main/src/addins/CSharpBinding/AspNet/CSharpBinding.AspNet.csproj4
-rw-r--r--main/src/addins/CSharpBinding/Autotools/Autotools.csproj4
-rw-r--r--main/src/addins/CSharpBinding/CSharpBinding.addin.xml4
-rw-r--r--main/src/addins/CSharpBinding/CSharpBinding.csproj3
-rw-r--r--main/src/addins/CSharpBinding/md1format.xml19
-rw-r--r--main/src/addins/ChangeLogAddIn/ChangeLogAddIn.addin.xml9
-rw-r--r--main/src/addins/ChangeLogAddIn/ChangeLogAddIn.csproj5
-rw-r--r--main/src/addins/ChangeLogAddIn/ChangeLogService.cs1
-rw-r--r--main/src/addins/ChangeLogAddIn/OldChangeLogData.cs100
-rw-r--r--main/src/addins/ChangeLogAddIn/Policies.xml2
-rw-r--r--main/src/addins/ChangeLogAddIn/ProjectOptionPanel.cs13
-rw-r--r--main/src/addins/Deployment/MonoDevelop.Deployment.Linux/MonoDevelop.Deployment.Linux.csproj4
-rw-r--r--main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment.addin.xml4
-rw-r--r--main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment.csproj8
-rw-r--r--main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment/MD1Serializer.cs125
-rw-r--r--main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment/PackageBuilder.cs70
-rw-r--r--main/src/addins/Deployment/MonoDevelop.Deployment/md1format.xml11
-rw-r--r--main/src/addins/GnomePlatform/GnomePlatform.csproj4
-rw-r--r--main/src/addins/ILAsmBinding/ILAsmBinding.csproj4
-rw-r--r--main/src/addins/MacPlatform/MacMenu/MDLinkMenuItem.cs9
-rw-r--r--main/src/addins/MacPlatform/MacPlatform.csproj4
-rw-r--r--main/src/addins/Makefile.am1
-rw-r--r--main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser.csproj4
-rw-r--r--main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyBrowserViewContent.cs6
-rw-r--r--main/src/addins/MonoDevelop.Autotools/MonoDevelop.Autotools.csproj4
-rw-r--r--main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/MonoDevelop.Debugger.Soft.AspNet.csproj4
-rw-r--r--main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.csproj4
-rw-r--r--main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32.csproj6
-rw-r--r--main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/CorEvaluationTests.cs1
-rw-r--r--main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/CorStackFrameTests.cs1
-rw-r--r--main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.csproj1
-rw-r--r--main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ExceptionCaughtDialog.cs343
-rw-r--r--main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ExceptionsDialog.cs21
-rw-r--r--main/src/addins/MonoDevelop.Debugger/gtk-gui/MonoDevelop.Debugger.ExceptionCaughtWidget.cs125
-rw-r--r--main/src/addins/MonoDevelop.Debugger/gtk-gui/gui.stetic127
-rw-r--r--main/src/addins/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.csproj4
-rw-r--r--main/src/addins/MonoDevelop.DocFood/MonoDevelop.DocFood.csproj4
-rw-r--r--main/src/addins/MonoDevelop.Gettext/MonoDevelop.Gettext.csproj4
-rw-r--r--main/src/addins/MonoDevelop.GtkCore/MonoDevelop.GtkCore.csproj4
-rw-r--r--main/src/addins/MonoDevelop.GtkCore/libstetic/libstetic.csproj4
-rw-r--r--main/src/addins/MonoDevelop.GtkCore/libsteticui/libsteticui.csproj4
-rw-r--r--main/src/addins/MonoDevelop.HexEditor/MonoDevelop.HexEditor.csproj4
-rw-r--r--main/src/addins/MonoDevelop.RegexToolkit/MonoDevelop.RegexToolkit.csproj4
-rw-r--r--main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor/SourceEditorView.cs20
-rw-r--r--main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor/SourceEditorWidget.cs14
-rw-r--r--main/src/addins/MonoDevelop.WebReferences/MonoDevelop.WebReferences.csproj4
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.csproj4
-rw-r--r--main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SchemaAssociationTests.cs2
-rw-r--r--main/src/addins/MonoDeveloperExtensions/MonoDeveloperExtensions.csproj4
-rw-r--r--main/src/addins/MonoDeveloperExtensions/NUnit/NUnit.csproj4
-rw-r--r--main/src/addins/NUnit/MonoDevelop.NUnit.csproj8
-rw-r--r--main/src/addins/NUnit/MonoDevelopNUnit.addin.xml5
-rw-r--r--main/src/addins/NUnit/NUnitRunner/NUnitRunner.csproj4
-rw-r--r--main/src/addins/NUnit/Project/NUnitAssemblyGroupFileFormat.cs126
-rw-r--r--main/src/addins/NUnit/md1format.xml18
-rw-r--r--main/src/addins/TextTemplating/Mono.TextTemplating/Mono.TextTemplating.csproj4
-rw-r--r--main/src/addins/TextTemplating/MonoDevelop.TextTemplating/MonoDevelop.TextTemplating.csproj4
-rw-r--r--main/src/addins/TextTemplating/TextTransform/TextTransform.csproj4
-rw-r--r--main/src/addins/VBNetBinding/VBNetBinding.addin.xml4
-rw-r--r--main/src/addins/VBNetBinding/VBNetBinding.csproj7
-rw-r--r--main/src/addins/VBNetBinding/md1format.xml16
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git.csproj4
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git/GitCommitDialogExtension.cs50
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion.Unix/MonoDevelop.VersionControl.Subversion.Unix.csproj4
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion.Unix/MonoDevelop.VersionControl.Subversion.Unix/SvnClient.cs10
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion/MonoDevelop.VersionControl.Subversion.csproj4
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl.Dialogs/CommitDialog.cs32
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl.Views/EditorCompareWidgetBase.cs2
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/BaseView.cs2
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/CheckoutCommand.cs20
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/CommitDialogExtension.cs4
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/Repository.cs4
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/UrlBasedRepository.cs4
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/VersionControlService.cs5
-rw-r--r--main/src/addins/WindowsPlatform/WindowsPlatform.csproj4
-rw-r--r--main/src/addins/prj2make-sharp-lib/AddinInfo.cs17
-rw-r--r--main/src/addins/prj2make-sharp-lib/AssemblyInfo.cs9
-rw-r--r--main/src/addins/prj2make-sharp-lib/ChangeLog1364
-rw-r--r--main/src/addins/prj2make-sharp-lib/CsprojInfo.cs175
-rw-r--r--main/src/addins/prj2make-sharp-lib/Makefile.am1
-rw-r--r--main/src/addins/prj2make-sharp-lib/MsPrjHelper.cs578
-rw-r--r--main/src/addins/prj2make-sharp-lib/VS2003ProjectFileFormat.cs275
-rw-r--r--main/src/addins/prj2make-sharp-lib/csproj_ver2003.cs285
-rw-r--r--main/src/addins/prj2make-sharp-lib/pkgconfiginvoker.cs98
-rw-r--r--main/src/addins/prj2make-sharp-lib/prj2make-sharp-lib.addin.xml7
-rw-r--r--main/src/addins/prj2make-sharp-lib/prj2make-sharp-lib.csproj118
-rw-r--r--main/src/core/Mono.Texteditor/Mono.TextEditor.csproj6
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Core.addin.xml9
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Core.csproj17
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/BuildActionDataType.cs84
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CmbxFileFormat.cs485
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineConfiguration.cs115
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineConfigurationEntry.cs82
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineStartupMode.cs77
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1CustomDataItem.cs193
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1DotNetProjectHandler.cs4
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1FileFormat.cs215
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1ProjectService.cs71
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/PrjxFileFormat.cs59
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProject.cs15
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs30
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects/DotNetProject.cs2
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectReference.cs23
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectService.cs11
-rw-r--r--main/src/core/MonoDevelop.Core/MonoDevelop.Projects/SolutionItem.cs2
-rw-r--r--main/src/core/MonoDevelop.Core/md1format.xml91
-rw-r--r--main/src/core/MonoDevelop.Ide/ExtensionModel/ItemOptionPanels.addin.xml3
-rw-r--r--main/src/core/MonoDevelop.Ide/ExtensionModel/MonoDevelop.Ide.addin.xml6
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Components.Docking/DockBarItem.cs4
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Components.PropertyGrid/PropertyGridTable.cs10
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformationWindow.cs41
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Commands/FileCommands.cs7
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/CustomToolService.cs14
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/CompletionTextEditorExtension.cs16
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectFileNodeBuilder.cs8
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/PadCollection.cs (renamed from main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineConfigurationSet.cs)66
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/Workbench.cs17
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/CombineMSBuildOptions.cs84
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/GeneralProjectOptions.cs33
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewProjectDialog.cs5
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/TypeSystemService.cs96
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj2
-rw-r--r--main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/ProjectOperations.cs2
-rw-r--r--main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.NewProjectDialog.cs1
-rw-r--r--main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.OptionPanels.GeneralProjectOptionsWidget.cs42
-rw-r--r--main/src/core/MonoDevelop.Ide/gtk-gui/gui.stetic48
-rw-r--r--main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.csproj4
-rw-r--r--main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.dotnet.v4.0.csproj2
-rw-r--r--main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v2.0.csproj2
-rw-r--r--main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v3.5.csproj2
-rw-r--r--main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v4.0.csproj2
-rw-r--r--main/src/core/MonoDevelop.Startup/MonoDevelop.Startup.csproj4
-rw-r--r--main/src/tools/mdhost/mdhost.csproj4
-rw-r--r--main/src/tools/mdmonitor/mdmonitor.csproj4
-rw-r--r--main/src/tools/mdtool/mdtool.csproj4
-rw-r--r--main/tests/Makefile.am52
-rw-r--r--main/tests/UnitTests/MonoDevelop.CSharpBinding/FoldingParserTests.cs2
-rw-r--r--main/tests/UnitTests/MonoDevelop.CSharpBinding/OnTheFlyFormatterTests.cs2
-rw-r--r--main/tests/UnitTests/MonoDevelop.CSharpBinding/TestWorkbenchWindow.cs1
-rw-r--r--main/tests/UnitTests/MonoDevelop.Ide.Gui/CompletionListWindowTests.cs1
-rw-r--r--main/tests/UnitTests/MonoDevelop.Projects/LocalCopyTests.cs50
-rw-r--r--main/tests/UnitTests/MonoDevelop.Projects/MSBuildTests.cs27
-rw-r--r--main/tests/UnitTests/MonoDevelop.Projects/MakefileTests.cs4
-rw-r--r--main/tests/UnitTests/MonoDevelop.Projects/MdsTests.cs153
-rw-r--r--main/tests/UnitTests/MonoDevelop.Projects/PackagingTests.cs334
-rw-r--r--main/tests/UnitTests/MonoDevelop.Projects/ProjectTests.cs1
-rw-r--r--main/tests/UnitTests/MonoDevelop.Projects/SolutionTests.cs99
-rw-r--r--main/tests/UnitTests/MonoDevelop.Projects/TestProjectsChecks.cs97
-rw-r--r--main/tests/UnitTests/UnitTests.csproj1
-rw-r--r--main/tests/UnitTests/Util.cs19
-rw-r--r--main/tests/test-projects/ChangeLog259
-rw-r--r--main/tests/test-projects/ContactBook/ContactBook.mds24
-rw-r--r--main/tests/test-projects/ContactBook/ContactBook.sln40
-rw-r--r--main/tests/test-projects/ContactBook/ContactBook/ContactBook.csproj74
-rw-r--r--main/tests/test-projects/ContactBook/ContactBook/ContactBook.mdp37
-rw-r--r--main/tests/test-projects/ContactBook/CustomWidgets/CustomWidgets.csproj63
-rw-r--r--main/tests/test-projects/ContactBook/CustomWidgets/CustomWidgets.mdp31
-rw-r--r--main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp.mds24
-rw-r--r--main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/Program.cs38
-rw-r--r--main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/Properties/AssemblyInfo.cs51
-rw-r--r--main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/console-with-libs-mdp.mdp25
-rw-r--r--main/tests/test-projects/console-with-libs-mdp/library1/MyClass.cs41
-rw-r--r--main/tests/test-projects/console-with-libs-mdp/library1/library1.mdp23
-rw-r--r--main/tests/test-projects/console-with-libs-mdp/library2/Properties/AssemblyInfo.cs51
-rw-r--r--main/tests/test-projects/console-with-libs-mdp/library2/library2.mdp23
-rw-r--r--main/tests/test-projects/console-with-libs/console-with-libs.sln33
-rw-r--r--main/tests/test-projects/console-with-libs/console-with-libs/Program.cs (renamed from main/tests/test-projects/nested-solutions-mdp/console-project/Program.cs)4
-rw-r--r--main/tests/test-projects/console-with-libs/console-with-libs/Properties/AssemblyInfo.cs (renamed from main/tests/test-projects/nested-solutions-mdp/console-project/Properties/AssemblyInfo.cs)6
-rw-r--r--main/tests/test-projects/console-with-libs/console-with-libs/console-with-libs.csproj53
-rw-r--r--main/tests/test-projects/console-with-libs/library1/MyClass.cs (renamed from main/tests/test-projects/nested-solutions-mdp/nested-solution1/library1/MyClass.cs)6
-rw-r--r--main/tests/test-projects/console-with-libs/library1/Properties/AssemblyInfo.cs (renamed from main/tests/test-projects/nested-solutions-mdp/nested-solution1/library1/Properties/AssemblyInfo.cs)4
-rw-r--r--main/tests/test-projects/console-with-libs/library1/library1.csproj45
-rw-r--r--main/tests/test-projects/console-with-libs/library2/MyClass.cs (renamed from main/tests/test-projects/console-with-libs-mdp/library2/MyClass.cs)6
-rw-r--r--main/tests/test-projects/console-with-libs/library2/Properties/AssemblyInfo.cs (renamed from main/tests/test-projects/nested-solutions-mdp/nested-solution1/library2/Properties/AssemblyInfo.cs)4
-rw-r--r--main/tests/test-projects/console-with-libs/library2/library2.csproj45
-rw-r--r--main/tests/test-projects/csharp-console-mdp/csharp-console-mdp.mds16
-rw-r--r--main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/Program.cs38
-rw-r--r--main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/Properties/AssemblyInfo.cs51
-rw-r--r--main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/csharp-console-mdp.mdp23
-rw-r--r--main/tests/test-projects/csharp-console/csharp-console.sln21
-rw-r--r--main/tests/test-projects/csharp-console/csharp-console/Program.cs (renamed from main/tests/test-projects/nested-solutions-mdp/nested-solution2/console-project2/Program.cs)4
-rw-r--r--main/tests/test-projects/csharp-console/csharp-console/Properties/AssemblyInfo.cs (renamed from main/tests/test-projects/console-with-libs-mdp/library1/Properties/AssemblyInfo.cs)6
-rw-r--r--main/tests/test-projects/csharp-console/csharp-console/csharp-console.csproj44
-rw-r--r--main/tests/test-projects/generated-console-project/TestProject.csproj10
-rw-r--r--main/tests/test-projects/generated-console-project/TestProject.mdp28
-rw-r--r--main/tests/test-projects/generated-console-project/TestSolution.mds16
-rw-r--r--main/tests/test-projects/generated-console-project/TestSolution.sln14
-rw-r--r--main/tests/test-projects/local-copy-package/ConsoleProject.sln29
-rw-r--r--main/tests/test-projects/local-copy-package/ConsoleProject/ConsoleProject.csproj60
-rw-r--r--main/tests/test-projects/local-copy-package/ConsoleProject/ConsoleProject.csproj.saved64
-rwxr-xr-xmain/tests/test-projects/local-copy-package/ConsoleProject/Program.cs14
-rwxr-xr-xmain/tests/test-projects/local-copy-package/ConsoleProject/Properties/AssemblyInfo.cs33
-rw-r--r--main/tests/test-projects/local-copy-package/LibProject/LibProject.csproj39
-rw-r--r--main/tests/test-projects/local-copy-package/LibProject/MyClass.cs12
-rw-r--r--main/tests/test-projects/local-copy-package/LibProject/Properties/AssemblyInfo.cs22
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/console-project/console-project.mdp27
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution1/library1/library1.mdp23
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution1/library2/MyClass.cs41
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution1/library2/library2.mdp23
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution1/nested-solution1.mds20
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution2/console-project2/Properties/AssemblyInfo.cs51
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution2/console-project2/console-project2.mdp25
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution2.mds20
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/MyClass.cs41
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/Properties/AssemblyInfo.cs51
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/library3.mdp23
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/MyClass.cs41
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/Properties/AssemblyInfo.cs51
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/library4.mdp23
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/nested-solution3.mds20
-rw-r--r--main/tests/test-projects/nested-solutions-mdp/nested-solutions-mdp.mds24
-rw-r--r--main/tests/test-projects/nunit-assembly-group/nunit-assembly-group.md-nunit9
-rw-r--r--main/tests/test-projects/nunit-assembly-group/nunit-assembly-group.mds13
-rw-r--r--main/tests/test-projects/test-build-configs/Lib1/Lib1.csproj57
-rw-r--r--main/tests/test-projects/test-build-configs/Lib1/Lib1.mdp26
-rw-r--r--main/tests/test-projects/test-build-configs/Lib2/Lib2.csproj43
-rw-r--r--main/tests/test-projects/test-build-configs/Lib2/Lib2.mdp23
-rw-r--r--main/tests/test-projects/test-build-configs/Lib3/Lib3.csproj43
-rw-r--r--main/tests/test-projects/test-build-configs/Lib3/Lib3.mdp23
-rw-r--r--main/tests/test-projects/test-build-configs/Lib4/Lib4.csproj43
-rw-r--r--main/tests/test-projects/test-build-configs/Lib4/Lib4.mdp23
-rw-r--r--main/tests/test-projects/test-build-configs/test-build-configs.mds28
-rw-r--r--main/tests/test-projects/test-build-configs/test-build-configs.sln39
289 files changed, 1920 insertions, 15463 deletions
diff --git a/configure b/configure
index 7378c9e8d0..d45b7d6af9 100755
--- a/configure
+++ b/configure
@@ -258,7 +258,7 @@ fi
if test `uname` = "Darwin"; then
if test "x$BUILD_REVISION" != "x" -o "x$DYLD_FALLBACK_LIBRARY_PATH" = "x"; then
- export DYLD_FALLBACK_LIBRARY_PATH="/Library/Frameworks/Mono.framework/Versions/Current/lib:/lib:/usr/lib"
+ export DYLD_FALLBACK_LIBRARY_PATH="/Library/Frameworks/Mono.framework/Versions/Current/lib:/lib:/usr/lib:/Library/Developer/CommandLineTools/usr/lib"
export PATH="/Library/Frameworks/Mono.framework/Versions/Current/bin:$PATH"
export ACLOCAL_FLAGS="-I /Library/Frameworks/Mono.framework/Versions/Current/share/aclocal"
fi
diff --git a/extras/MonoDevelop.Debugger.Mdb/ChangeLog b/extras/MonoDevelop.Debugger.Mdb/ChangeLog
deleted file mode 100644
index 9b2ae56f4e..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/ChangeLog
+++ /dev/null
@@ -1,123 +0,0 @@
-2010-06-14 Lluis Sanchez Gual <lluis@novell.com>
-
- * configure: Bump MD version.
-
-2010-05-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * configure: Bump MD version.
-
-2010-03-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * configure: Bumped MD version.
-
-2010-03-08 Jonathan Pryor <jpryor@novell.com>
-
- * configure: Create a $(CSC) make variable.
- * MonoDevelop.Debugger.Gdb.make: Set $(ASSEMBLY_COMPILER_COMMAND) to
- $(CSC). This allows a top-level CSC override to be used within this
- module (e.g. top-level `make CSC=dmcs` for a v4 build).
-
-2010-03-01 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Debugger.Mdb.sln: The invariant policy can't be
- used anymore as base policy set.
-
-2010-02-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Debugger.Mdb.sln: Flush.
-
-2009-10-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * configure: Bump MD version.
-
-2009-10-13 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Debugger.Mdb.sln: Flush.
-
-2009-10-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * configure: Bump MD version.
-
-2009-08-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Debugger.Mdb.sln: Updated.
-
-2009-04-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile:
- * MonoDevelop.Debugger.Mdb.sln:
- * Mono.Debugging.Backend.Mdb.AspNet: Initial support for XSP
- debugging.
-
-2009-04-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * configure: Bump MD version.
-
-2009-02-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Debugger.Mdb.sln: Flush.
-
-2009-02-25 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDevelop.Debugger.Mdb.sln: Set policies. Remove unused
- name attribute.
-
-2009/02/06 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Debugger.Mdb.sln: Add missing files.
-
-2009/02/06 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Debugger.Mdb.mds: Migrated to MSBuild file format.
-
-2009/02/03 Lluis Sanchez Gual <lluis@novell.com>
-
- * configure: Bump MD version.
-
-2008-11-05 Lluis Sanchez Gual <lluis@novell.com>
-
- * configure: Bump MD version.
-
-2008-10-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * configure: Fix tarball name. Update debugger version requirement.
-
-2008-08-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Debugger.Mdb, MonoDevelop.Debugger.Mdb/AssemblyInfo.cs,
- MonoDevelop.Debugger.Mdb/DebuggingService.cs,
- MonoDevelop.Debugger.Mdb/Debugger.mdp,
- MonoDevelop.Debugger.Mdb/BreakpointHitArgs.cs,
- MonoDevelop.Debugger.Mdb/DebugExecutionHandlerFactory.cs,
- MonoDevelop.Debugger.Mdb/BreakpointEntry.cs,
- MonoDevelop.Debugger.Mdb/Gui, MonoDevelop.Debugger.Mdb/Gui/Pads,
- MonoDevelop.Debugger.Mdb/Gui/Pads/StackTracePad.cs,
- MonoDevelop.Debugger.Mdb/Services.cs,
- MonoDevelop.Debugger.Mdb/MonoDevelop.Debugger.addin.xml,
- MonoDevelop.Debugger.Mdb/ChangeLog,
- MonoDevelop.Debugger.Mdb/MonoDevelop.Debugger.Mdb.mdp,
- MonoDevelop.Debugger.Mdb/Makefile: Remove unused stuff.
-
-2008-06-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * configure: Bump MD version.
-
-2008-05-14 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.include, configure, rules.make, ChangeLog,
- Mono.Debugging.Server.Mdb, Mono.Debugging.Backend.Mdb,
- MonoDevelop.Debugger.Mdb, MonoDevelop.Debugger.Mdb/AssemblyInfo.cs,
- MonoDevelop.Debugger.Mdb/DebuggingService.cs,
- MonoDevelop.Debugger.Mdb/Debugger.mdp,
- MonoDevelop.Debugger.Mdb/BreakpointHitArgs.cs,
- MonoDevelop.Debugger.Mdb/DebugExecutionHandlerFactory.cs,
- MonoDevelop.Debugger.Mdb/BreakpointEntry.cs,
- MonoDevelop.Debugger.Mdb/Gui, MonoDevelop.Debugger.Mdb/Gui/Pads,
- MonoDevelop.Debugger.Mdb/Gui/Pads/StackTracePad.cs,
- MonoDevelop.Debugger.Mdb/Services.cs,
- MonoDevelop.Debugger.Mdb/MonoDevelop.Debugger.addin.xml,
- MonoDevelop.Debugger.Mdb/ChangeLog,
- MonoDevelop.Debugger.Mdb/MonoDevelop.Debugger.Mdb.mdp,
- MonoDevelop.Debugger.Mdb/Makefile, Makefile,
- MonoDevelop.Debugger.Mdb.mds: Initial import.
-
diff --git a/extras/MonoDevelop.Debugger.Mdb/Makefile b/extras/MonoDevelop.Debugger.Mdb/Makefile
deleted file mode 100644
index c1fcd3a8eb..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Makefile
+++ /dev/null
@@ -1,71 +0,0 @@
-
-EXTRA_DIST = rules.make configure Makefile.include
-
-all: all-recursive
-
-top_srcdir=.
-include $(top_srcdir)/config.make
-include $(top_srcdir)/Makefile.include
-include $(top_srcdir)/rules.make
-
-#include $(top_srcdir)/custom-hooks.make
-
-#Warning: This is an automatically generated file, do not edit!
-ifeq ($(CONFIG),DEBUG)
- SUBDIRS = Mono.Debugging.Backend.Mdb Mono.Debugging.Backend.Mdb.AspNet Mono.Debugging.Server.Mdb
-endif
-ifeq ($(CONFIG),RELEASE)
- SUBDIRS = Mono.Debugging.Backend.Mdb Mono.Debugging.Backend.Mdb.AspNet Mono.Debugging.Server.Mdb
-endif
-
-
-CONFIG_MAKE=$(top_srcdir)/config.make
-
-%-recursive: $(CONFIG_MAKE)
- @set . $$MAKEFLAGS; final_exit=:; \
- case $$2 in --unix) shift ;; esac; \
- case $$2 in *=*) dk="exit 1" ;; *k*) dk=: ;; *) dk="exit 1" ;; esac; \
- make pre-$*-hook prefix=$(prefix) ; \
- for dir in $(call quote_each,$(SUBDIRS)); do \
- case "$$dir" in \
- .) make $*-local || { final_exit="exit 1"; $$dk; };;\
- *) (cd "$$dir" && make $*) || { final_exit="exit 1"; $$dk; };;\
- esac \
- done; \
- make post-$*-hook prefix=$(prefix) ; \
- $$final_exit
-
-$(CONFIG_MAKE):
- echo "You must run configure first"
- exit 1
-
-clean: clean-recursive
-install: install-recursive
-uninstall: uninstall-recursive
-
-dist: $(CONFIG_MAKE)
- rm -rf $(PACKAGE)-$(VERSION)
- mkdir $(PACKAGE)-$(VERSION)
- make pre-dist-hook distdir=$$distdir
- for dir in $(call quote_each,$(SUBDIRS)); do \
- pkgdir=`pwd`/$(PACKAGE)-$(VERSION); \
- mkdir "$$pkgdir/$$dir" || true; \
- case $$dir in \
- .) make dist-local "distdir=$$pkgdir" || exit 1;; \
- *) (cd "$$dir"; make dist-local "distdir=$$pkgdir/$$dir") || exit 1;; \
- esac \
- done
- (make dist-local distdir=$(PACKAGE)-$(VERSION))
- make post-dist-hook "distsir=$$distdir"
- tar czvf $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION)
- rm -rf $(PACKAGE)-$(VERSION)
- @echo "=========================================="
- @echo "$(PACKAGE)-$(VERSION) has been packaged > $(PACKAGE)-$(VERSION).tar.gz"
- @echo "=========================================="
-
-distcheck: dist
- (mkdir test; cd test; \
- tar xzvf ../$(PACKAGE)-$(VERSION).tar.gz; cd $(PACKAGE)-$(VERSION); \
- ./configure --prefix=$$(cd `pwd`/..; pwd); \
- make && make install && make dist);
- rm -rf test
diff --git a/extras/MonoDevelop.Debugger.Mdb/Makefile.include b/extras/MonoDevelop.Debugger.Mdb/Makefile.include
deleted file mode 100644
index 7e13b91f9f..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Makefile.include
+++ /dev/null
@@ -1,110 +0,0 @@
-VALID_CULTURES = ar bg ca zh-CHS cs da de el en es fi fr he hu is it ja ko nl no pl pt ro ru hr sk sq sv th tr id uk be sl et lv lt fa vi hy eu mk af fo hi sw gu ta te kn mr gl kok ar-SA bg-BG ca-ES zh-TW cs-CZ da-DK de-DE el-GR en-US fi-FI fr-FR he-IL hu-HU is-IS it-IT ja-JP ko-KR nl-NL nb-NO pl-PL pt-BR ro-RO ru-RU hr-HR sk-SK sq-AL sv-SE th-TH tr-TR id-ID uk-UA be-BY sl-SI et-EE lv-LV lt-LT fa-IR vi-VN hy-AM eu-ES mk-MK af-ZA fo-FO hi-IN sw-KE gu-IN ta-IN te-IN kn-IN mr-IN gl-ES kok-IN ar-IQ zh-CN de-CH en-GB es-MX fr-BE it-CH nl-BE nn-NO pt-PT sv-FI ar-EG zh-HK de-AT en-AU es-ES fr-CA ar-LY zh-SG de-LU en-CA es-GT fr-CH ar-DZ zh-MO en-NZ es-CR fr-LU ar-MA en-IE es-PA ar-TN en-ZA es-DO ar-OM es-VE ar-YE es-CO ar-SY es-PE ar-JO es-AR ar-LB en-ZW es-EC ar-KW en-PH es-CL ar-AE es-UY ar-BH es-PY ar-QA es-BO es-SV es-HN es-NI es-PR zh-CHT
-
-s2q=$(subst \ ,?,$1)
-q2s=$(subst ?,\ ,$1)
-# use this when result will be quoted
-unesc2=$(subst ?, ,$1)
-
-build_sources = $(FILES) $(GENERATED_FILES)
-build_sources_esc= $(call s2q,$(build_sources))
-# use unesc2, as build_sources_embed is quoted
-build_sources_embed= $(call unesc2,$(build_sources_esc:%='$(srcdir)/%'))
-
-comma__=,
-get_resource_name = $(firstword $(subst $(comma__), ,$1))
-get_culture = $(lastword $(subst ., ,$(basename $1)))
-is_cultured_resource = $(and $(word 3,$(subst ., ,$1)), $(filter $(VALID_CULTURES),$(lastword $(subst ., ,$(basename $1)))))
-
-RESOURCES_ESC=$(call s2q,$(RESOURCES))
-
-build_resx_list = $(foreach res, $(RESOURCES_ESC), $(if $(filter %.resx, $(call get_resource_name,$(res))),$(res),))
-build_non_culture_resx_list = $(foreach res, $(build_resx_list),$(if $(call is_cultured_resource,$(call get_resource_name,$(res))),,$(res)))
-build_non_culture_others_list = $(foreach res, $(filter-out $(build_resx_list),$(RESOURCES_ESC)),$(if $(call is_cultured_resource,$(call get_resource_name,$(res))),,$(res)))
-build_others_list = $(build_non_culture_others_list)
-build_xamlg_list = $(filter %.xaml.g.cs, $(FILES))
-
-# resgen all .resx resources
-build_resx_files = $(foreach res, $(build_resx_list), $(call get_resource_name,$(res)))
-build_resx_resources_esc = $(build_resx_files:.resx=.resources)
-build_resx_resources = $(call q2s,$(build_resx_resources_esc))
-
-# embed resources for the main assembly
-build_resx_resources_hack = $(subst .resx,.resources, $(build_non_culture_resx_list))
-# use unesc2, as build_resx_resources_embed is quoted
-build_resx_resources_embed = $(call unesc2,$(build_resx_resources_hack:%='-resource:%'))
-build_others_files = $(call q2s,$(foreach res, $(build_others_list),$(call get_resource_name,$(res))))
-build_others_resources = $(build_others_files)
-# use unesc2, as build_others_resources_embed is quoted
-build_others_resources_embed = $(call unesc2,$(build_others_list:%='-resource:$(srcdir)/%'))
-
-build_resources = $(build_resx_resources) $(build_others_resources)
-build_resources_embed = $(build_resx_resources_embed) $(build_others_resources_embed)
-
-# -usesourcepath is available only for resgen2
-emit_resgen_target_1=$(call q2s,$1) : $(call q2s,$(subst .resources,.resx,$1)); cd '$$(shell dirname '$$<')' && $$(RESGEN) '$$(shell basename '$$<')' '$$(shell basename '$$@')'
-emit_resgen_target_2=$(call q2s,$1) : $(call q2s,$(subst .resources,.resx,$1)); $$(RESGEN) -usesourcepath '$$<' '$$@'
-
-emit_resgen_target=$(if $(filter resgen2,$(RESGEN)),$(emit_resgen_target_2),$(emit_resgen_target_1))
-emit_resgen_targets=$(foreach res,$(build_resx_resources_esc),$(eval $(call emit_resgen_target,$(res))))
-
-build_references_ref = $(call q2s,$(foreach ref, $(call s2q,$(REFERENCES)), $(if $(filter -pkg:%, $(ref)), $(ref), $(if $(filter -r:%, $(ref)), $(ref), -r:$(ref)))))
-build_references_ref += $(call q2s,$(foreach ref, $(call s2q,$(DLL_REFERENCES)), -r:$(ref)))
-build_references_ref += $(call q2s,$(foreach ref, $(call s2q,$(PROJECT_REFERENCES)), -r:$(ref)))
-
-s2q2s=$(call unesc2,$(call s2q,$1))
-cp_actual=test -z $1 || cp $1 $2
-cp=$(call cp_actual,'$(call s2q2s,$1)','$(call s2q2s,$2)')
-
-rm_actual=test -z '$1' || rm -f '$2'
-rm=$(call rm_actual,$(call s2q2s,$1),$(call s2q2s,$2)/$(shell basename '$(call s2q2s,$1)'))
-
-EXTRA_DIST += $(build_sources) $(build_resx_files) $(build_others_files) $(ASSEMBLY_WRAPPER_IN) $(EXTRAS) $(DATA_FILES) $(build_culture_res_files)
-CLEANFILES += $(ASSEMBLY) $(ASSEMBLY).mdb $(BINARIES) $(build_resx_resources) $(build_satellite_assembly_list)
-DISTCLEANFILES = $(GENERATED_FILES) $(pc_files) $(BUILD_DIR)/*
-
-pkglib_SCRIPTS = $(ASSEMBLY)
-bin_SCRIPTS = $(BINARIES)
-
-programfilesdir = @libdir@/@PACKAGE@
-programfiles_DATA = $(PROGRAMFILES)
-linuxpkgconfigdir = @libdir@/pkgconfig
-linuxpkgconfig_DATA = $(LINUX_PKGCONFIG)
-
-
-# macros
-
-# $(call emit-deploy-target,deploy-variable-name)
-define emit-deploy-target
-$($1): $($1_SOURCE)
- mkdir -p '$$(shell dirname '$$@')'
- cp '$$<' '$$@'
-endef
-
-# $(call emit-deploy-wrapper,wrapper-variable-name,wrapper-sourcefile,x)
-# assumes that for a wrapper foo.pc its source template is foo.pc.in
-# if $3 is non-empty then wrapper is marked exec
-define emit-deploy-wrapper
-$($1): $2 $(top_srcdir)/config.make
- mkdir -p '$$(shell dirname '$$@')'
- cp '$$<' '$$@'
- $(if $3,chmod +x '$$@')
-
-$2: $2.in $(top_srcdir)/config.make
- sed -e "s,@prefix@,$(prefix)," -e "s,@PACKAGE@,$(PACKAGE)," -e "s,@expanded_libdir@,$(libdir)," -e "s,@expanded_bindir@,$(bindir)," -e "s,@expanded_datadir@,$(datadir)," < $2.in > $2
-endef
-
-# generating satellite assemblies
-
-culture_resources = $(foreach res, $(RESOURCES_ESC), $(if $(call is_cultured_resource,$(call get_resource_name, $(res))),$(res)))
-cultures = $(sort $(foreach res, $(culture_resources), $(call get_culture,$(call get_resource_name,$(res)))))
-culture_resource_dependencies = $(call q2s,$(BUILD_DIR)/$1/$(SATELLITE_ASSEMBLY_NAME): $(subst .resx,.resources,$2))
-culture_resource_commandlines = $(call unesc2,cmd_line_satellite_$1 += '/embed:$(subst .resx,.resources,$2)')
-build_satellite_assembly_list = $(call q2s,$(cultures:%=$(BUILD_DIR)/%/$(SATELLITE_ASSEMBLY_NAME)))
-build_culture_res_files = $(call q2s,$(foreach res, $(culture_resources),$(call get_resource_name,$(res))))
-
-$(eval $(foreach res, $(culture_resources), $(eval $(call culture_resource_dependencies,$(call get_culture,$(call get_resource_name,$(res))),$(call get_resource_name,$(res))))))
-$(eval $(foreach res, $(culture_resources), $(eval $(call culture_resource_commandlines,$(call get_culture,$(call get_resource_name,$(res))),$(res)))))
-
-$(build_satellite_assembly_list): $(BUILD_DIR)/%/$(SATELLITE_ASSEMBLY_NAME):
- mkdir -p '$(@D)'
- $(AL) -out:'$@' -culture:$* -t:lib $(cmd_line_satellite_$*) \ No newline at end of file
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/AssemblyInfo.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/AssemblyInfo.cs
deleted file mode 100644
index 6893903485..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/AssemblyInfo.cs
+++ /dev/null
@@ -1,9 +0,0 @@
-// Autogenerated from Manifest.addin.xml
-
-using System.Reflection;
-
-[assembly: AssemblyProduct ("MonoDevelop")]
-[assembly: AssemblyTitle ("Asp.Net Debugging Support")]
-[assembly: AssemblyDescription ("Managed Debugging Engine support for MDB")]
-[assembly: AssemblyVersion ("2.6")]
-[assembly: AssemblyCopyright ("MIT X11")]
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/ChangeLog b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/ChangeLog
deleted file mode 100644
index f1d690af44..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/ChangeLog
+++ /dev/null
@@ -1,79 +0,0 @@
-2010-03-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * Manifest.addin.xml: Bumped MD version.
-
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.AspNet.csproj: Flush.
-
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.AspNet.csproj: Merged MD.Projects
- into MD.Core, and MD.Projects.Gui, MD.Core.Gui and
- MD.Components into MD.Ide.
-
-2010-03-08 Jonathan Pryor <jpryor@novell.com>
-
- * Makefile: Set $(ASSEMBLY_COMPILER_COMMAND) to $(CSC).
- This allows a top-level CSC override to be used within this
- module (e.g. top-level `make CSC=dmcs` for a v4 build).
-
-2010-02-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.AspNet.csproj: Flush.
-
- * Manifest.addin.xml:
- * MonoXspDebuggerSessionFactory.cs: Track api changes. Some
- engine info is now taken from extension node metadata.
-
-2009-11-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoXspDebuggerSessionFactory.cs: Implement Id property.
-
-2009-10-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * Manifest.addin.xml: Bump MD version.
-
-2009-10-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoXspDebuggerSessionFactory.cs: Fix spelling of
- GetAttachableProcesses API.
-
-2009-10-13 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.AspNet.csproj: Flush.
-
-2009-10-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * Manifest.addin.xml: Bump MD version.
-
-2009-08-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.AspNet.csproj: We now depend on
- gtk# 2.12.8, Mono 2.4, and Mono.Addins 0.4.
-
-2009-05-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.AspNet.csproj: Flush.
-
-2009-05-06 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoXspDebuggerSessionFactory.cs: Don't enable user modules
- for normal app debugging.
-
-2009-05-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoXspDebuggerSessionFactory.cs: Register user modules.
-
-2009-04-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile:
- * AssemblyInfo.cs:
- * Manifest.addin.xml:
- * MonoXspDebuggerSessionFactory.cs:
- * Mono.Debugging.Backend.Mdb.AspNet.csproj: Initial support
- for XSP debugging.
-
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Makefile b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Makefile
deleted file mode 100644
index 5799103fd8..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Makefile
+++ /dev/null
@@ -1,115 +0,0 @@
-
-EXTRA_DIST = Makefile
-
-# Warning: This is an automatically generated file, do not edit!
-
-srcdir=.
-top_srcdir=..
-
-include $(top_srcdir)/config.make
-
-ifeq ($(CONFIG),DEBUG)
-ASSEMBLY_COMPILER_COMMAND = $(CSC)
-ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
-
-ASSEMBLY = ../build/AspNetDebuggerClient.dll
-ASSEMBLY_MDB = $(ASSEMBLY).mdb
-COMPILE_TARGET = library
-PROJECT_REFERENCES =
-BUILD_DIR = ../build
-
-DEBUGGERCLIENT_DLL_MDB_SOURCE=../build/AspNetDebuggerClient.dll.mdb
-
-endif
-
-ifeq ($(CONFIG),RELEASE)
-ASSEMBLY_COMPILER_COMMAND = $(CSC)
-ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize+ -debug -define:DEBUG "-define:TRACE"
-
-ASSEMBLY = bin/Release/AspNetDebuggerClient.dll
-ASSEMBLY_MDB = $(ASSEMBLY).mdb
-COMPILE_TARGET = library
-PROJECT_REFERENCES =
-BUILD_DIR = bin/Release/
-
-DEBUGGERCLIENT_DLL_MDB_SOURCE=bin/Release/AspNetDebuggerClient.dll.mdb
-
-endif
-
-AL=al2
-SATELLITE_ASSEMBLY_NAME=Mono.Debugging.Backend.Mdb.resources.dll
-
-PROGRAMFILES = \
- $(DEBUGGERCLIENT_DLL_MDB)
-
-
-RESGEN=resgen2
-
-DEBUGGERCLIENT_DLL_MDB = $(BUILD_DIR)/AspNetDebuggerClient.dll.mdb
-
-FILES = \
- AssemblyInfo.cs \
- MonoXspDebuggerSessionFactory.cs
-
-DATA_FILES =
-
-RESOURCES = Manifest.addin.xml
-
-EXTRAS = \
- ChangeLog
-
-REFERENCES = \
- ../build/DebuggerClient.dll \
- -pkg:monodevelop \
- -pkg:monodevelop-core-addins \
- System
-
-DLL_REFERENCES =
-
-CLEANFILES = $(PROGRAMFILES)
-
-#Targets
-all: $(ASSEMBLY) $(PROGRAMFILES) $(top_srcdir)/config.make
-
-include $(top_srcdir)/Makefile.include
-#include $(srcdir)/custom-hooks.make
-
-
-
-$(eval $(call emit_resgen_targets))
-$(build_xamlg_list): %.xaml.g.cs: %.xaml
- xamlg '$<'
-
-INSTALL_DIR = $(DESTDIR)$(prefix)/lib/monodevelop/AddIns/MonoDevelop.Debugger
-
-LOCAL_PKGCONFIG=PKG_CONFIG_PATH=../../../local-config:$$PKG_CONFIG_PATH
-
-$(ASSEMBLY) $(ASSEMBLY_MDB): $(build_sources) $(build_resources) $(build_datafiles) $(DLL_REFERENCES) $(PROJECT_REFERENCES) $(build_xamlg_list) $(build_satellite_assembly_list)
- make pre-all-local-hook prefix=$(prefix)
- mkdir -p $(shell dirname $(ASSEMBLY))
- make $(CONFIG)_BeforeBuild
- $(LOCAL_PKGCONFIG) $(ASSEMBLY_COMPILER_COMMAND) $(ASSEMBLY_COMPILER_FLAGS) -out:$(ASSEMBLY) -target:$(COMPILE_TARGET) $(build_sources_embed) $(build_resources_embed) $(build_references_ref)
- make $(CONFIG)_AfterBuild
- make post-all-local-hook prefix=$(prefix)
-
-install-local: $(ASSEMBLY) $(ASSEMBLY_MDB)
- make pre-install-local-hook prefix=$(prefix)
- mkdir -p '$(INSTALL_DIR)'
- $(call cp,$(ASSEMBLY),$(INSTALL_DIR))
- $(call cp,$(ASSEMBLY_MDB),$(INSTALL_DIR))
- mkdir -p '$(DESTDIR)$(libdir)/pkgconfig'
- $(call cp,$(DEBUGGERCLIENT_DLL_MDB),$(INSTALL_DIR))
- make post-install-local-hook prefix=$(prefix)
-
-uninstall-local: $(ASSEMBLY) $(ASSEMBLY_MDB)
- make pre-uninstall-local-hook prefix=$(prefix)
- $(call rm,$(ASSEMBLY),$(INSTALL_DIR))
- $(call rm,$(ASSEMBLY_MDB),$(INSTALL_DIR))
- $(call rm,$(DEBUGGERCLIENT_DLL_MDB),$(INSTALL_DIR))
- make post-uninstall-local-hook prefix=$(prefix)
-
-install: install-local
-uninstall: uninstall-local
-clean: clean-local
-
-include $(top_srcdir)/rules.make
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Manifest.addin.xml b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Manifest.addin.xml
deleted file mode 100644
index ff91fdd6b8..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Manifest.addin.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-<Addin id = "MonoDevelop.Debugger.Mdb.AspNet"
- name = "Asp.Net Debugging Support"
- author = "Lluis Sanchez"
- url = "http://www.mono-project.com"
- description = "Managed Debugging Engine support for MDB"
- copyright = "MIT X11"
- category = "Debugging"
- version = "4.2">
-
- <Dependencies>
- <Addin id="MonoDevelop.Core" version="4.2"/>
- <Addin id="MonoDevelop.Ide" version="4.2"/>
- <Addin id="MonoDevelop.Debugger" version="4.2"/>
- <Addin id="MonoDevelop.Debugger.Mdb" version="4.2"/>
- <Addin id="MonoDevelop.AspNet" version="4.2"/>
- </Dependencies>
-
- <Extension path="/MonoDevelop/Debugging/DebuggerEngines">
- <DebuggerEngine id="Mono.Debugger.Mdb.AspNet"
- name="Mono Debugger for ASP.NET"
- features="Catchpoints, DebugFile, Stepping, Pause, Breakpoints, Disassembly"
- type="MonoDevelop.Debugger.Mdb.MonoXspDebuggerSessionFactory" />
- </Extension>
-
-</Addin>
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Mono.Debugging.Backend.Mdb.AspNet.csproj b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Mono.Debugging.Backend.Mdb.AspNet.csproj
deleted file mode 100644
index fe0cfe144d..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Mono.Debugging.Backend.Mdb.AspNet.csproj
+++ /dev/null
@@ -1,126 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
- <PropertyGroup>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <ProductVersion>9.0.21022</ProductVersion>
- <SchemaVersion>2.0</SchemaVersion>
- <ProjectGuid>{A35E163C-179D-47A0-8026-FDAA2BE6737B}</ProjectGuid>
- <OutputType>Library</OutputType>
- <AssemblyName>Mono.Debugging.Backend.Mdb.AspNet</AssemblyName>
- <RootNamespace>Mono.Debugging.Backend.Mdb.AspNet</RootNamespace>
- <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <DebugSymbols>true</DebugSymbols>
- <DebugType>full</DebugType>
- <Optimize>false</Optimize>
- <OutputPath>..\build</OutputPath>
- <DefineConstants>DEBUG</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <ConsolePause>false</ConsolePause>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <DebugType>none</DebugType>
- <Optimize>false</Optimize>
- <OutputPath>bin\Release</OutputPath>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <ConsolePause>false</ConsolePause>
- </PropertyGroup>
- <ItemGroup>
- <Reference Include="System" />
- <Reference Include="MonoDevelop.AspNet, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Core, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="MonoDevelop.Ide, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="NRefactory, Version=0.0.0.0, Culture=neutral">
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="Mono.Cecil, Version=0.6.8.8607, Culture=neutral">
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="Mono.TextEditor, Version=1.0.0.0, Culture=neutral">
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="MonoDevelop.VersionControl, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.NUnit, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.XmlEditor, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Gettext, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Deployment, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Deployment.Linux, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.GtkCore, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.DesignerSupport, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.VBNetBinding, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.CBinding, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.CSharpBinding, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Autotools, Version=2.0.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.SourceEditor2, Version=2.1.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Debugger, Version=2.1.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Refactoring, Version=2.1.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Debugger.Soft, Version=2.2.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="Mono.Debugger.Soft, Version=0.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="Mono.Debugging, Version=0.0.0.0, Culture=neutral, PublicKeyToken=5e9ce85b0923c84f">
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="Mono.Debugging.Soft, Version=0.0.0.0, Culture=neutral, PublicKeyToken=5e9ce85b0923c84f">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- </ItemGroup>
- <ItemGroup>
- <Compile Include="AssemblyInfo.cs" />
- <Compile Include="MonoXspDebuggerSessionFactory.cs" />
- </ItemGroup>
- <ItemGroup>
- <EmbeddedResource Include="Manifest.addin.xml">
- <LogicalName>Manifest.addin.xml</LogicalName>
- </EmbeddedResource>
- </ItemGroup>
- <ItemGroup>
- <ProjectReference Include="..\Mono.Debugging.Backend.Mdb\Mono.Debugging.Backend.Mdb.csproj">
- <Project>{932ACD9F-AAEC-4A86-AC73-D0C9E1137A60}</Project>
- <Name>Mono.Debugging.Backend.Mdb</Name>
- </ProjectReference>
- </ItemGroup>
- <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
-</Project>
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/MonoXspDebuggerSessionFactory.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/MonoXspDebuggerSessionFactory.cs
deleted file mode 100644
index 48048ae094..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/MonoXspDebuggerSessionFactory.cs
+++ /dev/null
@@ -1,89 +0,0 @@
-// MonoDebuggerFactory.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using System.Collections.Generic;
-using System.IO;
-using Mono.Debugging.Backend;
-using Mono.Debugging.Client;
-using MonoDevelop.Debugger;
-using MonoDevelop.Core;
-using MonoDevelop.Core.Execution;
-using MonoDevelop.AspNet;
-using Mono.Debugging.Backend.Mdb;
-
-namespace MonoDevelop.Debugger.Mdb
-{
- public class MonoXspDebuggerSessionFactory: IDebuggerEngine
- {
- public bool CanDebugCommand (ExecutionCommand command)
- {
- AspNetExecutionCommand cmd = command as AspNetExecutionCommand;
- return cmd != null && MonoDebuggerSessionFactory.DebuggingSupported (cmd.TargetRuntime);
- }
-
- public DebuggerStartInfo CreateDebuggerStartInfo (ExecutionCommand command)
- {
- AspNetExecutionCommand cmd = (AspNetExecutionCommand) command;
- MonoDebuggerStartInfo startInfo = MonoDebuggerSessionFactory.CreateDebuggerStartInfo (cmd.TargetRuntime);
-
- string xspPath = Path.Combine (startInfo.MonoPrefix, "lib" + Path.DirectorySeparatorChar + "mono" + Path.DirectorySeparatorChar);
-
- if (cmd.ClrVersion == ClrVersion.Net_1_1)
- xspPath += Path.Combine ("1.0","xsp.exe");
- else
- xspPath += Path.Combine ("2.0","xsp2.exe");
-
- startInfo.IsXsp = true;
- startInfo.UserCodeOnly = true;
- startInfo.Command = xspPath;
- startInfo.WorkingDirectory = cmd.BaseDirectory;
- startInfo.Arguments = cmd.XspParameters.GetXspParameters ().Trim ();
-
- string binDir = Path.Combine (cmd.BaseDirectory, "bin");
- startInfo.UserModules = new List<string> ();
- foreach (string file in Directory.GetFiles (binDir)) {
- if (file.EndsWith (".dll") || file.EndsWith (".exe"))
- startInfo.UserModules.Add (file);
- }
-
- return startInfo;
- }
-
- public DebuggerSession CreateSession ()
- {
- MonoDebuggerSession ds = new MonoDebuggerSession ();
- ds.StartDebugger ();
- return ds;
- }
-
- public ProcessInfo[] GetAttachableProcesses ()
- {
- return new ProcessInfo[0];
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/AssemblyInfo.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/AssemblyInfo.cs
deleted file mode 100644
index ed24353937..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/AssemblyInfo.cs
+++ /dev/null
@@ -1,9 +0,0 @@
-// Autogenerated from Manifest.addin.xml
-
-using System.Reflection;
-
-[assembly: AssemblyProduct ("MonoDevelop")]
-[assembly: AssemblyTitle ("MDB support for Mono.Debugging")]
-[assembly: AssemblyDescription ("Managed Debugging Engine support for MDB")]
-[assembly: AssemblyVersion ("2.6")]
-[assembly: AssemblyCopyright ("MIT X11")]
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/ChangeLog b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/ChangeLog
deleted file mode 100644
index af529ab5f2..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/ChangeLog
+++ /dev/null
@@ -1,325 +0,0 @@
-2010-03-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * Manifest.addin.xml: Bumped MD version.
-
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.csproj: Flush.
-
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.csproj: Merged MD.Projects into
- MD.Core, and MD.Projects.Gui, MD.Core.Gui and MD.Components
- into MD.Ide.
-
-2010-03-08 Jonathan Pryor <jpryor@novell.com>
-
- * Makefile: Set $(ASSEMBLY_COMPILER_COMMAND) to $(CSC).
- This allows a top-level CSC override to be used within this
- module (e.g. top-level `make CSC=dmcs` for a v4 build).
-
-2010-02-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * Manifest.addin.xml:
- * MonoDebuggerSessionFactory.cs: Track api changes. Some
- engine info is now taken from extension node metadata.
-
- * Mono.Debugging.Backend.Mdb.csproj: Flush.
-
-2009-11-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerSessionFactory.cs: Implement Id property.
-
-2009-11-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * IDebuggerServer.cs:
- * MonoDebuggerSession.cs: Use the new options object. Track
- api changes.
-
-2009-10-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * Manifest.addin.xml: Bump MD version.
-
-2009-10-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * IDebuggerServer.cs:
- * MonoDebuggerSession.cs: Fix Pocess/Process spelling.
-
-2009-10-16 Michael Hutchinson <mhutchinson@novell.com>
-
- * MonoDebuggerSessionFactory.cs: Fix spelling of
- GetAttachableProcesses API.
-
-2009-10-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * Manifest.addin.xml: Bump MD version.
-
-2009-10-05 Lluis Sanchez Gual <lluis@novell.com>
-
- * IDebuggerServer.cs:
- * MonoDebuggerSession.cs: Use long for thread and process id.
-
-2009-10-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerController.cs:
- * IDebuggerController.cs: Notify the started event before
- starting the session. In this way, breakpoints will be
- inserted before reaching main. Fixes bug #541727 - Debugger
- never stops at the breakpoint.
-
-2009-09-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * IDebuggerServer.cs:
- * MonoDebuggerSession.cs: Watch the parent process, and stop
- the server if the parent dies.
-
-2009-09-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * IDebuggerServer.cs:
- * MonoDebuggerSession.cs: Implemented AllowBreakEventChanges
- property.
-
- * Mono.Debugging.Backend.Mdb.csproj: Don't require specific
- versions.
-
-2009-08-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.csproj: Updated.
-
- * DebuggerController.cs: Propagate mono env vars to the
- debugged process.
-
-2009-08-13 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerSessionFactory.cs: Use the new AssemblyContext
- class to query and resolve assemblies.
-
-2009-06-12 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerSessionFactory.cs: Fix nullref.
-
-2009-06-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerController.cs:
- * IDebuggerController.cs: Track api changes.
-
- * IDebuggerServer.cs:
- * MonoDebuggerSession.cs: Cache the mdb version usead by each
- mono prefix, to avoid having to auto detect it at every run.
-
-2009-05-24 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerSessionFactory.cs: Track api change.
-
-2009-05-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.csproj: Flush.
-
-2009-05-06 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerStartInfo.cs: Don't enable user modules for
- normal app debugging.
-
-2009-05-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * IDebuggerServer.cs:
- * MonoDebuggerSession.cs: Try to detect the mdb version only
- once per session.
-
- * MonoDebuggerStartInfo.cs: Register user modules.
-
- * MonoDebuggerSessionFactory.cs: Use the default runtime if
- none is specified.
-
-2009-04-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile:
- * Manifest.addin.xml:
- * IDebuggerServer.cs:
- * DebuggerController.cs:
- * MonoDebuggerSession.cs:
- * MonoDebuggerStartInfo.cs:
- * MonoDebuggerSessionFactory.cs:
- * Mono.Debugging.Backend.Mdb.csproj: Track api changes. Added
- support for targetting a runtime other than the current one
- (as long as it has the debugger installed).
-
-2009-04-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * Manifest.addin.xml: Bump MD version.
-
-2009-03-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerSessionFactory.cs: Removed unused
- CanDebugPlatform and rename CanDebugFile to CanDebugCommand.
-
-2009-02-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.csproj: Updated references.
-
-2009/02/06 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.mdp:
- * Mono.Debugging.Backend.Mdb.csproj: Migrated to MSBuild file format.
-
-2009/02/03 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * Manifest.addin.xml: Bump MD version.
-
-2009-01-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.mdp: Fix target framework.
-
-2009-01-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * Mono.Debugging.Backend.Mdb.mdp: Flush project format changes.
-
-2008-12-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.mdp: Updated.
-
-2008-12-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * Manifest.addin.xml: Set correct add-in category.
-
- * MonoDebuggerSession.cs:
- * MonoDebuggerSessionFactory.cs: Track api changes.
-
-2008-12-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * Manifest.addin.xml: Change addin version number to match
- configure/tarball version number.
-
-2008-12-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * AssemblyInfo.cs: Add AssemblyInfo.cs files that are autogenerated from
- the addin manifests.
-
-2008-11-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * Manifest.addin.xml: Track api changes.
-
-2008-11-05 Lluis Sanchez Gual <lluis@novell.com>
-
- * Manifest.addin.xml: Bump MD version.
-
-2008-09-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.mdp: Updated projects.
-
-2008-09-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerSession.cs: Track api changes.
-
-2008-08-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * Manifest.addin.xml: Extension point location has changed.
-
-2008-08-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.mdp: Fix reference to Mono.TextEditor. The
- incorrect add-in version number causes problems in the makefile
- synchronization.
-
-2008-08-06 Lluis Sanchez Gual <lluis@novell.com>
-
- * IDebuggerController.cs, MonoDebuggerSession.cs,
- Mono.Debugging.Backend.Mdb.mdp, DebuggerController.cs: Add support
- for live hit count and trace updating.
-
-2008-07-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerSession.cs, IDebuggerServer.cs: Implement support for
- catchpoints.
-
-2008-07-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * IDebuggerController.cs, MonoDebuggerSession.cs, IDebuggerServer.cs,
- DebuggerController.cs: Track api changes to support custom
- breakpoint hit actions.
- * MonoDebuggerSessionFactory.cs: Fix construction process command line
- string.
-
-2008-07-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile: Install the assemblies to the correct directory.
-
-2008-07-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerSession.cs, IDebuggerServer.cs: Implemented
- SetActiveThread. Ignore target events coming from non-stopped
- threads.
-
-2008-07-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerSession.cs, IDebuggerServer.cs, Makefile: Implement
- support for modifying variable values and disassembling files.
-
-2008-07-01 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerSession.cs: Track api changes.
- * DebuggerController.cs: Use tcp by default. Fire target even after
- forcing the debugger to stop.
-
-2008-06-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.mdp, DebuggerController.cs, Makefile:
- Enable unix channel support.
-
-2008-06-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDebuggerSession.cs, IDebuggerServer.cs: Implement GetThreads and
- GetProcesses.
-
-2008-06-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * IDebuggerController.cs, MonoDebuggerSession.cs, IDebuggerServer.cs,
- DebuggerController.cs: Implemented detach.
-
-2008-06-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * IDebuggerController.cs, MonoDebuggerSession.cs, IDebuggerServer.cs,
- DebuggerController.cs, MonoDebuggerSessionFactory.cs: Implemented
- support for attach to process, disassemble.
-
-2008-06-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerController.cs: Added a timeout in the Exit method.
-
-2008-05-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * mono.debugging.backend.mdb.pc.in: Added missing file.
-
-2008-05-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * IDebuggerController.cs, MonoDebuggerSession.cs,
- Mono.Debugging.Backend.Mdb.mdp, IDebuggerServer.cs,
- DebuggerController.cs, Makefile: Track api changes. Properly
- redirect debugger output. Implemented support for adding
- breakpoints while the target process is running, it seems to kinda
- work.
-
-2008-05-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.mdp: Updated project.
-
-2008-05-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Backend.Mdb.mdp: Implemented query of variable and
- field data.
-
-2008-05-14 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs, Manifest.addin.xml, IDebuggerController.cs,
- MonoDebuggerSession.cs, ChangeLog, Mono.Debugging.Backend.Mdb.mdp,
- Mono.Debugging.Backend.Mdb, DebuggerController.cs,
- MonoDebuggerSessionFactory.cs, Makefile: Initial import.
-
-2008-04-28 Ankit Jain <jankit@novell.com>
-
- * Initial import.
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/DebuggerController.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/DebuggerController.cs
deleted file mode 100644
index 174902cdec..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/DebuggerController.cs
+++ /dev/null
@@ -1,255 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using System.Runtime.Remoting;
-using System.Runtime.Remoting.Channels;
-using System.Runtime.Remoting.Channels.Tcp;
-using System.Runtime.Serialization.Formatters.Binary;
-using Mono.Remoting.Channels.Unix;
-using System.Threading;
-using Mono.Debugging.Backend;
-using Mono.Debugging.Client;
-
-namespace Mono.Debugging.Backend.Mdb
-{
- class DebuggerController : MarshalByRefObject, IDebuggerController
- {
- string remotingChannel = "tcp";
- IDebuggerServer debugger;
- Process process;
- IDebuggerSessionFrontend frontend;
- MonoDebuggerSession session;
- string unixRemotingFile;
-
- ManualResetEvent runningEvent = new ManualResetEvent (false);
- ManualResetEvent exitRequestEvent = new ManualResetEvent (false);
- ManualResetEvent exitedEvent = new ManualResetEvent (false);
-
- public IDebuggerServer DebuggerServer {
- get { return debugger; }
- }
-
- public DebuggerController (MonoDebuggerSession session, IDebuggerSessionFrontend frontend)
- {
- this.session = session;
- this.frontend = frontend;
- }
-
- #region IDebuggerController Members
-
- public void RegisterDebugger (IDebuggerServer debugger)
- {
- lock (this)
- {
- this.debugger = debugger;
- runningEvent.Set ();
- }
- }
-
- public void WaitForExit()
- {
- exitRequestEvent.WaitOne();
- }
-
- public void NotifyStarted ()
- {
- frontend.NotifyStarted ();
- }
-
- public void OnTargetEvent (TargetEventArgs args)
- {
- frontend.NotifyTargetEvent (args);
- if (args.Type == TargetEventType.TargetExited)
- StopDebugger ();
- }
-
- public void OnTargetOutput (bool isStderr, string line)
- {
- frontend.NotifyTargetOutput (isStderr, line);
- }
-
- public void OnDebuggerOutput (bool isStderr, string line)
- {
- frontend.NotifyDebuggerOutput (isStderr, line);
- }
-
- public bool OnCustomBreakpointAction (string actionId, object handle)
- {
- return frontend.NotifyCustomBreakpointAction (actionId, handle);
- }
-
- public void UpdateBreakpoint (object handle, int count, string lastTrace)
- {
- session.UpdateBreakEvent (handle, count, lastTrace);
- }
-
- public void NotifySourceFileLoaded (string[] fullFilePaths)
- {
- foreach (string file in fullFilePaths)
- frontend.NotifySourceFileLoaded (file);
- }
-
- public void NotifySourceFileUnloaded (string[] fullFilePaths)
- {
- foreach (string file in fullFilePaths)
- frontend.NotifySourceFileUnloaded (file);
- }
-
- #endregion
-
- public void StartDebugger (MonoDebuggerStartInfo startInfo)
- {
- lock (this)
- {
- exitRequestEvent.Reset ();
-
- string chId = RegisterRemotingChannel();
-
- BinaryFormatter bf = new BinaryFormatter();
- ObjRef oref = RemotingServices.Marshal(this);
- MemoryStream ms = new MemoryStream();
- bf.Serialize(ms, oref);
- string sref = Convert.ToBase64String(ms.ToArray());
- try
- {
- Process process = new Process();
- process.Exited += new EventHandler (ProcessExited);
- string location = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
- string argv = string.Empty;
- //if (isDebugMode) argv += " --debug";
- argv += " --debug '" + Path.Combine(location, "DebuggerServer.exe") + "' ";
-
- process.StartInfo = new ProcessStartInfo ("mono", argv);
-
- if (startInfo != null) {
- string monoPath = Path.Combine (startInfo.MonoPrefix, "bin");
- process.StartInfo.FileName = Path.Combine (monoPath, "mono");
- if (startInfo.ServerEnvironment != null) {
- foreach (KeyValuePair<string,string> evar in startInfo.ServerEnvironment)
- process.StartInfo.EnvironmentVariables [evar.Key] = evar.Value;
- }
- }
-
- process.StartInfo.WorkingDirectory = AppDomain.CurrentDomain.BaseDirectory;
- process.StartInfo.UseShellExecute = false;
- process.StartInfo.RedirectStandardInput = true;
- process.EnableRaisingEvents = true;
- process.Start();
-
- // The server expects 3 lines with the following content:
- // 1) location of the Mono.Debugging assembly (needed since it may be located
- // in a different directory)
- // 2) Remting channel to use
- // 3) Serialized reference to the IDebuggerController
- process.StandardInput.WriteLine (typeof(DebuggerSession).Assembly.Location);
- process.StandardInput.WriteLine (chId);
- process.StandardInput.WriteLine (sref);
- process.StandardInput.Flush();
- this.process = process;
- }
- catch (Exception ex)
- {
- Console.WriteLine("Error launching server: " + ex.ToString());
- throw;
- }
- }
-
- if (!runningEvent.WaitOne (15000, false)) {
- throw new ApplicationException ("Could not create the debugger process.");
- }
- }
-
- void ProcessExited (object sender, EventArgs args)
- {
- lock (this) {
- exitedEvent.Set ();
- Process p = (Process) sender;
- if (p != process) return;
-
- // The process suddently died
- runningEvent.Reset ();
- debugger = null;
- process = null;
- }
- }
-
- public void Exit ()
- {
- object elock = new object ();
- lock (elock) {
- ThreadPool.QueueUserWorkItem (delegate {
- try {
- debugger.Exit ();
- lock (elock) {
- Monitor.PulseAll (elock);
- }
- } catch {
- // Ignore
- }
- });
-
- // If the debugger does not stop, kill it.
- if (!Monitor.Wait (elock, 3000)) {
- StopDebugger ();
- OnTargetEvent (new TargetEventArgs (TargetEventType.TargetExited));
- }
- }
- }
-
- public void StopDebugger ()
- {
- try {
- Process oldProcess;
- lock (this) {
- if (debugger == null)
- return;
- runningEvent.Reset ();
- exitedEvent.Reset ();
- exitRequestEvent.Set ();
- oldProcess = process;
- debugger = null;
- process = null;
- }
-
- if (!exitedEvent.WaitOne (2000, false)) {
- try {
- oldProcess.Kill ();
- } catch {
- }
- }
- } catch (Exception ex) {
- Console.WriteLine (ex);
- }
- }
-
- string RegisterRemotingChannel()
- {
- if (remotingChannel == "tcp")
- {
- IChannel ch = ChannelServices.GetChannel("tcp");
- if (ch == null)
- {
- IDictionary dict = new Hashtable();
- BinaryClientFormatterSinkProvider clientProvider = new BinaryClientFormatterSinkProvider();
- BinaryServerFormatterSinkProvider serverProvider = new BinaryServerFormatterSinkProvider();
-
- dict["port"] = 0;
- serverProvider.TypeFilterLevel = System.Runtime.Serialization.Formatters.TypeFilterLevel.Full;
-
- ChannelServices.RegisterChannel(new TcpChannel(dict, clientProvider, serverProvider), false);
- }
- }
- else
- {
- IChannel ch = ChannelServices.GetChannel ("unix");
- if (ch == null) {
- unixRemotingFile = Path.GetTempFileName ();
- ChannelServices.RegisterChannel (new UnixChannel (unixRemotingFile), false);
- }
- }
- return remotingChannel;
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/IDebuggerController.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/IDebuggerController.cs
deleted file mode 100644
index 1133f8ae6f..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/IDebuggerController.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-using Mono.Debugging.Client;
-
-namespace Mono.Debugging.Backend.Mdb
-{
- public interface IDebuggerController
- {
- void RegisterDebugger (IDebuggerServer debugger);
- void WaitForExit();
-
- //callbacks
- //FIXME: better naming for event callbacks
- void NotifyStarted ();
-
- void OnTargetEvent (TargetEventArgs args);
-
- void OnTargetOutput (bool isStderr, string text);
-
- void OnDebuggerOutput (bool isStderr, string text);
-
- bool OnCustomBreakpointAction (string actionId, object handle);
-
- void UpdateBreakpoint (object handle, int count, string lastTrace);
-
- void NotifySourceFileLoaded (string[] fullFilePaths);
-
- void NotifySourceFileUnloaded (string[] fullFilePaths);
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/IDebuggerServer.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/IDebuggerServer.cs
deleted file mode 100644
index 5f7290cc52..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/IDebuggerServer.cs
+++ /dev/null
@@ -1,87 +0,0 @@
-// IDebuggerServer.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using Mono.Debugging.Client;
-
-namespace Mono.Debugging.Backend.Mdb
-{
- public interface IDebuggerServer
- {
- string InitializeMdb (string mdbVersion, int mdPid);
-
- void Run (MonoDebuggerStartInfo startInfo, DebuggerSessionOptions options);
-
- void Stop ();
-
- void AttachToProcess (long id, DebuggerSessionOptions options);
-
- void Detach ();
-
- void Exit ();
-
- // Step one source line
- void StepLine ();
-
- // Step one source line, but step over method calls
- void NextLine ();
-
- // Step one instruction
- void StepInstruction ();
-
- // Step one instruction, but step over method calls
- void NextInstruction ();
-
- // Continue until leaving the current method
- void Finish ();
-
- //breakpoints etc
-
- // returns a handle
- int InsertBreakEvent (BreakEvent be, bool activate);
-
- void RemoveBreakEvent (int handle);
-
- void EnableBreakEvent (int handle, bool enable);
-
- object UpdateBreakEvent (object handle, BreakEvent be);
-
- void Continue ();
-
- ThreadInfo[] GetThreads (long processId);
-
- ProcessInfo[] GetProcesses ();
-
- Backtrace GetThreadBacktrace (long processId, long threadId);
-
- AssemblyLine[] DisassembleFile (string file);
-
- void SetActiveThread (long processId, long threadId);
-
- bool AllowBreakpointChanges { get; }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Makefile b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Makefile
deleted file mode 100644
index 63273fd9e8..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Makefile
+++ /dev/null
@@ -1,133 +0,0 @@
-
-EXTRA_DIST = Makefile
-
-# Warning: This is an automatically generated file, do not edit!
-
-srcdir=.
-top_srcdir=..
-
-include $(top_srcdir)/config.make
-
-ifeq ($(CONFIG),DEBUG)
-ASSEMBLY_COMPILER_COMMAND = $(CSC)
-ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
-
-ASSEMBLY = ../build/DebuggerClient.dll
-ASSEMBLY_MDB = $(ASSEMBLY).mdb
-COMPILE_TARGET = library
-PROJECT_REFERENCES =
-BUILD_DIR = ../build
-
-DEBUGGERCLIENT_DLL_MDB_SOURCE=../build/DebuggerClient.dll.mdb
-
-endif
-
-ifeq ($(CONFIG),RELEASE)
-ASSEMBLY_COMPILER_COMMAND = $(CSC)
-ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize+ -debug -define:DEBUG "-define:TRACE"
-
-ASSEMBLY = bin/Release/DebuggerClient.dll
-ASSEMBLY_MDB = $(ASSEMBLY).mdb
-COMPILE_TARGET = library
-PROJECT_REFERENCES =
-BUILD_DIR = bin/Release/
-
-DEBUGGERCLIENT_DLL_MDB_SOURCE=bin/Release/DebuggerClient.dll.mdb
-
-endif
-
-AL=al2
-SATELLITE_ASSEMBLY_NAME=Mono.Debugging.Backend.Mdb.resources.dll
-
-PROGRAMFILES = \
- $(DEBUGGERCLIENT_DLL_MDB)
-
-LINUX_PKGCONFIG = \
- $(MONO_DEBUGGING_BACKEND_MDB_PC)
-
-
-RESGEN=resgen2
-
-MONO_DEBUGGING_BACKEND_MDB_PC = $(BUILD_DIR)/mono.debugging.backend.mdb.pc
-DEBUGGERCLIENT_DLL_MDB = $(BUILD_DIR)/DebuggerClient.dll.mdb
-
-FILES = \
- AssemblyInfo.cs \
- DebuggerController.cs \
- IDebuggerController.cs \
- IDebuggerServer.cs \
- MonoDebuggerSession.cs \
- MonoDebuggerSessionFactory.cs \
- MonoDebuggerStartInfo.cs
-
-DATA_FILES =
-
-RESOURCES = Manifest.addin.xml
-
-EXTRAS = \
- ChangeLog \
- mono.debugging.backend.mdb.pc.in
-
-REFERENCES = \
- Mono.Posix \
- -pkg:monodevelop \
- -pkg:monodevelop-core-addins \
- System \
- System.Data \
- System.Runtime.Remoting \
- System.Xml
-
-DLL_REFERENCES =
-
-CLEANFILES = $(PROGRAMFILES) $(LINUX_PKGCONFIG)
-
-#Targets
-all: $(ASSEMBLY) $(PROGRAMFILES) $(LINUX_PKGCONFIG) $(top_srcdir)/config.make
-
-include $(top_srcdir)/Makefile.include
-#include $(srcdir)/custom-hooks.make
-
-
-
-$(eval $(call emit-deploy-wrapper,MONO_DEBUGGING_BACKEND_MDB_PC,mono.debugging.backend.mdb.pc))
-
-
-$(eval $(call emit_resgen_targets))
-$(build_xamlg_list): %.xaml.g.cs: %.xaml
- xamlg '$<'
-
-INSTALL_DIR = $(DESTDIR)$(prefix)/lib/monodevelop/AddIns/MonoDevelop.Debugger
-
-LOCAL_PKGCONFIG=PKG_CONFIG_PATH=../../../local-config:$$PKG_CONFIG_PATH
-
-$(ASSEMBLY) $(ASSEMBLY_MDB): $(build_sources) $(build_resources) $(build_datafiles) $(DLL_REFERENCES) $(PROJECT_REFERENCES) $(build_xamlg_list) $(build_satellite_assembly_list)
- make pre-all-local-hook prefix=$(prefix)
- mkdir -p $(shell dirname $(ASSEMBLY))
- make $(CONFIG)_BeforeBuild
- $(LOCAL_PKGCONFIG) $(ASSEMBLY_COMPILER_COMMAND) $(ASSEMBLY_COMPILER_FLAGS) -out:$(ASSEMBLY) -target:$(COMPILE_TARGET) $(build_sources_embed) $(build_resources_embed) $(build_references_ref)
- make $(CONFIG)_AfterBuild
- make post-all-local-hook prefix=$(prefix)
-
-install-local: $(ASSEMBLY) $(ASSEMBLY_MDB)
- make pre-install-local-hook prefix=$(prefix)
- mkdir -p '$(INSTALL_DIR)'
- $(call cp,$(ASSEMBLY),$(INSTALL_DIR))
- $(call cp,$(ASSEMBLY_MDB),$(INSTALL_DIR))
- mkdir -p '$(DESTDIR)$(libdir)/pkgconfig'
- $(call cp,$(MONO_DEBUGGING_BACKEND_MDB_PC),$(DESTDIR)$(libdir)/pkgconfig)
- $(call cp,$(DEBUGGERCLIENT_DLL_MDB),$(INSTALL_DIR))
- make post-install-local-hook prefix=$(prefix)
-
-uninstall-local: $(ASSEMBLY) $(ASSEMBLY_MDB)
- make pre-uninstall-local-hook prefix=$(prefix)
- $(call rm,$(ASSEMBLY),$(INSTALL_DIR))
- $(call rm,$(ASSEMBLY_MDB),$(INSTALL_DIR))
- $(call rm,$(MONO_DEBUGGING_BACKEND_MDB_PC),$(DESTDIR)$(libdir)/pkgconfig)
- $(call rm,$(DEBUGGERCLIENT_DLL_MDB),$(INSTALL_DIR))
- make post-uninstall-local-hook prefix=$(prefix)
-
-install: install-local
-uninstall: uninstall-local
-clean: clean-local
-
-include $(top_srcdir)/rules.make
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Manifest.addin.xml b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Manifest.addin.xml
deleted file mode 100644
index 40628a4958..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Manifest.addin.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<Addin id = "MonoDevelop.Debugger.Mdb"
- name = "MDB support for Mono.Debugging"
- author = "Ankit Jain, Lluis Sanchez"
- url = "http://www.mono-project.com"
- description = "Managed Debugging Engine support for MDB"
- copyright = "MIT X11"
- category = "Debugging"
- version = "4.2">
-
- <Dependencies>
- <Addin id="MonoDevelop.Core" version="4.2"/>
- <Addin id="MonoDevelop.Ide" version="4.2"/>
- <Addin id="MonoDevelop.Debugger" version="4.2"/>
- </Dependencies>
-
- <Extension path="/MonoDevelop/Debugging/DebuggerEngines">
- <DebuggerEngine id="Mono.Debugger.Mdb"
- name="Mono Debugger"
- features="Catchpoints, DebugFile, Stepping, Pause, Breakpoints, Disassembly"
- type="MonoDevelop.Debugger.Mdb.MonoDebuggerSessionFactory" />
- </Extension>
-
-</Addin>
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Mono.Debugging.Backend.Mdb.csproj b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Mono.Debugging.Backend.Mdb.csproj
deleted file mode 100644
index ba43b505dc..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Mono.Debugging.Backend.Mdb.csproj
+++ /dev/null
@@ -1,156 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
- <PropertyGroup>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <ProductVersion>9.0.21022</ProductVersion>
- <SchemaVersion>2.0</SchemaVersion>
- <ProjectGuid>{932ACD9F-AAEC-4A86-AC73-D0C9E1137A60}</ProjectGuid>
- <OutputType>Library</OutputType>
- <RootNamespace>Mono.Debugging.Backend.Mdb</RootNamespace>
- <AssemblyName>DebuggerClient</AssemblyName>
- <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <DebugSymbols>true</DebugSymbols>
- <DebugType>full</DebugType>
- <Optimize>false</Optimize>
- <OutputPath>..\build</OutputPath>
- <DefineConstants>DEBUG;TRACE</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
- <Execution>
- <Execution clr-version="Net_2_0" />
- </Execution>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <DebugSymbols>true</DebugSymbols>
- <DebugType>full</DebugType>
- <Optimize>true</Optimize>
- <OutputPath>bin\Release\</OutputPath>
- <DefineConstants>TRACE</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
- <Execution>
- <Execution clr-version="Net_2_0" />
- </Execution>
- </PropertyGroup>
- <ItemGroup>
- <Reference Include="System" />
- <Reference Include="System.Data" />
- <Reference Include="System.Xml" />
- <Reference Include="System.Runtime.Remoting" />
- <Reference Include="NRefactory, Version=0.0.0.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="Mono.Cecil, Version=0.6.8.8607, Culture=neutral">
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="Mono.TextEditor, Version=1.0.0.0, Culture=neutral">
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="Mono.Posix" />
- <Reference Include="MonoDevelop.Core, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="MonoDevelop.Ide, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="MonoDevelop.VersionControl, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.NUnit, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.XmlEditor, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.AspNet, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Gettext, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Deployment, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Deployment.Linux, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.GtkCore, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.DesignerSupport, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.VBNetBinding, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.CBinding, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.CSharpBinding, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Autotools, Version=1.9.2.0, Culture=neutral">
- <SpecificVersion>False</SpecificVersion>
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.SourceEditor2, Version=2.1.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Debugger, Version=2.1.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Refactoring, Version=2.1.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="MonoDevelop.Debugger.Soft, Version=2.2.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="Mono.Debugger.Soft, Version=0.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="Mono.Debugging, Version=0.0.0.0, Culture=neutral, PublicKeyToken=5e9ce85b0923c84f">
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="Mono.Debugging.Soft, Version=0.0.0.0, Culture=neutral, PublicKeyToken=5e9ce85b0923c84f">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- </ItemGroup>
- <ItemGroup>
- <Compile Include="AssemblyInfo.cs" />
- <Compile Include="DebuggerController.cs" />
- <Compile Include="IDebuggerController.cs" />
- <Compile Include="MonoDebuggerSession.cs" />
- <Compile Include="MonoDebuggerSessionFactory.cs" />
- <Compile Include="IDebuggerServer.cs" />
- <Compile Include="MonoDebuggerStartInfo.cs" />
- </ItemGroup>
- <ItemGroup>
- <None Include="ChangeLog" />
- </ItemGroup>
- <ItemGroup>
- <EmbeddedResource Include="Manifest.addin.xml">
- <LogicalName>Manifest.addin.xml</LogicalName>
- </EmbeddedResource>
- </ItemGroup>
- <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
-</Project>
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerSession.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerSession.cs
deleted file mode 100644
index 7a08b05779..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerSession.cs
+++ /dev/null
@@ -1,192 +0,0 @@
-// MonoDebuggerSession.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-
-using System;
-using System.IO;
-using System.Collections.Generic;
-using System.Diagnostics;
-using Mono.Debugging.Client;
-
-namespace Mono.Debugging.Backend.Mdb
-{
- public class MonoDebuggerSession: DebuggerSession
- {
- DebuggerController controller;
- bool started;
- static Dictionary<string,string> detectedMdbVersions = new Dictionary<string, string> ();
-
- public void StartDebugger ()
- {
- controller = new DebuggerController (this, Frontend);
- }
-
- public override void Dispose ()
- {
- base.Dispose ();
- if (started)
- controller.StopDebugger ();
- }
-
- protected override void OnRun (DebuggerStartInfo startInfo)
- {
- started = true;
- MonoDebuggerStartInfo info = (MonoDebuggerStartInfo) startInfo;
- controller.StartDebugger (info);
- InitMdbVersion (info.MonoPrefix);
- controller.DebuggerServer.Run (info, Options);
- }
-
- void InitMdbVersion (string prefix)
- {
- // Cache detected mdb versions, so version detection is done only once
- string mdbVersion;
- detectedMdbVersions.TryGetValue (prefix, out mdbVersion);
- mdbVersion = controller.DebuggerServer.InitializeMdb (mdbVersion, Process.GetCurrentProcess ().Id);
- detectedMdbVersions [prefix] = mdbVersion;
- }
-
- protected override void OnAttachToProcess (long processId)
- {
- started = true;
- controller.StartDebugger (null);
- InitMdbVersion ("?");
- controller.DebuggerServer.AttachToProcess (processId, Options);
- }
-
- protected override void OnDetach ()
- {
- controller.DebuggerServer.Detach ();
- }
-
- protected override void OnStop ()
- {
- controller.DebuggerServer.Stop ();
- }
-
- protected override void OnExit ()
- {
- controller.Exit ();
- }
-
- protected override void OnStepLine ()
- {
- controller.DebuggerServer.StepLine ();
- }
-
- protected override void OnNextLine ()
- {
- controller.DebuggerServer.NextLine ();
- }
-
- protected override void OnStepInstruction ()
- {
- controller.DebuggerServer.StepInstruction ();
- }
-
- protected override void OnNextInstruction ()
- {
- controller.DebuggerServer.NextInstruction ();
- }
-
- protected override void OnFinish ()
- {
- controller.DebuggerServer.Finish ();
- }
-
- //breakpoints etc
-
- // returns a handle
- protected override object OnInsertBreakEvent (BreakEvent be, bool activate)
- {
- return controller.DebuggerServer.InsertBreakEvent (be, activate);
- }
-
- protected override void OnRemoveBreakEvent (object handle)
- {
- if (controller.DebuggerServer != null)
- controller.DebuggerServer.RemoveBreakEvent ((int)handle);
- }
-
- protected override void OnEnableBreakEvent (object handle, bool enable)
- {
- controller.DebuggerServer.EnableBreakEvent ((int)handle, enable);
- }
-
- protected override object OnUpdateBreakEvent (object handle, BreakEvent be)
- {
- return controller.DebuggerServer.UpdateBreakEvent (handle, be);
- }
-
- protected override void OnContinue ()
- {
- controller.DebuggerServer.Continue ();
- }
-
- protected override ThreadInfo[] OnGetThreads (long processId)
- {
- return controller.DebuggerServer.GetThreads (processId);
- }
-
- protected override ProcessInfo[] OnGetProcesses ()
- {
- return controller.DebuggerServer.GetProcesses ();
- }
-
- protected override Backtrace OnGetThreadBacktrace (long processId, long threadId)
- {
- return controller.DebuggerServer.GetThreadBacktrace (processId, threadId);
- }
-
- protected override void OnSetActiveThread (long processId, long threadId)
- {
- controller.DebuggerServer.SetActiveThread (processId, threadId);
- }
-
- protected override AssemblyLine[] OnDisassembleFile (string file)
- {
- return controller.DebuggerServer.DisassembleFile (file);
- }
-
- internal void UpdateBreakEvent (object handle, int count, string lastTrace)
- {
- if (count != -1)
- UpdateHitCount (handle, count);
- if (lastTrace != null)
- UpdateLastTraceValue (handle, lastTrace);
- }
-
- protected override bool AllowBreakEventChanges {
- get {
- if (controller != null && controller.DebuggerServer != null)
- return controller.DebuggerServer.AllowBreakpointChanges;
- else
- return true;
- }
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerSessionFactory.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerSessionFactory.cs
deleted file mode 100644
index 1dff28442b..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerSessionFactory.cs
+++ /dev/null
@@ -1,106 +0,0 @@
-// MonoDebuggerFactory.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using System.Collections.Generic;
-using System.IO;
-using Mono.Debugging.Backend;
-using Mono.Debugging.Client;
-using MonoDevelop.Debugger;
-using MonoDevelop.Core.Execution;
-using MonoDevelop.Core.Assemblies;
-using Mono.Debugging.Backend.Mdb;
-
-namespace MonoDevelop.Debugger.Mdb
-{
- public class MonoDebuggerSessionFactory: IDebuggerEngine
- {
- public bool CanDebugCommand (ExecutionCommand command)
- {
- DotNetExecutionCommand cmd = command as DotNetExecutionCommand;
- return cmd != null && DebuggingSupported (cmd.TargetRuntime);
- }
-
- public DebuggerStartInfo CreateDebuggerStartInfo (ExecutionCommand command)
- {
- DotNetExecutionCommand cmd = (DotNetExecutionCommand) command;
- MonoDebuggerStartInfo startInfo = CreateDebuggerStartInfo (cmd.TargetRuntime);
-
- startInfo.Command = cmd.Command;
- startInfo.Arguments = cmd.Arguments;
- startInfo.WorkingDirectory = cmd.WorkingDirectory;
- if (cmd.EnvironmentVariables.Count > 0) {
- foreach (KeyValuePair<string,string> val in cmd.EnvironmentVariables)
- startInfo.EnvironmentVariables [val.Key] = val.Value;
- }
- return startInfo;
- }
-
- public DebuggerSession CreateSession ()
- {
- MonoDebuggerSession ds = new MonoDebuggerSession ();
- ds.StartDebugger ();
- return ds;
- }
-
- public ProcessInfo[] GetAttachableProcesses ()
- {
- List<ProcessInfo> procs = new List<ProcessInfo> ();
- foreach (string dir in Directory.GetDirectories ("/proc")) {
- int id;
- if (!int.TryParse (Path.GetFileName (dir), out id))
- continue;
- try {
- File.ReadAllText (Path.Combine (dir, "sessionid"));
- } catch {
- continue;
- }
- string cmdline = File.ReadAllText (Path.Combine (dir, "cmdline"));
- cmdline = cmdline.Replace ('\0',' ');
- ProcessInfo pi = new ProcessInfo (id, cmdline);
- procs.Add (pi);
- }
- return procs.ToArray ();
- }
-
- public static bool DebuggingSupported (TargetRuntime tr)
- {
- if (tr == null) tr = MonoDevelop.Core.Runtime.SystemAssemblyService.DefaultRuntime;
- return (tr is MonoTargetRuntime) && tr.AssemblyContext.GetPackage ("mono-debugger") != null;
- }
-
- public static MonoDebuggerStartInfo CreateDebuggerStartInfo (TargetRuntime tr)
- {
- if (tr == null) tr = MonoDevelop.Core.Runtime.SystemAssemblyService.DefaultRuntime;
- MonoDebuggerStartInfo startInfo = new MonoDebuggerStartInfo ();
- MonoTargetRuntime mtr = (MonoTargetRuntime) tr;
- startInfo.ServerEnvironment = mtr.EnvironmentVariables;
- startInfo.MonoPrefix = mtr.Prefix;
- return startInfo;
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerStartInfo.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerStartInfo.cs
deleted file mode 100644
index 7d18bd1e48..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/MonoDebuggerStartInfo.cs
+++ /dev/null
@@ -1,42 +0,0 @@
-//
-// MonoDebuggerStartInfo.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-using System.Collections.Generic;
-using Mono.Debugging.Client;
-
-namespace Mono.Debugging.Backend.Mdb
-{
- [Serializable]
- public class MonoDebuggerStartInfo: DebuggerStartInfo
- {
- public bool IsXsp { get; set; }
- public bool UserCodeOnly { get; set; }
- public string MonoPrefix { get; set; }
- public IDictionary<string,string> ServerEnvironment { get; set; }
- public List<string> UserModules { get; set; }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/mono.debugging.backend.mdb.pc.in b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/mono.debugging.backend.mdb.pc.in
deleted file mode 100644
index f897ec27ba..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/mono.debugging.backend.mdb.pc.in
+++ /dev/null
@@ -1,6 +0,0 @@
-Name: Mono.Debugging.Backend.Mdb
-Description: Mono.Debugging.Backend.Mdb
-Version:
-
-Requires:
-Libs: -r:@expanded_libdir@/@PACKAGE@/DebuggerClient.dll
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ArrayAdaptor.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ArrayAdaptor.cs
deleted file mode 100644
index 274e366db1..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ArrayAdaptor.cs
+++ /dev/null
@@ -1,77 +0,0 @@
-// ArrayAdaptor.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using Mono.Debugger;
-using Mono.Debugger.Languages;
-using Mono.Debugging.Client;
-using Mono.Debugging.Evaluation;
-
-namespace DebuggerServer
-{
- class ArrayAdaptor: ICollectionAdaptor
- {
- TargetArrayObject array;
- MdbEvaluationContext ctx;
-
- public ArrayAdaptor (MdbEvaluationContext ctx, TargetArrayObject array)
- {
- this.ctx = ctx;
- this.array = array;
- }
-
- public int[] GetDimensions ()
- {
- TargetArrayBounds bounds = array.GetArrayBounds (ctx.Thread);
- if (bounds.IsMultiDimensional) {
- int[] dims = new int [bounds.LowerBounds.Length];
- for (int n=0; n<bounds.Rank; n++)
- dims [n] = bounds.UpperBounds [n] - bounds.LowerBounds [n] + 1;
- return dims;
- } else if (!bounds.IsUnbound)
- return new int[] { bounds.Length };
- else
- return new int [0];
- }
-
- public object GetElement (int[] indices)
- {
- return array.GetElement (ctx.Thread, indices);
- }
-
- public void SetElement (int[] indices, object val)
- {
- array.SetElement (ctx.Thread, indices, (TargetObject) val);
- }
-
- public object ElementType {
- get {
- return array.Type.ElementType;
- }
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/AssemblyInfo.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/AssemblyInfo.cs
deleted file mode 100644
index ee175395aa..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/AssemblyInfo.cs
+++ /dev/null
@@ -1,30 +0,0 @@
-// AssemblyInfo.cs created with MonoDevelop
-// User: radical at 7:09 PM 4/28/2008
-//
-// To change standard headers go to Edit->Preferences->Coding->Standard Headers
-//
-using System.Reflection;
-using System.Runtime.CompilerServices;
-
-// Information about this assembly is defined by the following attributes.
-// Change them to the values specific to your project.
-
-[assembly: AssemblyTitle("DebuggerServer")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("")]
-[assembly: AssemblyCopyright("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
-// If the build and revision are set to '*' they will be updated automatically.
-
-[assembly: AssemblyVersion("1.0.0.0")]
-
-// The following attributes are used to specify the signing key for the assembly,
-// if desired. See the Mono documentation for more information about signing.
-
-[assembly: AssemblyDelaySign(false)]
-[assembly: AssemblyKeyFile("")]
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/BacktraceWrapper.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/BacktraceWrapper.cs
deleted file mode 100644
index 1934258060..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/BacktraceWrapper.cs
+++ /dev/null
@@ -1,137 +0,0 @@
-using System;
-using System.Text;
-using System.Collections.Generic;
-
-using MD = Mono.Debugger;
-using DL = Mono.Debugging.Client;
-
-using Mono.Debugging.Client;
-using Mono.Debugging.Evaluation;
-using Mono.Debugging.Backend;
-using Mono.Debugger.Languages;
-
-namespace DebuggerServer
-{
- class BacktraceWrapper: BaseBacktrace, IBacktrace, IDisposable
- {
- MD.StackFrame[] frames;
- DissassemblyBuffer[] disBuffers;
- bool disposed;
- TargetObject exception;
-
- public BacktraceWrapper (MD.StackFrame[] frames, TargetObject exception): base (Server.Instance.MdbObjectValueAdaptor)
- {
- this.frames = frames;
- this.exception = exception;
- Connect ();
- }
-
- public void Dispose ()
- {
- disposed = true;
- }
-
- public override int FrameCount {
- get { return frames.Length; }
- }
-
- public override DL.StackFrame[] GetStackFrames (int firstIndex, int lastIndex)
- {
- CheckDisposed ();
-
- //FIXME: validate indices
-
- List<DL.StackFrame> list = new List<DL.StackFrame> ();
- for (int i = firstIndex; i <= lastIndex && i < frames.Length; i ++) {
- MD.StackFrame frame = frames [i];
- string method = null;
- string filename = null;
- int line = -1;
-
- if (frame.Method != null) {
- method = frame.Method.Name;
- if (!method.StartsWith ("<")) {
- int p = method.IndexOf ('(');
- if (p != -1)
- method = method.Substring (0, p).Trim ();
- }
- } else if (frame.Name != null) {
- method = frame.Name.Name;
- } else {
- method = "?";
- }
-
- if (frame.SourceAddress != null) {
- if (frame.SourceAddress.SourceFile != null)
- filename = frame.SourceAddress.SourceFile.FileName;
- line = frame.SourceAddress.Row;
- }
-
- string lang = frame.Language != null ? frame.Language.Name : string.Empty;
- list.Add (new DL.StackFrame (frame.TargetAddress.Address, new DL.SourceLocation (method, filename, line), lang));
- }
-
- return list.ToArray ();
- }
-
- protected override EvaluationContext GetEvaluationContext (int frameIndex, EvaluationOptions options)
- {
- CheckDisposed ();
- MD.StackFrame frame = frames [frameIndex];
- return new MdbEvaluationContext (frame.Thread, frame, exception, options);
- }
-
- public override AssemblyLine[] Disassemble (int frameIndex, int firstLine, int count)
- {
- CheckDisposed ();
- if (disBuffers == null)
- disBuffers = new MdbDissassemblyBuffer [frames.Length];
-
- MD.StackFrame frame = frames [frameIndex];
- DissassemblyBuffer buffer = disBuffers [frameIndex];
- if (buffer == null) {
- buffer = new MdbDissassemblyBuffer (frame.Thread, frame.TargetAddress);
- disBuffers [frameIndex] = buffer;
- }
-
- return buffer.GetLines (firstLine, firstLine + count - 1);
- }
-
- void CheckDisposed ()
- {
- if (disposed)
- throw new InvalidOperationException ("Invalid stack frame");
- }
- }
-
- class MdbDissassemblyBuffer: DissassemblyBuffer
- {
- MD.Thread thread;
- MD.TargetAddress baseAddr;
-
- public MdbDissassemblyBuffer (MD.Thread thread, MD.TargetAddress addr): base (addr.Address)
- {
- this.thread = thread;
- this.baseAddr = addr;
- }
-
- public override AssemblyLine[] GetLines (long startAddr, long endAddr)
- {
- List<AssemblyLine> lines = new List<AssemblyLine> ();
-
- MD.TargetAddress addr = baseAddr + (startAddr - baseAddr.Address);
- while (addr.Address <= endAddr) {
- try {
- MD.AssemblerLine line = thread.DisassembleInstruction (null, addr);
- lines.Add (new AssemblyLine (addr.Address, line.Text));
- addr += line.InstructionSize;
- } catch {
- Console.WriteLine ("failed " + addr.Address);
- lines.Add (new AssemblyLine (addr.Address, "??"));
- addr++;
- }
- }
- return lines.ToArray ();
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ChangeLog b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ChangeLog
deleted file mode 100644
index d6968432c9..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/ChangeLog
+++ /dev/null
@@ -1,742 +0,0 @@
-2010-05-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * IndexerValueReference.cs: Track api changes.
-
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.csproj: Flush.
-
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.csproj: Merged MD.Projects into
- MD.Core, and MD.Projects.Gui, MD.Core.Gui and MD.Components
- into MD.Ide.
-
-2010-03-08 Jonathan Pryor <jpryor@novell.com>
-
- * Makefile: Set $(ASSEMBLY_COMPILER_COMMAND) to $(CSC).
- This allows a top-level CSC override to be used within this
- module (e.g. top-level `make CSC=dmcs` for a v4 build).
-
-2010-03-01 Lluis Sanchez Gual <lluis@novell.com>
-
- * IndexerValueReference.cs:
- * MdbObjectValueAdaptor.cs: Fixed indexer issues.
-
-2010-03-01 Lluis Sanchez Gual <lluis@novell.com>
-
- * IndexerValueReference.cs:
- * MdbObjectValueAdaptor.cs: Track api changes.
-
-2010-02-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs:
- * BacktraceWrapper.cs:
- * EvaluationContext.cs:
- * MdbObjectValueAdaptor.cs: Improve implementation of
- catchpoints. Properly report the catchpoint exception.
-
-2010-02-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Track api changes.
-
-2010-02-22 Mike Krüger <mkrueger@novell.com>
-
- * MdbObjectValueAdaptor.cs: fixed build.
-
-2010-02-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Tracepoints are now printed by the
- debugging engine.
-
- * Mono.Debugging.Server.Mdb.csproj: Flush.
-
-2009-12-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbObjectValueAdaptor.cs: Improved ToString method for
- primitive and class types. Improved Cast method. Allow
- casting between primitive types and enums. Removed a bunch
- of formatting code, now reused from the base
- ObjectValueAdapter. In GetRealObject, don't dereference enum
- types: we want to get the enum value and dereference only
- when necessary. Other misc fixes.
-
- * FieldReference.cs: Allow getting fields from enums and other
- non-struct types.
-
- * IndexerValueReference.cs: Added special case for string
- indexer.
-
-2009-12-14 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Don't try to change breakpoints if the
- target already exited.
-
-2009-12-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs:
- * MdbObjectValueAdaptor.cs: Track api changes.
-
-2009-12-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbObjectValueAdaptor.cs: Track api changes.
-
-2009-12-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * FieldReference.cs:
- * PropertyReference.cs:
- * MdbObjectValueAdaptor.cs: Implement new members. Properly
- set the Global flag for static fields and properties.
-
-2009-11-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * Convert.cs: Improve conversion of corlib types.
-
-2009-11-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * BacktraceWrapper.cs: Subclass BaseBacktrace and reuse some
- code from it.
-
- * MdbObjectValueAdaptor.cs: Track api changes. Improved check
- for evaluation options.
-
-2009-11-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbObjectValueAdaptor.cs: Always show properties, even if we
- can't evaluate them.
-
- * IndexerValueReference.cs: Don't allow evaluating properties
- if target invoke is disabled.
-
-2009-11-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs:
- * BacktraceWrapper.cs:
- * EvaluationContext.cs:
- * MdbObjectValueAdaptor.cs: Track api changes.
-
-2009-11-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs:
- * BacktraceWrapper.cs:
- * EvaluationContext.cs:
- * MdbObjectValueAdaptor.cs: Use the new options object. Track
- api changes.
-
-2009-10-18 Michael Hutchinson <mhutchinson@novell.com>
-
- * DebuggerServer.cs: Fix Pocess/Process spelling.
-
-2009-10-13 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbAdaptorFactory.cs: Don't write compilation errors to the
- standard output.
-
-2009-10-06 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbObjectValueAdaptor.cs: Avoid cast exception in GetMembers
- when the object is of type TargetObjectObject. Fixes bug
- #543805.
-
-2009-10-06 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbAdaptor-2-4-2.cs: Add missing null check. Fixes bug
- #544137 - Exception while run command.
-
-2009-10-05 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Use long for thread and process id.
-
-2009-10-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbObjectValueAdaptor.cs: Use the correct exception to
- report target exceptions.
-
-2009-10-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * BacktraceWrapper.cs: Sort locals.
-
-2009-10-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * Convert.cs:
- * MdbObjectValueAdaptor.cs: Improve support for nullable
- types.
-
-2009-10-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Notify the started event before starting
- the session. In this way, breakpoints will be inserted
- before reaching main. Fixes bug #541727 - Debugger never
- stops at the breakpoint.
-
-2009-09-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * ArrayAdaptor.cs: CreateElementValue is not required anymore.
-
-2009-09-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbObjectValueAdaptor.cs: Don't show compiler generated
- fields.
-
-2009-09-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbObjectValueAdaptor.cs: Implemented CreateValue. Fixed
- resolution of nested types in GetType(name).
-
-2009-09-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbObjectValueAdaptor.cs: Add support for
- DebuggerTypeProxyAttribute, DebuggerBrowsable and
- DebuggerDisplayAttribute.
-
-2009-09-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbObjectValueAdaptor.cs: Add support for examining nested
- types.
-
-2009-09-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Remove debug code.
-
-2009-09-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Watch the parent process, and stop the
- server if the parent dies.
-
- * MdbObjectValueAdaptor.cs: Fix incorrect check for
- AllowTargetInvoke.
-
-2009-09-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Properly parse quoted arguments. Fixes
- bug #539317 - NUnit addin fails to run tests under the
- debugger.
-
-2009-09-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbAdaptor.cs:
- * MdbAdaptor-2-0.cs:
- * DebuggerServer.cs:
- * MdbAdaptor-2-4-2.cs:
- * MdbAdaptor-2-4-4.cs: Implemented AllowBreakEventChanges
- property.
-
-2009-09-14 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbObjectValueAdaptor.cs: Added some checks for
- AllowTargetInvoke flag. When resolving a method, in case of
- multiple valid matches, just pick the first one. Fixes bug
- #538059.
-
-2009-09-01 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbAdaptor-2-4-4.cs:
- * MdbAdaptor-2-4-2.cs: Breakpoint activation while running was
- not supported by mono 2.4.2.
-
-2009-08-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbObjectValueAdaptor.cs: Fixed some issue with static
- method invocation, and implemented HasMethod.
-
-2009-08-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile:
- * MdbAdaptor.cs:
- * MdbAdaptor-2-6.cs:
- * MdbAdaptor-2-0.cs:
- * DebuggerServer.cs:
- * MdbAdaptor-2-4-2.cs:
- * MdbAdaptor-2-4-4.cs:
- * MdbAdaptorFactory.cs:
- * Mono.Debugging.Server.Mdb.csproj: Reorganized adaptors a
- bit. Added real support for setting breakpoints while
- running.
-
-2009-07-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * Util.cs:
- * Makefile:
- * Convert.cs:
- * ObjectUtil.cs:
- * ArrayAdaptor.cs:
- * RawViewSource.cs:
- * FieldReference.cs:
- * TimedEvaluator.cs:
- * DebuggerServer.cs:
- * ValueReference.cs:
- * TimeOutException.cs:
- * BacktraceWrapper.cs:
- * EvaluationContext.cs:
- * PropertyReference.cs:
- * VariableReference.cs:
- * RemoteFrameObject.cs:
- * CollectionAdaptor.cs:
- * ArrayElementGroup.cs:
- * TypeValueReference.cs:
- * NullValueReference.cs:
- * ICollectionAdaptor.cs:
- * ArrayValueReference.cs:
- * NRefactoryEvaluator.cs:
- * ExpressionEvaluator.cs:
- * RuntimeInvokeManager.cs:
- * IndexerValueReference.cs:
- * UserVariableReference.cs:
- * LiteralValueReference.cs:
- * MdbObjectValueAdaptor.cs:
- * AsyncEvaluationTracker.cs:
- * NamespaceValueReference.cs:
- * Mono.Debugging.Server.Mdb.csproj: Use the new expression
- evaluation api, shared with the win32 debugger.
-
-2009-06-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbAdaptor-2-4-2.cs: Track api changes.
-
-2009-06-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile:
- * NRefactoryEvaluator.cs:
- * UserVariableReference.cs:
- * Mono.Debugging.Server.Mdb.csproj: Added support for defining
- variables.
-
-2009-06-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile:
- * MdbAdaptor.cs:
- * MdbAdaptor-2-0.cs:
- * DebuggerServer.cs:
- * MdbAdaptor-2-6.cs:
- * MdbAdaptor-2-4-2.cs:
- * MdbAdaptorFactory.cs:
- * RuntimeInvokeManager.cs:
- * Mono.Debugging.Server.Mdb.csproj: Track api changes in the
- debugger.
-
- * ObjectUtil.cs:
- * TimedEvaluator.cs:
- * CollectionAdaptor.cs: Fix warning.
-
-2009-05-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.csproj: Flush.
-
-2009-05-06 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbAdaptor-2-6.cs: Don't enable user modules for normal app
- debugging.
-
-2009-05-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdbAdaptor.cs:
- * MdbAdaptor-2-6.cs:
- * DebuggerServer.cs: SourceBreakpoint.IsUserModule requires
- latest mdb.
-
-2009-05-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs:
- * MdbAdaptorFactory.cs: Try to detect the mdb version only
- once per session.
-
- * MdbAdaptor.cs:
- * MdbAdaptor-2-6.cs: Properly set user modules when
- initializing.
-
-2009-04-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Fix api change issue.
-
-2009-04-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile:
- * MdbAdaptor.cs:
- * DebuggerServer.cs:
- * MdbAdaptor-2-6.cs:
- * BacktraceWrapper.cs:
- * MdbAdaptorFactory.cs:
- * Mono.Debugging.Server.Mdb.csproj: Initial support for XSP.
-
-2009-03-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * NRefactoryEvaluator.cs: Fix typo.
-
- * Mono.Debugging.Server.Mdb.csproj: Updated.
-
-2009-02-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.csproj: Updated references.
-
-2009/02/06 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.mdp:
- * Mono.Debugging.Server.Mdb.csproj: Migrated to MSBuild file format.
-
-2009-01-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.mdp: Fix target framework.
-
-2009-01-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * Mono.Debugging.Server.Mdb.mdp: Flush project format changes.
-
-2008-12-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * TimedEvaluator.cs: Fix build for old mono versions.
-
-2008-12-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * TimedEvaluator.cs:
- * ValueReference.cs:
- * DebuggerServer.cs:
- * BacktraceWrapper.cs:
- * TimeOutException.cs:
- * RemoteFrameObject.cs:
- * RuntimeInvokeManager.cs:
- * AsyncEvaluationTracker.cs: Implemented support for async evaluation of
- expressions.
-
- * Util.cs:
- * Convert.cs:
- * ObjectUtil.cs:
- * ArrayAdaptor.cs:
- * RawViewSource.cs:
- * FieldReference.cs:
- * EvaluationContext.cs:
- * PropertyReference.cs:
- * CollectionAdaptor.cs:
- * ArrayElementGroup.cs:
- * VariableReference.cs:
- * TypeValueReference.cs:
- * NullValueReference.cs:
- * ArrayValueReference.cs:
- * NRefactoryEvaluator.cs:
- * ExpressionEvaluator.cs:
- * IndexerValueReference.cs:
- * LiteralValueReference.cs:
- * NamespaceValueReference.cs: Use the new EvaluationContext class to get
- the current frame or thread. Thread.CurrentFrame will not give the
- original frame if some runtime invocation has been done since the
- debugger stopped.
-
- * Makefile:
- * Mono.Debugging.Server.Mdb.mdp: Added new files.
-
-2008-12-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.mdp: Don't require a specific version of
- Mono.Addins.
-
-2008-12-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Properly set the working directory.
-
- * BacktraceWrapper.cs: Add a missing try/catch.
-
- * TypeValueReference.cs: Improve reliability.
-
-2008-12-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * BacktraceWrapper.cs:
- * NRefactoryEvaluator.cs: There is now a new kind flag for NotSupported
- errors. Use it.
-
- * NamespaceValueReference.cs: Properly get child namespaces of a
- namespace.
-
-2008-12-01 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Get the exception object from the frame.
- Language.CreateObject won't work for native language.
-
- * BacktraceWrapper.cs: Fixed NRE. Native methods don't have a declaring
- type.
-
- * Makefile:
- * Mono.Debugging.Server.Mdb.mdp: Add required ref.
-
- * NamespaceValueReference.cs: Use system.reflection to access to the
- mono.cecil object model. We can't use MD's Mono.Cecil here because
- the debugger is using its own copy and conflicts.
-
-2008-11-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * CollectionAdaptor.cs: Add missing check. Collection adaptors are not
- implemented for non-managed languages.
-
-2008-09-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Improve thread location string.
-
-2008-09-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Use the gui manager to resume internally stopped
- threads.
- * Convert.cs: Fix object conversion.
- * ObjectUtil.cs: Make GetTypeDisplayData more robust.
-
-2008-09-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.mdp: Updated projects.
-
-2008-09-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Fill the Exception property for the Exception and
- UnhandledException events.
-
-2008-08-29 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Fix build.
-
-2008-08-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * MyTextReader.cs, Expression.cs: Remove unused stuff.
-
-2008-08-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.mdp: Fix reference to Mono.TextEditor. The
- incorrect add-in version number causes problems in the makefile
- synchronization.
-
-2008-08-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Optimize backtrace retrieval (trying to get the
- unmanaged backtrace when the current frame is managed is slow).
- * Util.cs: Ignore properties which don't have a getter.
- * ObjectUtil.cs: Added null check.
-
-2008-08-06 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Add support for live hit count and trace updating.
-
-2008-08-05 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Provide a location when creating a ThreadInfo.
-
-2008-07-31 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Report module loading. Fixed break command.
-
-2008-07-31 Lluis Sanchez Gual <lluis@novell.com>
-
- * ObjectUtil.cs: Added hack to make the proxy attribute work for
- generic types.
- * CollectionAdaptor.cs: Don't try to create a collection adaptor for
- generic types. It won't work.
-
-2008-07-31 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs, Util.cs, ExpressionEvaluator.cs,
- Mono.Debugging.Server.Mdb.mdp, ValueReference.cs,
- NRefactoryEvaluator.cs, ObjectUtil.cs, ArrayElementGroup.cs,
- RawViewSource.cs, CollectionAdaptor.cs, Makefile,
- IndexerValueReference.cs: Implemented support for
- DebuggerDisplayAttribute, DebuggerBrowsableAttribute and
- DebuggerTypeProxyAttribute.
-
-2008-07-31 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Enable support for conditional breakpoints.
- * Convert.cs: Allow fundamental conversions of strings. Use new boxing
- API.
- * ObjectUtil.cs: Some cleanup.
- * ArrayElementGroup.cs: Report exception when setting a value.
-
-2008-07-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * NRefactoryEvaluator.cs: Track changes in NRefactory.
-
-2008-07-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * BacktraceWrapper.cs: Implement GetAllLocals.
-
-2008-07-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Added some support for conditional breakpoints and
- tracepoints, although it is currently disabled because it requires
- changes in GUIManager.
- * Util.cs, BacktraceWrapper.cs, ExpressionEvaluator.cs,
- ArrayValueReference.cs, ValueReference.cs, FieldReference.cs,
- PropertyReference.cs, VariableReference.cs,
- LiteralValueReference.cs: Moved several methods for handling
- TargetObject instances from Util to ObjectUtil.
- * Convert.cs: Casting fixes.
- * Mono.Debugging.Server.Mdb.mdp, Makefile: Added new files.
- * NRefactoryEvaluator.cs: Improved error reporting. Added support for
- indexers.
- * ObjectUtil.cs: Moved several methods for handling TargetObject
- instances from Util to ObjectUtil. Added api for invoking target
- methods and getting property values.
- * CollectionAdaptor.cs: Use new api for calling methods and getting
- properties.
- * IndexerValueReference.cs: New value reference to be used to get and
- assign values to indexers.
-
-2008-07-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * BacktraceWrapper.cs, ExpressionEvaluator.cs, ValueReference.cs:
- Improved handling of evaluation errors.
- * CollectionAdaptor.cs: Fix null ref and some warnings.
- * LiteralValueReference.cs: Fix evaluation of literal value.
- * Util.cs: Added some new helper methods.
-
-2008-07-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Set breakpoints using a constructed SourceLocation
- instead of looking for it. In this way the breakpoint can be set
- even if the library is not yet loaded. Other minor fixes.
- * Util.cs: Make sure object references are properly dereferenced. Use
- new collection adaptors.
- * ICollectionAdaptor.cs, ExpressionEvaluator.cs,
- Mono.Debugging.Server.Mdb.mdp, ArrayAdaptor.cs,
- NRefactoryEvaluator.cs, ArrayElementGroup.cs, CollectionAdaptor.cs:
- When inspecting objects implementing ICollection and IDictionary,
- show the elements as children of the object, and provide a "Raw
- View" containing the members of the object.
- * BacktraceWrapper.cs: Provide completion for 'this' reference.
- * ArrayValueReference.cs, FieldReference.cs, PropertyReference.cs,
- VariableReference.cs: Make sure object references are properly
- dereferenced.
- * RemoteFrameObject.cs: Don't allow connecting a RemoteFrameObject more
- than once.
- * Makefile: Added new files.
-
-2008-07-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Implement support for catchpoints.
- * ExpressionEvaluator.cs: Fix pointer issue. Int64 can't be converted
- to IntPtr in 32bit systems.
-
-2008-07-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Fix internal stopping logic.
- * Util.cs, Convert.cs, ExpressionEvaluator.cs, ValueReference.cs,
- NRefactoryEvaluator.cs: Improved support for generic instance
- inspection.
- * BacktraceWrapper.cs: Don't remove parameter list of methods with
- special names.
- * ArrayElementGroup.cs: Improved error catching.
-
-2008-07-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile: Remove incorrect path.
-
-2008-07-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Ignore target events which don't stop the thread.
- * BacktraceWrapper.cs: Fix method name returned by StackFrame.
- * Makefile: Install the assemblies to the correct directory.
-
-2008-07-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Implemented SetActiveThread. Ignore target events
- coming from non-stopped threads.
-
-2008-07-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs, Util.cs, PropertyReference.cs: Make sure internal
- invokes to the debugged process do not fire target events.
- * BacktraceWrapper.cs, ExpressionEvaluator.cs, ValueReference.cs,
- ArrayElementGroup.cs: Use a new EvaluationOptions object to provide
- options to the evaluator.
- * TypeValueReference.cs, NamespaceValueReference.cs: Use the internal
- cecil modules to locate types.
- * NRefactoryEvaluator.cs: Support for array access and other fixes.
-
-2008-07-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * BacktraceWrapper.cs, ValueReference.cs, TypeValueReference.cs,
- NamespaceValueReference.cs: Added support for code completion.
-
-2008-07-08 Lluis Sanchez Gual <lluis@novell.com>
-
- * RemoteFrameObject.cs: Crash fix.
-
-2008-07-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs, Util.cs, MyTextReader.cs, Convert.cs,
- BacktraceWrapper.cs, ExpressionEvaluator.cs,
- Mono.Debugging.Server.Mdb.mdp, NullValueReference.cs,
- IExpressionValueSource.cs, ArrayValueReference.cs,
- ValueReference.cs, RemoteFrameObject.cs, TypeValueReference.cs,
- Expression.cs, NRefactoryEvaluator.cs, FieldReference.cs,
- PropertyReference.cs, VariableReference.cs, IValueReference.cs,
- ArrayElementGroup.cs, Server.cs, NamespaceValueReference.cs,
- LiteralValueReference.cs, Makefile: Implemented an expression
- evaluator based on NRefactory.
-
-2008-07-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs, Util.cs, BacktraceWrapper.cs, FieldReference.cs,
- Mono.Debugging.Server.Mdb.mdp, PropertyReference.cs,
- IValueReference.cs, VariableReference.cs,
- IExpressionValueSource.cs, Makefile, ArrayValueReference.cs:
- Implement support for modifying variable values and disassembling
- files.
-
-2008-07-01 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Fix some deadlocks.
- * BacktraceWrapper.cs: Fix infinite loop.
-
-2008-07-01 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Insert breakpoints using the global thread group.
-
-2008-06-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.mdp, Server.cs, Makefile: Enable unix
- channel support.
-
-2008-06-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Allow setting the active thread. Implemented
- GetThreads and GetProcesses.
- * Util.cs, BacktraceWrapper.cs: Fix warnings.
-
-2008-06-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs: Implemented detach. Send all events to the client
- asynchronously, to avoid deadlocks. Report debug output to the
- client.
- * Server.cs: Implemented detach.
-
-2008-06-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs, Util.cs, BacktraceWrapper.cs,
- Mono.Debugging.Server.Mdb.mdp: Implemented support for attach to
- process, disassemble.
-
-2008-06-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.mdp: Updated.
-
-2008-05-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs, BacktraceWrapper.cs: Track api changes. Properly
- redirect debugger output. Implemented support for adding
- breakpoints while the target process is running, it seems to kinda
- work.
-
-2008-05-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * Mono.Debugging.Server.Mdb.mdp: Updated project.
-
-2008-05-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs, Util.cs, BacktraceWrapper.cs,
- Mono.Debugging.Server.Mdb.mdp, IExpressionValueSource.cs, Makefile:
- Implemented query of variable and field data.
-
-2008-05-14 Lluis Sanchez Gual <lluis@novell.com>
-
- * DebuggerServer.cs, AssemblyInfo.cs, Util.cs, BacktraceWrapper.cs,
- Mono.Debugging.Server.Mdb.mdp, ChangeLog, Server.cs, Makefile:
- Initial import.
-
-2008-04-28 Ankit Jain <jankit@novell.com>
-
- * Initial import.
-
-
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Convert.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Convert.cs
deleted file mode 100644
index 4bd229da11..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Convert.cs
+++ /dev/null
@@ -1,522 +0,0 @@
-// Convert.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using Mono.Debugger;
-using Mono.Debugger.Languages;
-
-namespace DebuggerServer
-{
- public static class TargetObjectConvert
- {
- static bool ImplicitFundamentalConversionExists (FundamentalKind skind,
- FundamentalKind tkind)
- {
- //
- // See Convert.ImplicitStandardConversionExists in MCS.
- //
- switch (skind) {
- case FundamentalKind.SByte:
- if ((tkind == FundamentalKind.Int16) ||
- (tkind == FundamentalKind.Int32) ||
- (tkind == FundamentalKind.Int64) ||
- (tkind == FundamentalKind.Single) ||
- (tkind == FundamentalKind.Double))
- return true;
- break;
-
- case FundamentalKind.Byte:
- if ((tkind == FundamentalKind.Int16) ||
- (tkind == FundamentalKind.UInt16) ||
- (tkind == FundamentalKind.Int32) ||
- (tkind == FundamentalKind.UInt32) ||
- (tkind == FundamentalKind.Int64) ||
- (tkind == FundamentalKind.UInt64) ||
- (tkind == FundamentalKind.Single) ||
- (tkind == FundamentalKind.Double))
- return true;
- break;
-
- case FundamentalKind.Int16:
- if ((tkind == FundamentalKind.Int32) ||
- (tkind == FundamentalKind.Int64) ||
- (tkind == FundamentalKind.Single) ||
- (tkind == FundamentalKind.Double))
- return true;
- break;
-
- case FundamentalKind.UInt16:
- if ((tkind == FundamentalKind.Int32) ||
- (tkind == FundamentalKind.UInt32) ||
- (tkind == FundamentalKind.Int64) ||
- (tkind == FundamentalKind.UInt64) ||
- (tkind == FundamentalKind.Single) ||
- (tkind == FundamentalKind.Double))
- return true;
- break;
-
- case FundamentalKind.Int32:
- if ((tkind == FundamentalKind.Int64) ||
- (tkind == FundamentalKind.Single) ||
- (tkind == FundamentalKind.Double))
- return true;
- break;
-
- case FundamentalKind.UInt32:
- if ((tkind == FundamentalKind.Int64) ||
- (tkind == FundamentalKind.UInt64) ||
- (tkind == FundamentalKind.Single) ||
- (tkind == FundamentalKind.Double))
- return true;
- break;
-
- case FundamentalKind.Int64:
- case FundamentalKind.UInt64:
- if ((tkind == FundamentalKind.Single) ||
- (tkind == FundamentalKind.Double))
- return true;
- break;
-
- case FundamentalKind.Char:
- if ((tkind == FundamentalKind.UInt16) ||
- (tkind == FundamentalKind.Int32) ||
- (tkind == FundamentalKind.UInt32) ||
- (tkind == FundamentalKind.Int64) ||
- (tkind == FundamentalKind.UInt64) ||
- (tkind == FundamentalKind.Single) ||
- (tkind == FundamentalKind.Double))
- return true;
- break;
-
- case FundamentalKind.Single:
- if (tkind == FundamentalKind.Double)
- return true;
- break;
-
- default:
- break;
- }
-
- return false;
- }
-
- static bool ImplicitFundamentalConversionExists (TargetFundamentalType source, TargetFundamentalType target)
- {
- return ImplicitFundamentalConversionExists (
- source.FundamentalKind, target.FundamentalKind);
- }
-
- static object ImplicitFundamentalConversion (object value, FundamentalKind tkind)
- {
- switch (tkind) {
- case FundamentalKind.Char:
- return System.Convert.ToChar (value);
- case FundamentalKind.SByte:
- return System.Convert.ToSByte (value);
- case FundamentalKind.Byte:
- return System.Convert.ToByte (value);
- case FundamentalKind.Int16:
- return System.Convert.ToInt16 (value);
- case FundamentalKind.UInt16:
- return System.Convert.ToUInt16 (value);
- case FundamentalKind.Int32:
- return System.Convert.ToInt32 (value);
- case FundamentalKind.UInt32:
- return System.Convert.ToUInt32 (value);
- case FundamentalKind.Int64:
- return System.Convert.ToInt64 (value);
- case FundamentalKind.UInt64:
- return System.Convert.ToUInt64 (value);
- case FundamentalKind.Single:
- return System.Convert.ToSingle (value);
- case FundamentalKind.Double:
- return System.Convert.ToDouble (value);
- case FundamentalKind.String:
- return System.Convert.ToString (value);
- default:
- return null;
- }
- }
-
- static TargetObject ImplicitFundamentalConversion (MdbEvaluationContext ctx,
- TargetFundamentalObject obj,
- TargetFundamentalType type)
- {
- FundamentalKind skind = obj.Type.FundamentalKind;
- FundamentalKind tkind = type.FundamentalKind;
-
- if (!ImplicitFundamentalConversionExists (skind, tkind))
- return null;
-
- object value = obj.GetObject (ctx.Thread);
-
- object new_value = ImplicitFundamentalConversion (value, tkind);
- if (new_value == null)
- return null;
-
- return type.Language.CreateInstance (ctx.Thread, new_value);
- }
-
- public static TargetObject ExplicitFundamentalConversion (MdbEvaluationContext ctx,
- TargetFundamentalObject obj,
- TargetFundamentalType type)
- {
- TargetObject retval = ImplicitFundamentalConversion (ctx, obj, type);
- if (retval != null)
- return retval;
-
- FundamentalKind tkind = type.FundamentalKind;
-
- try {
- object value = obj.GetObject (ctx.Thread);
- object new_value = ImplicitFundamentalConversion (value, tkind);
- if (new_value == null)
- return null;
-
- return type.Language.CreateInstance (ctx.Thread, new_value);
- } catch {
- return null;
- }
- }
-
- static bool ImplicitReferenceConversionExists (MdbEvaluationContext ctx,
- TargetStructType source,
- TargetStructType target)
- {
- if (source == target)
- return true;
-
- if (source.Module.Name.StartsWith ("mscorlib,") && target.Module.Name.StartsWith ("mscorlib,")) {
- Type t1 = Type.GetType (source.Name);
- Type t2 = Type.GetType (target.Name);
- return t2.IsAssignableFrom (t1);
- }
-
- if (!source.HasParent)
- return false;
-
- TargetStructType parent_type = source.GetParentType (ctx.Thread);
- return ImplicitReferenceConversionExists (ctx, parent_type, target);
- }
-
- static TargetObject ImplicitReferenceConversion (MdbEvaluationContext ctx,
- TargetClassObject obj,
- TargetClassType type)
- {
- if (obj.Type == type)
- return obj;
-
- if (obj.Type.HasParent) {
- TargetObject pobj = obj.GetParentObject (ctx.Thread);
- if (pobj != null) {
- pobj = ImplicitConversion (ctx, pobj, type);
- if (pobj != null)
- return pobj;
- }
- }
-
- if (ImplicitReferenceConversionExists (ctx, obj.Type, type))
- return obj;
- return null;
- }
-
- public static bool ImplicitConversionExists (MdbEvaluationContext ctx,
- TargetType source, TargetType target)
- {
- if (source.Equals (target))
- return true;
-
- if (source is TargetArrayType && target.Name == "System.Array")
- return true;
-
- if (ObjectUtil.FixTypeName (target.Name) == "System.Object")
- return true;
-
- if (source is TargetArrayType && target is TargetArrayType) {
- TargetArrayType sa = (TargetArrayType) source;
- TargetArrayType ta = (TargetArrayType) target;
- return sa.ElementType.Equals (ta.ElementType);
- }
-
- if (source is TargetEnumType) {
- TargetEnumType e = (TargetEnumType) source;
- if (ImplicitConversionExists (ctx, e.Value.Type, target))
- return true;
- }
-
- if (target is TargetEnumType) {
- TargetEnumType e = (TargetEnumType) target;
- if (ImplicitConversionExists (ctx, source, e.Value.Type))
- return true;
- }
-
- if ((source is TargetFundamentalType) && (target is TargetFundamentalType))
- return ImplicitFundamentalConversionExists (
- (TargetFundamentalType) source,
- (TargetFundamentalType) target);
-
- if ((source is TargetClassType) && (target is TargetClassType))
- return ImplicitReferenceConversionExists (
- ctx, (TargetClassType) source,
- (TargetClassType) target);
-
- return false;
- }
-
- public static TargetObject ImplicitConversion (MdbEvaluationContext ctx,
- TargetObject obj, TargetType type)
- {
- if (obj.Type.Equals (type))
- return obj;
-
- if (type is TargetObjectType || ObjectUtil.FixTypeName (type.Name) == "System.Object") {
- if (obj.Type.IsByRef)
- return obj;
- return BoxValue (ctx, obj);
- }
-
- if (obj is TargetEnumObject && type is TargetFundamentalType) {
- TargetEnumObject e = (TargetEnumObject) obj;
- return ImplicitConversion (ctx, e.GetValue (ctx.Thread), type);
- }
-
- if (type is TargetEnumType) {
- TargetEnumType e = (TargetEnumType) type;
- return ImplicitConversion (ctx, obj, e.Value.Type);
- }
-
- if (obj is TargetArrayObject && type.Name == "System.Array") {
- return obj;
- }
-
- if (obj is TargetArrayObject && type is TargetArrayType) {
- TargetArrayObject sa = (TargetArrayObject) obj;
- TargetArrayType ta = (TargetArrayType) type;
- if (sa.Type.ElementType.Equals (ta.ElementType))
- return obj;
- }
-
- if ((obj is TargetFundamentalObject) && (type is TargetFundamentalType))
- return ImplicitFundamentalConversion (
- ctx, (TargetFundamentalObject) obj,
- (TargetFundamentalType) type);
-
- if ((obj is TargetClassObject) && (type is TargetClassType)) {
- return ImplicitReferenceConversion (
- ctx, (TargetClassObject) obj,
- (TargetClassType) type);
- }
-
- return null;
- }
-
- public static TargetObject ImplicitConversionRequired (MdbEvaluationContext ctx,
- TargetObject obj, TargetType type)
- {
- TargetObject new_obj = ImplicitConversion (ctx, obj, type);
- if (new_obj != null)
- return new_obj;
-
- throw new Exception (string.Format ("Cannot implicitly convert `{0}' to `{1}'", obj.Type.Name, type.Name));
- }
-
- public static TargetClassType ToClassType (TargetType type)
- {
- TargetClassType ctype = type as TargetClassType;
- if (ctype != null)
- return ctype;
-
- TargetObjectType otype = type as TargetObjectType;
- if (otype != null && otype.HasClassType) {
- ctype = otype.ClassType;
- if (ctype != null)
- return ctype;
- }
-
- TargetArrayType atype = type as TargetArrayType;
- if (atype != null) {
- if (atype.Language.ArrayType != null)
- return atype.Language.ArrayType;
- }
-
- throw new Exception (string.Format ("Type `{0}' is not a struct or class.", type.Name));
- }
-
- public static TargetClassObject ToClassObject (MdbEvaluationContext ctx, TargetObject obj)
- {
- TargetClassObject cobj = obj as TargetClassObject;
- if (cobj != null)
- return cobj;
-
- TargetObjectObject oobj = obj as TargetObjectObject;
- if (oobj != null)
- return oobj.GetClassObject (ctx.Thread);
-
- TargetArrayObject aobj = obj as TargetArrayObject;
- if ((aobj != null) && aobj.HasClassObject)
- return aobj.GetClassObject (ctx.Thread);
-
- return null;
- }
-
- public static TargetStructObject ToStructObject (MdbEvaluationContext ctx, TargetObject obj)
- {
- TargetStructObject sobj = obj as TargetStructObject;
- if (sobj != null)
- return sobj;
-
- TargetObjectObject oobj = obj as TargetObjectObject;
- if (oobj != null)
- return oobj.GetClassObject (ctx.Thread);
-
- TargetArrayObject aobj = obj as TargetArrayObject;
- if ((aobj != null) && aobj.HasClassObject)
- return aobj.GetClassObject (ctx.Thread);
-
- return null;
- }
-
- public static TargetObject Cast (MdbEvaluationContext ctx, TargetObject obj, TargetType targetType)
- {
- obj = ObjectUtil.GetRealObject (ctx, obj);
-
- if (obj.Type == targetType)
- return obj;
-
- if (targetType is TargetObjectType || ObjectUtil.FixTypeName (targetType.Name) == "System.Object") {
- if (obj.Type.IsByRef)
- return obj;
- return BoxValue (ctx, obj);
- }
-
- if (targetType is TargetPointerType)
- throw new NotSupportedException ();
-
- if (targetType is TargetFundamentalType) {
- TargetFundamentalObject fobj = obj as TargetFundamentalObject;
- if (fobj == null)
- throw new NotSupportedException ();
-
- TargetFundamentalType ftype = targetType as TargetFundamentalType;
- TargetObject ob = ExplicitFundamentalConversion (ctx, fobj, ftype);
- if (ob == null)
- throw new NotSupportedException ();
- return ob;
- }
-
- if (targetType is TargetNullableType) {
- TargetNullableType ntype = (TargetNullableType) targetType;
- if (obj.Kind == TargetObjectKind.Null)
- return obj;
- else if (obj.Kind != TargetObjectKind.Nullable)
- return ImplicitConversion (ctx, obj, ntype.ElementType);
-
- TargetNullableType ntype2 = (TargetNullableType) obj.Type;
- if (ImplicitConversionExists (ctx, ntype2.ElementType, ntype.ElementType))
- return obj;
- }
-
- TargetClassType ctype = ToClassType (targetType);
- TargetClassObject source = ToClassObject (ctx, obj);
-
- if (source == null)
- throw new Exception (string.Format ("Variable is not a class type."));
-
- return TryCast (ctx, source, ctype);
- }
-
- static TargetObject BoxValue (MdbEvaluationContext ctx, TargetObject fobj)
- {
- return ctx.Frame.Language.CreateBoxedObject (ctx.Thread, fobj);
- }
-
- static TargetStructObject TryParentCast (MdbEvaluationContext ctx, TargetStructObject source, TargetStructType source_type, TargetStructType target_type)
- {
- if (source_type == target_type)
- return source;
-
- if (!source_type.HasParent)
- return null;
-
- TargetStructType parent_type = source_type.GetParentType (ctx.Thread);
- source = TryParentCast (ctx, source, parent_type, target_type);
- if (source == null)
- return null;
-
- return source.GetParentObject (ctx.Thread) as TargetClassObject;
- }
-
- static TargetStructObject TryCurrentCast (MdbEvaluationContext ctx, TargetClassObject source, TargetClassType target_type)
- {
- TargetStructObject current = source.GetCurrentObject (ctx.Thread);
- if (current == null)
- return null;
-
- return TryParentCast (ctx, current, current.Type, target_type);
- }
-
- public static TargetObject TryCast (MdbEvaluationContext ctx, TargetObject source, TargetClassType target_type)
- {
- if (source.Type == target_type)
- return source;
-
- TargetClassObject sobj = ToClassObject (ctx, source);
- if (sobj == null)
- return null;
-
- TargetStructObject result = TryParentCast (ctx, sobj, sobj.Type, target_type);
- if (result != null)
- return result;
-
- return TryCurrentCast (ctx, sobj, target_type);
- }
-
- static bool TryParentCast (MdbEvaluationContext ctx, TargetStructType source_type, TargetStructType target_type)
- {
- if (source_type == target_type)
- return true;
-
- if (!source_type.HasParent)
- return false;
-
- TargetStructType parent_type = source_type.GetParentType (ctx.Thread);
- return TryParentCast (ctx, parent_type, target_type);
- }
-
- public static bool TryCast (MdbEvaluationContext ctx, TargetType source, TargetClassType target_type)
- {
- if (source == target_type)
- return true;
-
- TargetClassType stype = ToClassType (source);
- if (stype == null)
- return false;
-
- return TryParentCast (ctx, stype, target_type);
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/DebuggerServer.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/DebuggerServer.cs
deleted file mode 100644
index fe387a9499..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/DebuggerServer.cs
+++ /dev/null
@@ -1,967 +0,0 @@
-using System;
-using System.IO;
-using System.Collections.Generic;
-using System.Runtime.InteropServices;
-using System.Runtime.Remoting.Lifetime;
-using System.Text;
-using ST = System.Threading;
-
-using Mono.Debugger;
-
-using MD = Mono.Debugger;
-using ML = Mono.Debugger.Languages;
-using DL = Mono.Debugging.Client;
-using DB = Mono.Debugging.Backend;
-
-using Mono.Debugging.Client;
-using Mono.Debugging.Evaluation;
-using Mono.Debugging.Backend.Mdb;
-
-namespace DebuggerServer
-{
- class DebuggerServer : MarshalByRefObject, IDebuggerServer, ISponsor
- {
- IDebuggerController controller;
- MD.Debugger debugger;
- MD.DebuggerSession session;
- MD.Process process;
- MD.GUIManager guiManager;
- MdbAdaptor mdbAdaptor;
- int max_frames;
- List<ST.WaitCallback> stoppedWorkQueue = new List<ST.WaitCallback> ();
- List<ST.WaitCallback> eventQueue = new List<ST.WaitCallback> ();
- bool initializing;
- bool running;
- bool exited;
- NRefactoryEvaluator evaluator = new NRefactoryEvaluator ();
- MD.Thread activeThread;
- Dictionary<int,BreakEvent> events = new Dictionary<int,BreakEvent> ();
- Dictionary<int,string> lastConditionValue = new Dictionary<int,string> ();
-
- DateTime lastBreakEventUpdate = DateTime.Now;
- Dictionary<int, ST.WaitCallback> breakUpdates = new Dictionary<int,ST.WaitCallback> ();
- bool breakUpdateEventsQueued;
-
- MdbObjectValueAdaptor mdbObjectValueAdaptor;
-
- const int BreakEventUpdateNotifyDelay = 500;
- public DebuggerSessionOptions SessionOptions;
-
- public DebuggerServer (IDebuggerController dc)
- {
- this.controller = dc;
- mdbObjectValueAdaptor = new MdbObjectValueAdaptor ();
- MarshalByRefObject mbr = (MarshalByRefObject)controller;
- ILease lease = mbr.GetLifetimeService() as ILease;
- lease.Register(this);
- max_frames = 100;
-
- ST.Thread t = new ST.Thread ((ST.ThreadStart)EventDispatcher);
- t.IsBackground = true;
- t.Start ();
- }
-
- public override object InitializeLifetimeService ()
- {
- return null;
- }
-
- public MdbObjectValueAdaptor MdbObjectValueAdaptor {
- get { return mdbObjectValueAdaptor; }
- }
-
- public Mono.Debugging.Evaluation.ExpressionEvaluator Evaluator {
- get { return evaluator; }
- }
-
- public MdbAdaptor MdbAdaptor {
- get { return mdbAdaptor; }
- }
-
- #region IDebugger Members
-
- public string InitializeMdb (string mdbVersion, int mdPid)
- {
- mdbAdaptor = MdbAdaptorFactory.CreateAdaptor (mdbVersion);
- WatchParentProcess (mdPid);
- return mdbAdaptor.MdbVersion;
- }
-
- void WatchParentProcess (int pid)
- {
- ST.Thread t = new ST.Thread (delegate () {
- while (true) {
- try {
- System.Diagnostics.Process.GetProcessById (pid);
- } catch {
- ForceShutdown ();
- }
- ST.Thread.Sleep (1000);
- }
- });
- t.IsBackground = true;
- t.Start ();
- }
-
- void ForceShutdown ()
- {
- try {
- Exit ();
- } catch {
- }
- Environment.Exit (1);
- }
-
- public void Run (MonoDebuggerStartInfo startInfo, DebuggerSessionOptions sessionOptions)
- {
- try {
- if (startInfo == null)
- throw new ArgumentNullException ("startInfo");
-
- Console.WriteLine ("MDB version: " + mdbAdaptor.MdbVersion);
-
- this.SessionOptions = sessionOptions;
- mdbAdaptor.StartInfo = startInfo;
-
- Report.Initialize ();
-
- DebuggerConfiguration config = new DebuggerConfiguration ();
- config.LoadConfiguration ();
- mdbAdaptor.Configuration = config;
- mdbAdaptor.InitializeConfiguration ();
-
- debugger = new MD.Debugger (config);
-
- debugger.ModuleLoadedEvent += OnModuleLoadedEvent;
- debugger.ModuleUnLoadedEvent += OnModuleUnLoadedEvent;
-
- debugger.ProcessReachedMainEvent += delegate (MD.Debugger deb, MD.Process proc) {
- OnInitialized (deb, proc);
- };
-
- if (startInfo.IsXsp) {
- mdbAdaptor.SetupXsp ();
- config.FollowFork = false;
- }
- config.OpaqueFileNames = false;
-
- DebuggerOptions options = DebuggerOptions.ParseCommandLine (new string[] { startInfo.Command } );
- options.WorkingDirectory = startInfo.WorkingDirectory;
- Environment.CurrentDirectory = startInfo.WorkingDirectory;
- options.StopInMain = false;
-
- if (!string.IsNullOrEmpty (startInfo.Arguments))
- options.InferiorArgs = ToArgsArray (startInfo.Arguments);
-
- if (startInfo.EnvironmentVariables != null) {
- foreach (KeyValuePair<string,string> env in startInfo.EnvironmentVariables)
- options.SetEnvironment (env.Key, env.Value);
- }
- session = new MD.DebuggerSession (config, options, "main", null);
- mdbAdaptor.Session = session;
- mdbAdaptor.InitializeSession ();
-
- ST.ThreadPool.QueueUserWorkItem (delegate {
- // Run in a thread to avoid a deadlock, since NotifyStarted calls back to the client.
- NotifyStarted ();
- debugger.Run(session);
- });
-
- } catch (Exception e) {
- Console.WriteLine ("error: " + e.ToString ());
- throw;
- }
- }
-
- public void AttachToProcess (long pid, DebuggerSessionOptions sessionOptions)
- {
- Report.Initialize ();
-
- this.SessionOptions = sessionOptions;
- DebuggerConfiguration config = new DebuggerConfiguration ();
- mdbAdaptor.Configuration = config;
- mdbAdaptor.InitializeConfiguration ();
- config.LoadConfiguration ();
- debugger = new MD.Debugger (config);
-
- DebuggerOptions options = DebuggerOptions.ParseCommandLine (new string[0]);
- options.StopInMain = false;
- session = new MD.DebuggerSession (config, options, "main", (IExpressionParser) null);
- mdbAdaptor.Session = session;
-
- Process proc = debugger.Attach (session, (int)pid);
- OnInitialized (debugger, proc);
-
- ST.ThreadPool.QueueUserWorkItem (delegate {
- NotifyStarted ();
- });
- }
-
- public void Detach ()
- {
- CancelRuntimeInvokes ();
- try {
- debugger.Detach ();
- } catch (Exception ex) {
- Console.WriteLine (ex);
- } finally {
- running = false;
- }
- }
-
- public void Stop ()
- {
- CancelRuntimeInvokes ();
- QueueTask (delegate {
- guiManager.Stop (process.MainThread);
- });
- }
-
- public void Exit ()
- {
- CancelRuntimeInvokes ();
- ResetTaskQueue ();
- debugger.Kill ();
- running = false;
- }
-
- public void NextLine ()
- {
- if (running)
- throw new InvalidOperationException ("Target already running");
- OnStartRunning ();
- guiManager.StepOver (activeThread);
- }
-
- public void StepLine ()
- {
- if (running)
- throw new InvalidOperationException ("Target already running");
- OnStartRunning ();
- guiManager.StepInto (activeThread);
- }
-
- public void StepInstruction ()
- {
- if (running)
- throw new InvalidOperationException ("Target already running");
- OnStartRunning ();
- activeThread.StepInstruction ();
- }
-
- public void NextInstruction ()
- {
- if (running)
- throw new InvalidOperationException ("Target already running");
- OnStartRunning ();
- activeThread.NextInstruction ();
- }
-
- public void Finish ()
- {
- if (running)
- throw new InvalidOperationException ("Target already running");
- OnStartRunning ();
- guiManager.StepOut (activeThread);
- }
-
- public void Continue ()
- {
- if (running)
- throw new InvalidOperationException ("Target already running");
- OnStartRunning ();
- QueueTask (delegate {
- guiManager.Continue (activeThread);
- });
- }
-
- public bool AllowBreakpointChanges {
- get {
- return mdbAdaptor == null || mdbAdaptor.AllowBreakEventChanges;
- }
- }
-
- public int InsertBreakEvent (DL.BreakEvent be, bool enable)
- {
- CancelRuntimeInvokes ();
- DL.Breakpoint bp = be as DL.Breakpoint;
- MD.Event ev = null;
-
- if (bp != null) {
- MD.SourceLocation location = new MD.SourceLocation (bp.FileName, bp.Line);
- MD.SourceBreakpoint sbp = new MD.SourceBreakpoint (session, ThreadGroup.Global, location);
- mdbAdaptor.InitializeBreakpoint (sbp);
- session.AddEvent (sbp);
- ev = sbp;
- }
- else if (be is Catchpoint) {
- lock (pendingCatchpoints) {
- Catchpoint cp = (Catchpoint) be;
- ML.TargetType exc = null;
- if (process != null) {
- foreach (Module mod in process.Modules) {
- exc = mod.Language.LookupType (cp.ExceptionName);
- if (exc != null)
- break;
- }
- }
- if (exc != null)
- ev = session.InsertExceptionCatchPoint (process.MainThread, ThreadGroup.Global, exc);
- else {
- pendingCatchpoints.Add (cp);
- return -1;
- }
- }
- }
-
- ev.IsEnabled = enable;
-
- if (!initializing) {
- lock (debugger) {
- mdbAdaptor.ActivateEvent (ev);
- }
- }
-
- if (bp != null && !running && !initializing && activeThread.CurrentFrame != null && !string.IsNullOrEmpty (bp.ConditionExpression) && bp.BreakIfConditionChanges) {
- // Initial expression evaluation
- MdbEvaluationContext ctx = new MdbEvaluationContext (activeThread, activeThread.CurrentFrame, null, SessionOptions.EvaluationOptions);
- ML.TargetObject ob = EvaluateExp (ctx, bp.ConditionExpression);
- if (ob != null)
- lastConditionValue [ev.Index] = evaluator.TargetObjectToExpression (ctx, ob).Value;
- }
-
- events [ev.Index] = be;
- return ev.Index;
- }
-
- public void RemoveBreakEvent (int handle)
- {
- if (exited)
- return;
- CancelRuntimeInvokes ();
- Event ev = session.GetEvent (handle);
- mdbAdaptor.RemoveEvent (ev);
- }
-
- public void EnableBreakEvent (int handle, bool enable)
- {
- CancelRuntimeInvokes ();
- Event ev = session.GetEvent (handle);
- if (enable)
- ev.Activate (process.MainThread);
- else
- ev.Deactivate (process.MainThread);
- }
-
- public object UpdateBreakEvent (object handle, DL.BreakEvent bp)
- {
- events [(int)handle] = bp;
- return handle;
- }
-
- bool BreakEventCheck (MD.TargetEventArgs args)
- {
- MD.StackFrame frame = args.Frame;
- if (!(args.Data is int))
- return true;
-
- int eventHandle = (int) args.Data;
-
- DL.BreakEvent be;
- if (!events.TryGetValue (eventHandle, out be))
- return true;
-
- // Check hit count
- if (be.HitCount > 0) {
- be.HitCount--;
- DispatchEvent (delegate {
- NotifyBreakEventUpdate (eventHandle, be.HitCount, null);
- });
- return false;
- }
-
- MdbEvaluationContext ctx = new MdbEvaluationContext (frame.Thread, frame, null, SessionOptions.EvaluationOptions);
- DL.Breakpoint bp = be as DL.Breakpoint;
- if (bp != null && !string.IsNullOrEmpty (bp.ConditionExpression)) {
- ML.TargetObject val = EvaluateExp (ctx, bp.ConditionExpression);
- if (val == null)
- return false;
- if (bp.BreakIfConditionChanges) {
- string current = evaluator.TargetObjectToExpression (ctx, val).Value;
- string last;
- bool found = lastConditionValue.TryGetValue (eventHandle, out last);
- lastConditionValue [eventHandle] = current;
- if (!found || last == current)
- return false;
- } else {
- ML.TargetFundamentalObject fob = val as ML.TargetFundamentalObject;
- if (fob == null)
- return false;
- object ob = fob.GetObject (frame.Thread);
- if (!(ob is bool) || !(bool)ob)
- return false;
- }
- }
-
- switch (be.HitAction) {
- case HitAction.Break:
- return true;
- case HitAction.CustomAction:
- return controller.OnCustomBreakpointAction (be.CustomActionId, eventHandle);
- case HitAction.PrintExpression:
- if (string.IsNullOrEmpty (be.TraceExpression) || frame == null)
- return false;
- ML.TargetObject val = EvaluateExp (ctx, be.TraceExpression);
- if (val != null) {
- string str = evaluator.TargetObjectToString (ctx, val);
- DispatchEvent (delegate {
- NotifyBreakEventUpdate (eventHandle, -1, str);
- });
- }
- return false;
- }
- return false;
- }
-
- ML.TargetObject EvaluateExp (EvaluationContext ctx, string exp)
- {
- ValueReference var;
- try {
- EvaluationContext cctx = ctx.Clone ();
- EvaluationOptions ops = cctx.Options;
- ops.AllowMethodEvaluation = true;
- cctx.Options = ops;
- var = (ValueReference) Server.Instance.Evaluator.Evaluate (cctx, exp);
- return (ML.TargetObject) var.Value;
- } catch {
- return null;
- }
- }
-
- void NotifyBreakEventUpdate (int eventHandle, int hitCount, string lastTrace)
- {
- bool notify = false;
-
- lock (breakUpdates)
- {
- int span = (int) (DateTime.Now - lastBreakEventUpdate).TotalMilliseconds;
- if (span >= BreakEventUpdateNotifyDelay && !breakUpdateEventsQueued) {
- // Last update was more than 0.5s ago. The update can be sent.
- lastBreakEventUpdate = DateTime.Now;
- notify = true;
- } else {
- // Queue the event notifications to avoid wasting too much time
- breakUpdates [eventHandle] = delegate {
- controller.UpdateBreakpoint (eventHandle, hitCount, lastTrace);
- };
- if (!breakUpdateEventsQueued) {
- breakUpdateEventsQueued = true;
-
- ST.ThreadPool.QueueUserWorkItem (delegate {
- ST.Thread.Sleep (BreakEventUpdateNotifyDelay - span);
- List<ST.WaitCallback> copy;
- lock (breakUpdates) {
- copy = new List<ST.WaitCallback> (breakUpdates.Values);
- breakUpdates.Clear ();
- breakUpdateEventsQueued = false;
- lastBreakEventUpdate = DateTime.Now;
- }
- foreach (ST.WaitCallback wc in copy)
- wc (null);
- });
- }
- }
- }
- if (notify)
- controller.UpdateBreakpoint (eventHandle, hitCount, lastTrace);
- }
-
- public ThreadInfo[] GetThreads (long processId)
- {
- MD.Process p = GetProcess (processId);
- if (p == null)
- return new ThreadInfo [0];
- List<DL.ThreadInfo> list = new List<DL.ThreadInfo> ();
- foreach (MD.Thread t in p.GetThreads ()) {
- DL.ThreadInfo ct = CreateThreadInfo (t);
- list.Add (ct);
- }
- return list.ToArray ();
- }
-
- public ProcessInfo[] GetProcesses ()
- {
- List<DL.ProcessInfo> list = new List<DL.ProcessInfo> ();
- foreach (MD.Process p in debugger.Processes)
- list.Add (new DL.ProcessInfo (p.ID, p.TargetApplication + " " + string.Join (" ", p.CommandLineArguments)));
- return list.ToArray ();
- }
-
- ThreadInfo CreateThreadInfo (MD.Thread t)
- {
- string loc;
- if (t.CurrentFrame != null && t.CurrentFrame.SourceLocation != null) {
- loc = t.CurrentFrame.ToString ();
- } else
- loc = "<Unknown>";
-
- return new ThreadInfo (t.Process.ID, t.ID, t.Name, loc);
- }
-
- public DL.Backtrace GetThreadBacktrace (long processId, long threadId)
- {
- MD.Thread t = GetThread (processId, threadId);
- if (t != null && t.IsStopped)
- return CreateBacktrace (t, null);
- else
- return null;
- }
-
- public void SetActiveThread (long processId, long threadId)
- {
- activeThread = GetThread (processId, threadId);
- }
-
- MD.Thread GetThread (long procId, long threadId)
- {
- MD.Process proc = GetProcess (procId);
- if (proc != null) {
- foreach (MD.Thread t in proc.GetThreads ()) {
- if (t.ID == (int)threadId)
- return t;
- }
- }
- return null;
- }
-
- MD.Process GetProcess (long id)
- {
- foreach (MD.Process p in debugger.Processes) {
- if (p.ID == (int)id)
- return p;
- }
- return null;
- }
-
- public AssemblyLine[] DisassembleFile (string file)
- {
- CancelRuntimeInvokes ();
-
- // Not working yet
- return null;
-
-/* SourceFile sourceFile = session.FindFile (file);
- List<AssemblyLine> lines = new List<AssemblyLine> ();
- foreach (MethodSource met in sourceFile.Methods) {
- TargetAddress addr = met.NativeMethod.StartAddress;
- TargetAddress endAddr = met.NativeMethod.EndAddress;
- while (addr < endAddr) {
- SourceAddress line = met.NativeMethod.LineNumberTable.Lookup (addr);
- AssemblerLine aline = process.MainThread.DisassembleInstruction (met.NativeMethod, addr);
- if (aline != null) {
- if (line != null)
- lines.Add (new DL.AssemblyLine (addr.Address, aline.Text, line.Row));
- else
- lines.Add (new DL.AssemblyLine (addr.Address, aline.Text));
- addr += aline.InstructionSize;
- } else
- addr++;
- }
- }
- lines.Sort (delegate (DL.AssemblyLine l1, DL.AssemblyLine l2) {
- return l1.SourceLine.CompareTo (l2.SourceLine);
- });
- return lines.ToArray ();
- */
- }
-
- #endregion
-
- public void Dispose ()
- {
- MarshalByRefObject mbr = (MarshalByRefObject)controller;
- ILease lease = mbr.GetLifetimeService() as ILease;
- lease.Unregister(this);
- }
-
- public void WriteDebuggerOutput (string msg, params object[] args)
- {
- DispatchEvent (delegate {
- controller.OnDebuggerOutput (false, string.Format (msg, args));
- });
- }
-
- public void WriteDebuggerError (Exception ex)
- {
- if (ex is EvaluatorException)
- Console.WriteLine (ex.Message);
- else
- Console.WriteLine (ex);
- }
-
- public ML.TargetObject RuntimeInvoke (MdbEvaluationContext ctx, ML.TargetFunctionType function,
- ML.TargetStructObject object_argument,
- params ML.TargetObject[] param_objects)
- {
- MethodCall mc = new MethodCall (ctx, function, object_argument, param_objects);
- ctx.Adapter.AsyncExecute (mc, ctx.Options.EvaluationTimeout);
- return mc.ReturnValue;
- }
-
- DL.Backtrace CreateBacktrace (MD.Thread thread, ML.TargetObject exception)
- {
- List<MD.StackFrame> frames = new List<MD.StackFrame> ();
- DateTime t = DateTime.Now;
- if (!thread.CurrentFrame.Language.IsManaged) {
- MD.Backtrace bt = thread.GetBacktrace (MD.Backtrace.Mode.Native, max_frames);
- if (bt != null) {
- Console.WriteLine ("GetBacktrace native time: {0} ms n:{1}", (DateTime.Now - t).TotalMilliseconds, bt.Count);
- frames.AddRange (bt.Frames);
- }
- } else {
- t = DateTime.Now;
- MD.Backtrace backtrace = thread.GetBacktrace (MD.Backtrace.Mode.Managed, max_frames);
- if (backtrace != null) {
- Console.WriteLine ("GetBacktrace managed time: {0} ms n:{1}", (DateTime.Now - t).TotalMilliseconds, backtrace.Count);
- frames.AddRange (backtrace.Frames);
- }
- }
- if (frames.Count > 0) {
- BacktraceWrapper wrapper = new BacktraceWrapper (frames.ToArray (), exception);
- return new DL.Backtrace (wrapper);
- } else if (thread.CurrentBacktrace != null) {
- BacktraceWrapper wrapper = new BacktraceWrapper (thread.CurrentBacktrace.Frames, exception);
- return new DL.Backtrace (wrapper);
- }
- return null;
- }
-
- #region ISponsor Members
-
- public TimeSpan Renewal(ILease lease)
- {
- return TimeSpan.FromSeconds(7);
- }
-
- #endregion
-
- private void OnInitialized (MD.Debugger debugger, Process process)
- {
- Console.WriteLine (">> OnInitialized");
-
- this.process = process;
- this.debugger = debugger;
-
- mdbAdaptor.Process = process;
-
- guiManager = process.StartGUIManager ();
-
- //FIXME: conditionally add event handlers
- process.TargetOutputEvent += OnTargetOutput;
-
- debugger.ProcessCreatedEvent += OnProcessCreatedEvent;
- debugger.ProcessExecdEvent += OnProcessExecdEvent;
- debugger.ProcessExitedEvent += OnProcessExitedEvent;
-
- debugger.ThreadCreatedEvent += OnThreadCreatedEvent;
- debugger.ThreadExitedEvent += OnThreadExitedEvent;
-
- debugger.TargetExitedEvent += OnTargetExitedEvent;
- guiManager.TargetEvent += OnTargetEvent;
-
- // Not supported
- //guiManager.BreakpointHitHandler = BreakEventCheck;
-
- activeThread = process.MainThread;
- running = true;
-
- Console.WriteLine ("<< OnInitialized");
- }
-
- void NotifyStarted ()
- {
- try {
- initializing = true;
- controller.NotifyStarted();
- initializing = false;
- } catch (Exception ex) {
- Console.WriteLine (ex);
- }
- }
-
- void OnTargetOutput (bool is_stderr, string text)
- {
- DispatchEvent (delegate {
- controller.OnTargetOutput (is_stderr, text);
- });
- }
-
- void QueueTask (ST.WaitCallback cb)
- {
- lock (debugger) {
- if (stoppedWorkQueue.Count > 0)
- stoppedWorkQueue.Add (cb);
- else
- cb (null);
- }
- }
-
- void ResetTaskQueue ()
- {
- lock (debugger) {
- stoppedWorkQueue.Clear ();
- }
- }
-
- void LogEvent (MD.TargetEventArgs args)
- {
- Console.WriteLine ("Server OnTargetEvent: {0} stopped:{1} data:{2} queue:{3} thread:{4} running:{5}", args.Type, args.IsStopped, args.Data, stoppedWorkQueue.Count, args.Frame != null ? args.Frame.Thread : null, running);
- }
-
- private void OnTargetEvent (MD.Thread thread, MD.TargetEventArgs args)
- {
- try {
- if (!running) {
- LogEvent (args);
- return;
- }
-
- bool notifyToClient = args.IsStopped || args.Type == MD.TargetEventType.UnhandledException || args.Type == MD.TargetEventType.Exception || args.Type == MD.TargetEventType.TargetInterrupted;
-
- LogEvent (args);
-
- bool isStop = args.Type != MD.TargetEventType.FrameChanged &&
- args.Type != MD.TargetEventType.TargetExited &&
- args.Type != MD.TargetEventType.TargetRunning;
-
- if (isStop) {
-
- lock (debugger) {
-
- if (stoppedWorkQueue.Count > 0) {
- // Execute queued work in another thread with a small delay
- // since it is not safe to execute it here
- System.Threading.ThreadPool.QueueUserWorkItem (delegate {
- System.Threading.Thread.Sleep (50);
- bool resume = false;
- lock (debugger) {
- foreach (ST.WaitCallback cb in stoppedWorkQueue) {
- cb (null);
- }
- stoppedWorkQueue.Clear ();
- }
- if (resume)
- guiManager.Continue (process.MainThread);
- else if (notifyToClient)
- NotifyTargetEvent (thread, args);
- });
- return;
- }
- }
- }
-
- if (notifyToClient)
- NotifyTargetEvent (thread, args);
-
- } catch (Exception e) {
- Console.WriteLine ("*** DS.OnTargetEvent1, exception : {0}", e.ToString ());
- }
- }
-
- void NotifyTargetEvent (MD.Thread thread, MD.TargetEventArgs args)
- {
- if (args.Frame != null)
- activeThread = args.Frame.Thread;
-
- try {
- if (args.Type == MD.TargetEventType.TargetStopped && ((int)args.Data) != 0) {
- DispatchEvent (delegate {
- controller.OnDebuggerOutput (false, string.Format ("Thread {0:x} received signal {1}.\n", args.Frame.Thread.ID, args.Data));
- });
- }
-
- DL.TargetEventType type;
-
- switch (args.Type) {
- case MD.TargetEventType.Exception: type = DL.TargetEventType.ExceptionThrown; break;
- case MD.TargetEventType.TargetHitBreakpoint: type = DL.TargetEventType.TargetHitBreakpoint; break;
- case MD.TargetEventType.TargetInterrupted: type = DL.TargetEventType.TargetInterrupted; break;
- case MD.TargetEventType.TargetSignaled: type = DL.TargetEventType.TargetSignaled; break;
- case MD.TargetEventType.TargetStopped: type = DL.TargetEventType.TargetStopped; break;
- case MD.TargetEventType.UnhandledException: type = DL.TargetEventType.UnhandledException; break;
- default:
- return;
- }
-
- OnCleanFrameData ();
-
- DL.TargetEventArgs targetArgs = new DL.TargetEventArgs (type);
-
- if (args.Type != MD.TargetEventType.TargetExited) {
- ML.TargetObject exception = null;
- if (args.Type == MD.TargetEventType.UnhandledException || args.Type == MD.TargetEventType.Exception)
- exception = args.Frame.ExceptionObject;
- targetArgs.Backtrace = CreateBacktrace (thread, exception);
- targetArgs.Thread = CreateThreadInfo (activeThread);
- }
-
-
- running = false;
-
- DispatchEvent (delegate {
- controller.OnTargetEvent (targetArgs);
- });
- } catch (Exception e) {
- Console.WriteLine ("*** DS.OnTargetEvent2, exception : {0}", e.ToString ());
- }
- }
-
- void OnStartRunning ()
- {
- OnCleanFrameData ();
- running = true;
- }
-
- void OnCleanFrameData ()
- {
- // Dispose all previous remote objects
- RemoteFrameObject.DisconnectAll ();
- CancelRuntimeInvokes ();
- }
-
- public void CancelRuntimeInvokes ()
- {
- mdbObjectValueAdaptor.CancelAsyncOperations ();
- }
-
-/* public void WaitRuntimeInvokes ()
- {
- invokeManager.WaitForAll ();
- }
-*/
- private void OnProcessCreatedEvent (MD.Debugger debugger, MD.Process process)
- {
- WriteDebuggerOutput (string.Format ("Process {0} created.\n", process.ID));
- }
-
- private void OnProcessExitedEvent (MD.Debugger debugger, MD.Process process)
- {
- WriteDebuggerOutput (string.Format ("Process {0} exited.\n", process.ID));
- }
-
- private void OnProcessExecdEvent (MD.Debugger debugger, MD.Process process)
- {
- WriteDebuggerOutput (string.Format ("Process {0} execd.\n", process.ID));
- }
-
- private void OnThreadCreatedEvent (MD.Debugger debugger, MD.Thread thread)
- {
- WriteDebuggerOutput (string.Format ("Thread {0} created.\n", thread.ID));
- }
-
- private void OnThreadExitedEvent (MD.Debugger debugger, MD.Thread thread)
- {
- WriteDebuggerOutput (string.Format ("Thread {0} exited.\n", thread.ID));
- }
-
- List<Catchpoint> pendingCatchpoints = new List<Catchpoint> ();
-
- private void OnModuleLoadedEvent (Module module)
- {
- SourceFile[] sfiles = module.Sources;
- string[] files = new string [sfiles.Length];
- for (int n=0; n<files.Length; n++)
- files [n] = sfiles [n].FileName;
- controller.NotifySourceFileLoaded (files);
- WriteDebuggerOutput (string.Format ("Module loaded: {0}.\n", module.Name));
-
- if (process == null)
- return;
-
- lock (pendingCatchpoints) {
- foreach (Catchpoint cp in pendingCatchpoints.ToArray ()) {
- ML.TargetType exc = module.Language.LookupType (cp.ExceptionName);
- if (exc != null) {
- session.InsertExceptionCatchPoint (process.MainThread, ThreadGroup.Global, exc);
- pendingCatchpoints.Remove (cp);
- }
- }
- }
- }
-
- private void OnModuleUnLoadedEvent (Module module)
- {
- SourceFile[] sfiles = module.Sources;
- string[] files = new string [sfiles.Length];
- for (int n=0; n<files.Length; n++)
- files [n] = sfiles [n].FileName;
- controller.NotifySourceFileUnloaded (files);
- WriteDebuggerOutput (string.Format ("Module unloaded: {0}.\n", module.Name));
- }
-
- private void OnTargetExitedEvent (MD.Debugger debugger)
- {
- exited = true;
- DispatchEvent (delegate {
- controller.OnDebuggerOutput (false, "Target exited.\n");
- DL.TargetEventArgs args = new DL.TargetEventArgs (DL.TargetEventType.TargetExited);
- controller.OnTargetEvent (args);
- });
- }
-
- void DispatchEvent (ST.WaitCallback eventCallback)
- {
- lock (eventQueue) {
- eventQueue.Add (eventCallback);
- ST.Monitor.PulseAll (eventQueue);
- }
- }
-
- void EventDispatcher ()
- {
- while (true) {
- ST.WaitCallback[] cbs;
- lock (eventQueue) {
- if (eventQueue.Count == 0)
- ST.Monitor.Wait (eventQueue);
- cbs = new ST.WaitCallback [eventQueue.Count];
- eventQueue.CopyTo (cbs, 0);
- eventQueue.Clear ();
- }
-
- foreach (ST.WaitCallback wc in cbs) {
- try {
- wc (null);
- } catch (Exception ex) {
- Console.WriteLine (ex);
- }
- }
- }
- }
-
- string[] ToArgsArray (string str)
- {
- List<string> args = new List<string> ();
- bool escaping = false;
- StringBuilder currentArg = new StringBuilder ();
- for (int n=0; n<str.Length; n++) {
- char c = str [n];
- if (c == '\\' && n + 1 < str.Length) {
- if (!escaping || (escaping && (str[n+1] == '"' || str[n+1] == '\\')))
- c = str [++n];
- } else if (c == '"') {
- escaping = !escaping;
- continue;
- } else if (c == ' ' && !escaping) {
- args.Add (currentArg.ToString ());
- currentArg = new StringBuilder ();
- continue;
- }
- currentArg.Append (c);
- }
- if (currentArg.Length > 0)
- args.Add (currentArg.ToString ());
- return args.ToArray ();
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/EvaluationContext.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/EvaluationContext.cs
deleted file mode 100644
index ce8651abde..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/EvaluationContext.cs
+++ /dev/null
@@ -1,86 +0,0 @@
-// EvaluationContext.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using Mono.Debugger;
-using Mono.Debugger.Languages;
-using Mono.Debugging.Evaluation;
-
-namespace DebuggerServer
-{
- public class MdbEvaluationContext: EvaluationContext
- {
- Thread thread;
- StackFrame frame;
-
- public Thread Thread {
- get {
- return thread;
- }
- }
-
- public StackFrame Frame {
- get {
- return frame;
- }
- }
-
- public TargetObject Exception { get; private set; }
-
- public MdbEvaluationContext (Thread thread, StackFrame frame, TargetObject exception, Mono.Debugging.Client.EvaluationOptions options): base (options)
- {
- Evaluator = Server.Instance.Evaluator;
- Adapter = Server.Instance.MdbObjectValueAdaptor;
- this.thread = thread;
- this.frame = frame;
- this.Exception = exception;
- }
-
- public TargetObject GetRealObject (object ob)
- {
- return ObjectUtil.GetRealObject (this, (TargetObject) ob);
- }
-
- public override void CopyFrom (Mono.Debugging.Evaluation.EvaluationContext gctx)
- {
- base.CopyFrom (gctx);
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- thread = ctx.thread;
- frame = ctx.frame;
- }
-
- public override void WriteDebuggerError (System.Exception ex)
- {
- Server.Instance.WriteDebuggerError (ex);
- }
-
- public override void WriteDebuggerOutput (string message, params object[] values)
- {
- Server.Instance.WriteDebuggerOutput (message, values);
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/FieldReference.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/FieldReference.cs
deleted file mode 100644
index 6a66625aea..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/FieldReference.cs
+++ /dev/null
@@ -1,113 +0,0 @@
-// FieldVariable.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using Mono.Debugger.Languages;
-using Mono.Debugger;
-using Mono.Debugging.Client;
-using Mono.Debugging.Evaluation;
-
-namespace DebuggerServer
-{
- public class FieldReference: ValueReference
- {
- TargetType type;
- TargetFieldInfo field;
- TargetStructObject thisobj;
-
- public FieldReference (EvaluationContext ctx, TargetStructObject thisobj, TargetType type, TargetFieldInfo field): base (ctx)
- {
- this.type = type;
- this.field = field;
- if (!field.IsStatic)
- this.thisobj = thisobj;
- }
-
- public override object Type {
- get {
- return field.Type;
- }
- }
-
- public override object DeclaringType {
- get {
- return type;
- }
- }
-
- public override object Value {
- get {
- MdbEvaluationContext ctx = (MdbEvaluationContext) Context;
- if (field.HasConstValue) {
- object obj = ctx.Frame.Language.CreateInstance (ctx.Thread, field.ConstValue);
- if (type is TargetEnumType)
- // Enum constants are integers, so they have to be converted to enum objects
- return ctx.Adapter.Cast (ctx, obj, type);
- else
- return obj;
- }
- TargetClass cls;
- TargetStructType tt = type as TargetStructType;
- if (tt != null)
- cls = tt.GetClass (ctx.Thread);
- else if (type.HasClassType)
- cls = type.ClassType.GetClass (ctx.Thread);
- else
- throw new NotSupportedException ("Can't get field '" + Name + "' from type '" + type.Name + "'");
-
- return cls.GetField (ctx.Thread, thisobj, field);
- }
- set {
- MdbEvaluationContext ctx = (MdbEvaluationContext) Context;
- TargetClass cls;
- TargetStructType tt = type as TargetStructType;
- if (tt != null)
- cls = tt.GetClass (ctx.Thread);
- else if (type.HasClassType)
- cls = type.ClassType.GetClass (ctx.Thread);
- else
- throw new NotSupportedException ("Can't set field '" + Name + "' from type '" + type.Name + "'");
- cls.SetField (ctx.Thread, thisobj, field, (TargetObject) value);
- }
- }
-
- public override string Name {
- get {
- return field.Name;
- }
- }
-
- public override ObjectValueFlags Flags {
- get {
- ObjectValueFlags flags = ObjectValueFlags.Field | ObjectUtil.GetAccessibility (field.Accessibility);
- if (field.HasConstValue) flags |= ObjectValueFlags.ReadOnly;
- if (field.IsStatic) flags |= ObjectValueFlags.Global;
- return flags;
- }
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/IndexerValueReference.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/IndexerValueReference.cs
deleted file mode 100644
index af4261d9cb..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/IndexerValueReference.cs
+++ /dev/null
@@ -1,139 +0,0 @@
-// IndexerValueReference.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using System.Reflection;
-using Mono.Debugger;
-using Mono.Debugger.Languages;
-using Mono.Debugging.Client;
-using System.Collections.Generic;
-using Mono.Debugging.Evaluation;
-using System.Text;
-
-namespace DebuggerServer
-{
- public class IndexerValueReference: ValueReference
- {
- TargetPropertyInfo indexer;
- TargetStructObject target;
- TargetObject[] index;
-
- public IndexerValueReference (EvaluationContext ctx, TargetStructObject target, TargetObject[] index, TargetPropertyInfo indexerProp): base (ctx)
- {
- this.indexer = indexerProp;
- this.target = target;
- this.index = index;
- }
-
- public static ValueReference CreateIndexerValueReference (MdbEvaluationContext ctx, TargetObject target, TargetObject[] index)
- {
- TargetFundamentalObject mstr = target as TargetFundamentalObject;
- if (mstr != null && mstr.TypeName == "string") {
- // Special case for strings
- string name = "[" + ctx.Evaluator.TargetObjectToExpression (ctx, index[0]) + "]";
- string val = (string) mstr.GetObject (ctx.Thread);
- object oo = ctx.Adapter.TargetObjectToObject (ctx, index[0]);
- int idx = (int) Convert.ChangeType (oo, typeof(int));
- return LiteralValueReference.CreateObjectLiteral (ctx, name, val [idx]);
- }
-
- TargetStructObject sob = target as TargetStructObject;
- if (sob == null)
- return null;
-
- TargetPropertyInfo indexerProp = null;
- foreach (MemberReference mem in ObjectUtil.GetTypeMembers (ctx, target.Type, false, true, true, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static)) {
- if (mem.Member.IsStatic)
- continue;
- if (mem.Member is TargetPropertyInfo) {
- TargetPropertyInfo prop = (TargetPropertyInfo) mem.Member;
- if (prop.CanRead && prop.Getter.ParameterTypes.Length == 1) {
- indexerProp = prop;
- break;
- }
- }
- }
- if (indexerProp != null)
- return new IndexerValueReference (ctx, sob, index, indexerProp);
- else
- return null;
- }
-
- public override object Value {
- get {
- MdbEvaluationContext ctx = (MdbEvaluationContext) Context;
- return ObjectUtil.GetRealObject (ctx, Server.Instance.RuntimeInvoke (ctx, indexer.Getter, target, index));
- }
- set {
- MdbEvaluationContext ctx = (MdbEvaluationContext) Context;
- TargetObject[] cparams = new TargetObject [index.Length + 1];
- for (int n=0; n<index.Length; n++)
- cparams[n] = TargetObjectConvert.Cast (ctx, index[n], indexer.Setter.ParameterTypes [n]);
- cparams [cparams.Length - 1] = TargetObjectConvert.Cast (ctx, (TargetObject) value, indexer.Setter.ParameterTypes [cparams.Length - 1]);
- Server.Instance.RuntimeInvoke (ctx, indexer.Setter, target, cparams);
- }
- }
-
- protected override bool CanEvaluate (EvaluationOptions options)
- {
- return options.AllowTargetInvoke;
- }
-
- public override object Type {
- get {
- if (indexer.CanRead)
- return indexer.Getter.ReturnType;
- else
- return indexer.Setter.ParameterTypes [1];
- }
- }
-
-
- public override string Name {
- get {
- StringBuilder sb = new StringBuilder ("[");
- for (int n=0; n<index.Length; n++) {
- if (n > 0)
- sb.Append (',');
- sb.Append (Server.Instance.Evaluator.TargetObjectToExpression (Context, index[n]));
- }
- sb.Append (']');
- return sb.ToString ();
- }
- }
-
-
- public override ObjectValueFlags Flags {
- get {
- if (!indexer.CanWrite)
- return ObjectValueFlags.ArrayElement | ObjectValueFlags.ReadOnly;
- else
- return ObjectValueFlags.ArrayElement;
- }
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Makefile b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Makefile
deleted file mode 100644
index 3fbbbedeb7..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Makefile
+++ /dev/null
@@ -1,135 +0,0 @@
-
-EXTRA_DIST = Makefile
-
-# Warning: This is an automatically generated file, do not edit!
-
-srcdir=.
-top_srcdir=..
-
-include $(top_srcdir)/config.make
-
-ifeq ($(CONFIG),DEBUG)
-ASSEMBLY_COMPILER_COMMAND = $(CSC)
-ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize- -debug "-define:DEBUG;TRACE"
-
-ASSEMBLY = ../build/DebuggerServer.exe
-ASSEMBLY_MDB = $(ASSEMBLY).mdb
-COMPILE_TARGET = exe
-PROJECT_REFERENCES =
-BUILD_DIR = ../build
-
-endif
-
-ifeq ($(CONFIG),RELEASE)
-ASSEMBLY_COMPILER_COMMAND = $(CSC)
-ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize+ -debug -define:DEBUG "-define:TRACE"
-
-ASSEMBLY = ../build/DebuggerServer.exe
-ASSEMBLY_MDB = $(ASSEMBLY).mdb
-COMPILE_TARGET = exe
-PROJECT_REFERENCES =
-BUILD_DIR = ../build/MonoDevelop.Debugger.Mdb/build
-
-endif
-
-AL=al2
-SATELLITE_ASSEMBLY_NAME=DebuggerServer.resources.dll
-
-PROGRAMFILES = \
- $(DEBUGGERSERVER_EXE_MDB)
-
-
-RESGEN=resgen2
-
-DEBUGGERSERVER_EXE_MDB = $(BUILD_DIR)/DebuggerServer.exe.mdb
-
-FILES = \
- ArrayAdaptor.cs \
- AssemblyInfo.cs \
- BacktraceWrapper.cs \
- Convert.cs \
- DebuggerServer.cs \
- EvaluationContext.cs \
- FieldReference.cs \
- IndexerValueReference.cs \
- MdbAdaptor.cs \
- MdbAdaptorFactory.cs \
- MdbObjectValueAdaptor.cs \
- PropertyReference.cs \
- Server.cs \
- VariableReference.cs
-
-DATA_FILES =
-
-RESOURCES = \
- MdbAdaptor-2-0.cs \
- MdbAdaptor-2-4-2.cs \
- MdbAdaptor-2-4-4.cs \
- MdbAdaptor-2-6.cs
-
-EXTRAS = \
- ChangeLog
-
-REFERENCES = \
- ../build/DebuggerClient.dll \
- Mono.Posix \
- -pkg:mono-addins \
- -pkg:mono-debugger \
- -pkg:monodevelop \
- -pkg:monodevelop-core-addins \
- System \
- System.Core \
- System.Data \
- System.Runtime.Remoting \
- System.Xml
-
-DLL_REFERENCES =
-
-CLEANFILES = $(PROGRAMFILES)
-
-#Targets
-all: $(ASSEMBLY) $(PROGRAMFILES) $(top_srcdir)/config.make
-
-include $(top_srcdir)/Makefile.include
-#include $(srcdir)/custom-hooks.make
-
-
-
-
-
-$(eval $(call emit_resgen_targets))
-$(build_xamlg_list): %.xaml.g.cs: %.xaml
- xamlg '$<'
-
-INSTALL_DIR = $(DESTDIR)$(prefix)/lib/monodevelop/AddIns/MonoDevelop.Debugger
-
-LOCAL_PKGCONFIG=PKG_CONFIG_PATH=../../../local-config:$$PKG_CONFIG_PATH
-
-$(ASSEMBLY) $(ASSEMBLY_MDB): $(build_sources) $(build_resources) $(build_datafiles) $(DLL_REFERENCES) $(PROJECT_REFERENCES) $(build_xamlg_list) $(build_satellite_assembly_list)
- make pre-all-local-hook prefix=$(prefix)
- mkdir -p $(shell dirname $(ASSEMBLY))
- make $(CONFIG)_BeforeBuild
- $(LOCAL_PKGCONFIG) $(ASSEMBLY_COMPILER_COMMAND) $(ASSEMBLY_COMPILER_FLAGS) -out:$(ASSEMBLY) -target:$(COMPILE_TARGET) $(build_sources_embed) $(build_resources_embed) $(build_references_ref)
- make $(CONFIG)_AfterBuild
- make post-all-local-hook prefix=$(prefix)
-
-install-local: $(ASSEMBLY) $(ASSEMBLY_MDB)
- make pre-install-local-hook prefix=$(prefix)
- mkdir -p '$(INSTALL_DIR)'
- $(call cp,$(ASSEMBLY),$(INSTALL_DIR))
- $(call cp,$(ASSEMBLY_MDB),$(INSTALL_DIR))
- $(call cp,$(DEBUGGERSERVER_EXE_MDB),$(INSTALL_DIR))
- make post-install-local-hook prefix=$(prefix)
-
-uninstall-local: $(ASSEMBLY) $(ASSEMBLY_MDB)
- make pre-uninstall-local-hook prefix=$(prefix)
- $(call rm,$(ASSEMBLY),$(INSTALL_DIR))
- $(call rm,$(ASSEMBLY_MDB),$(INSTALL_DIR))
- $(call rm,$(DEBUGGERSERVER_EXE_MDB),$(INSTALL_DIR))
- make post-uninstall-local-hook prefix=$(prefix)
-
-install: install-local
-uninstall: uninstall-local
-clean: clean-local
-
-include $(top_srcdir)/rules.make
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-0.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-0.cs
deleted file mode 100644
index 11180bcbb9..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-0.cs
+++ /dev/null
@@ -1,67 +0,0 @@
-//
-// MdbAdaptor_2_0.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-
-namespace DebuggerServer
-{
- public class MdbAdaptor_2_0: MdbAdaptor
- {
- public override void AbortThread (Mono.Debugger.Thread thread, Mono.Debugger.RuntimeInvokeResult result)
- {
- thread.AbortInvocation ();
- }
-
- public override bool AllowBreakEventChanges {
- get {
- return Process.MainThread.IsStopped;
- }
- }
-
- public override void ActivateEvent (Mono.Debugger.Event ev)
- {
- if (Process.MainThread.IsStopped)
- ev.Activate (Process.MainThread);
- else
- ThrowNotSupported ("Breakpoints can't be changed while the process is running.");
- }
-
- public override void RemoveEvent (Mono.Debugger.Event ev)
- {
- if (!Process.MainThread.IsStopped)
- ThrowNotSupported ("Breakpoints can't be changed while the process is running.");
- Session.DeleteEvent (ev);
- }
-
- public override void EnableEvent (Mono.Debugger.Event ev, bool enable)
- {
- if (enable)
- ev.Activate (Process.MainThread);
- else
- ev.Deactivate (Process.MainThread);
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-4-2.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-4-2.cs
deleted file mode 100644
index 867b7b123e..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-4-2.cs
+++ /dev/null
@@ -1,97 +0,0 @@
-//
-// MdbAdaptor22.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-using MDB=Mono.Debugger;
-using Mono.Debugging.Backend.Mdb;
-
-namespace DebuggerServer
-{
- public class MdbAdaptor_2_4_2: MdbAdaptor
- {
- public override void InitializeConfiguration ()
- {
- base.InitializeConfiguration ();
- Configuration.RedirectOutput = true;
- }
-
- public override void SetupXsp ()
- {
- Configuration.SetupXSP ();
- Configuration.StopOnManagedSignals = true;
- }
-
- public override void InitializeSession ()
- {
- if (StartInfo.UserCodeOnly) {
- Session.AddUserModulePath (StartInfo.WorkingDirectory);
- if (StartInfo.UserModules != null) {
- foreach (string path in StartInfo.UserModules)
- Session.AddUserModule (path);
- }
- }
- }
-
- public override void InitializeBreakpoint (MDB.SourceBreakpoint bp)
- {
- // bp.IsUserModule = true;
- }
-
- public override void AbortThread (MDB.Thread thread, MDB.RuntimeInvokeResult result)
- {
- result.Abort ();
- }
-
- public override bool AllowBreakEventChanges {
- get {
- return Process == null || Process.MainThread.IsStopped;
- }
- }
-
- public override void ActivateEvent (Mono.Debugger.Event ev)
- {
- if (Process.MainThread.IsStopped)
- ev.Activate (Process.MainThread);
- else
- ThrowNotSupported ("Breakpoints can't be changed while the process is running.");
- }
-
- public override void RemoveEvent (Mono.Debugger.Event ev)
- {
- if (!Process.MainThread.IsStopped)
- ThrowNotSupported ("Breakpoints can't be changed while the process is running.");
- Session.DeleteEvent (ev);
- }
-
- public override void EnableEvent (Mono.Debugger.Event ev, bool enable)
- {
- if (enable)
- ev.Activate (Process.MainThread);
- else
- ev.Deactivate (Process.MainThread);
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-4-4.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-4-4.cs
deleted file mode 100644
index 6b53adbf7c..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-4-4.cs
+++ /dev/null
@@ -1,59 +0,0 @@
-//
-// MdbAdaptor_2_4_4.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-
-namespace DebuggerServer
-{
- public class MdbAdaptor_2_4_4: MdbAdaptor_2_4_2
- {
- public override bool AllowBreakEventChanges {
- get {
- return true;
- }
- }
-
- public override void ActivateEvent (Mono.Debugger.Event ev)
- {
- Process.ActivatePendingBreakpoints ();
- }
-
- public override void RemoveEvent (Mono.Debugger.Event ev)
- {
- Session.RemoveEvent (ev);
- Process.ActivatePendingBreakpoints ();
- }
-
- public override void EnableEvent (Mono.Debugger.Event ev, bool enable)
- {
- if (enable)
- Session.ActivateEventAsync (ev);
- else
- Session.DeactivateEventAsync (ev);
- Process.ActivatePendingBreakpoints ();
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-6.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-6.cs
deleted file mode 100644
index 6a67710527..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor-2-6.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
-
-WARNING WARNING WARNING
-
-This class is compiled by the debugger add-in at runtime. It is done in
-this way because features implemented here depend on the installed MDB version.
-
-*/
-
-using System;
-using Mono.Debugger;
-using MDB=Mono.Debugger;
-using Mono.Debugging.Backend.Mdb;
-
-namespace DebuggerServer
-{
- public class MdbAdaptor_2_6: MdbAdaptor_2_4_4
- {
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor.cs
deleted file mode 100644
index b63b196f57..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptor.cs
+++ /dev/null
@@ -1,89 +0,0 @@
-//
-// MdbAdaptor.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-using MDB=Mono.Debugger;
-using Mono.Debugging.Backend.Mdb;
-
-namespace DebuggerServer
-{
- public abstract class MdbAdaptor
- {
- public MdbAdaptor ()
- {
- MdbVersion = "2.0";
- }
-
- public string MdbVersion { get; internal set; }
-
- public MDB.DebuggerSession Session;
- public MDB.DebuggerConfiguration Configuration;
- public MDB.Process Process;
- public MonoDebuggerStartInfo StartInfo;
-
- public virtual void SetupXsp ()
- {
- ThrowNotSupported ("ASP.NET debugging not supported");
- }
-
- public virtual void InitializeBreakpoint (MDB.SourceBreakpoint bp)
- {
- }
-
- public virtual void InitializeConfiguration ()
- {
- }
-
- public virtual void InitializeSession ()
- {
- }
-
- public abstract void AbortThread (MDB.Thread thread, MDB.RuntimeInvokeResult result);
-
- public virtual void EnableEvent (MDB.Event ev, bool enable)
- {
- }
-
- public virtual void ActivateEvent (MDB.Event ev)
- {
- }
-
- public virtual void RemoveEvent (MDB.Event ev)
- {
- }
-
- public void ThrowNotSupported (string feature)
- {
- throw new Mono.Debugging.Client.DebuggerException (feature + ". You need to install a more recent Mono Debugger version.");
- }
-
- public virtual bool AllowBreakEventChanges {
- get {
- return true;
- }
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptorFactory.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptorFactory.cs
deleted file mode 100644
index e8a4d96fcf..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbAdaptorFactory.cs
+++ /dev/null
@@ -1,122 +0,0 @@
-//
-// MdbAdaptorFactory.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-using System.Reflection;
-using System.Diagnostics;
-using System.IO;
-
-namespace DebuggerServer
-{
- public static class MdbAdaptorFactory
- {
- // Bump this version number if any change is in MdbAdaptor or subclases
- const int ApiVersion = 3;
-
- // Versions for which there is an adaptor. If an adaptor is a subclass of another adaptor,
- // the base adaptor version must be specified (recursively) after the adaptor version
- // using | as separator.
- static readonly string[] supportedVersions = new string[] {"2-4-4|2-4-2", "2-4-2", "2-0"};
-
- public static MdbAdaptor CreateAdaptor (string mdbVersion)
- {
- ProcessStartInfo pinfo = new ProcessStartInfo ();
- pinfo.FileName = "gmcs";
-
- if (mdbVersion != null) {
- MdbAdaptor mdb = TryCreateAdaptor (pinfo, mdbVersion);
- if (mdb == null)
- throw new InvalidOperationException ("Unsupported MDB version");
- return mdb;
- }
-
- foreach (string v in supportedVersions) {
- MdbAdaptor mdb = TryCreateAdaptor (pinfo, v);
- if (mdb != null)
- return mdb;
- }
- throw new InvalidOperationException ("Unsupported MDB version");
- }
-
- static MdbAdaptor TryCreateAdaptor (ProcessStartInfo pinfo, string versions)
- {
- string[] versionsArray = versions.Split ('|');
- string version = versionsArray [0];
-
- string tmpPath = Path.GetTempPath ();
- tmpPath = Path.Combine (tmpPath, "monodevelop-debugger-mdb");
- if (!Directory.Exists (tmpPath))
- Directory.CreateDirectory (tmpPath);
-
- string outFile = Path.Combine (tmpPath, "adaptor-" + ApiVersion + "--" + version + ".dll");
- DateTime thisTime = File.GetLastWriteTime (typeof(MdbAdaptorFactory).Assembly.Location);
-
- if (!File.Exists (outFile) || File.GetLastWriteTime (outFile) < thisTime) {
- string args = "/t:library ";
- args += "\"/out:" + outFile + "\" ";
- args += "\"/r:" + typeof(MdbAdaptorFactory).Assembly.Location + "\" ";
- args += "\"/r:" + typeof(Mono.Debugger.Debugger).Assembly.Location + "\" ";
- args += "\"/r:" + typeof(Mono.Debugging.Client.DebuggerSession).Assembly.Location + "\" ";
- args += "\"/r:" + typeof(Mono.Debugging.Backend.Mdb.IDebuggerServer).Assembly.Location + "\" ";
-
- // Write the source code for all required classes
- foreach (string ver in versionsArray) {
- string resName = "MdbAdaptor-" + ver + ".cs";
- Stream s = typeof(MdbAdaptorFactory).Assembly.GetManifestResourceStream (resName);
- if (s == null)
- throw new InvalidOperationException ("Resource not found: " + resName);
- StreamReader sr = new StreamReader (s);
- string txt = sr.ReadToEnd ();
- sr.Close ();
- s.Close ();
-
- string csfile = Path.Combine (tmpPath, "adaptor-" + ver + ".cs");
- File.WriteAllText (csfile, txt);
- args += "\"" + csfile + "\" ";
- }
-
- pinfo.Arguments = args;
- pinfo.RedirectStandardError = true;
- pinfo.RedirectStandardOutput = true;
- pinfo.UseShellExecute = false;
- Process proc = Process.Start (pinfo);
- proc.WaitForExit ();
- if (proc.ExitCode != 0)
- return null;
- Console.WriteLine ("Generated: " + outFile);
- }
-
- Assembly asm = Assembly.LoadFrom (outFile);
- Type at = asm.GetType ("DebuggerServer.MdbAdaptor_" + version.Replace ('-','_'));
- if (at != null) {
- MdbAdaptor a = (MdbAdaptor) Activator.CreateInstance (at);
- a.MdbVersion = version;
- return a;
- }
- return null;
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbObjectValueAdaptor.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbObjectValueAdaptor.cs
deleted file mode 100644
index c152dcbc02..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/MdbObjectValueAdaptor.cs
+++ /dev/null
@@ -1,1122 +0,0 @@
-//
-// MdbObjectValueAdaptor.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-using System.Linq;
-using System.Text;
-using System.Collections;
-using ST = System.Threading;
-using System.Reflection;
-using System.Collections.Generic;
-using System.Diagnostics;
-using Mono.Debugging.Evaluation;
-using Mono.Debugger.Languages;
-using Mono.Debugger;
-using Mono.Debugging.Client;
-using Mono.Debugging.Backend;
-
-namespace DebuggerServer
-{
- public class MdbObjectValueAdaptor : ObjectValueAdaptor
- {
- public override string CallToString (EvaluationContext gctx, object obj)
- {
- if (!gctx.Options.AllowTargetInvoke)
- return GetValueTypeName (gctx, obj);
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- obj = ctx.GetRealObject (obj);
- if (obj is TargetFundamentalObject) {
- object fob = ((TargetFundamentalObject)obj).GetObject (ctx.Thread);
- return fob != null ? fob.ToString () : null;
- }
-
- TargetStructObject starget = obj as TargetStructObject;
- if (starget != null) {
- // Optimization: if ToString is not overriden, there is no need to call it since the result is the name of the type
- MemberReference mem = OverloadResolve (ctx, "ToString", starget.Type, new TargetType [0], true, false, false);
- if (mem == null || mem.DeclaringType.Name == "System.Object")
- return GetDisplayTypeName (ctx, starget.Type);
- }
-
- TargetObject retval = CallMethod (ctx, "ToString", (TargetStructObject) obj);
- object s = ((TargetFundamentalObject) retval).GetObject (ctx.Thread);
- return s != null ? s.ToString () : "";
- }
-
- public override object TryCast (EvaluationContext gctx, object val, object targetType)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext)gctx;
- TargetObject tval = ctx.GetRealObject (val);
- if (targetType is TargetObjectType)
- return val;
- else if (targetType is TargetClassType)
- return TargetObjectConvert.TryCast (ctx, tval, (TargetClassType)targetType);
- else if (targetType is TargetEnumType) {
- TargetType tt = ctx.Frame.Language.LookupType ("System.Enum");
- TargetObject typeObj = (TargetObject) GetTypeOf (ctx, ((TargetEnumType)targetType).Name);
- return CallStaticMethod (ctx, "ToObject", tt, typeObj, tval);
- }
- else if (targetType is TargetFundamentalType) {
- if (tval is TargetEnumObject) {
- TargetEnumObject eob = (TargetEnumObject) tval;
- return TryCast (ctx, eob.GetValue (ctx.Thread), targetType);
- }
- TargetFundamentalType ftype = (TargetFundamentalType) targetType;
- Type tt = Type.GetType (ObjectUtil.FixTypeName (ftype.Name));
- if (tval is TargetFundamentalObject) {
- TargetFundamentalObject fob = (TargetFundamentalObject) tval;
- object obj = fob.GetObject (ctx.Thread);
- if (tt.IsInstanceOfType (obj))
- return val;
- if (tt != typeof(string) && !(obj is string)) {
- try {
- object res = System.Convert.ChangeType (obj, tt);
- return CreateValue (ctx, res);
- } catch {
- }
- }
- }
- }
- return null;
- }
-
-
- public override object TargetObjectToObject (EvaluationContext gctx, object vobj)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- TargetObject obj = ctx.GetRealObject (vobj);
-
- switch (obj.Kind) {
- case TargetObjectKind.Array:
- case TargetObjectKind.GenericInstance:
- case TargetObjectKind.Struct:
- case TargetObjectKind.Class:
- case TargetObjectKind.Enum:
- return base.TargetObjectToObject (ctx, vobj);
-
- case TargetObjectKind.Fundamental:
- TargetFundamentalObject fob = obj as TargetFundamentalObject;
- if (fob == null)
- return "null";
- return fob.GetObject (ctx.Thread);
-
- case TargetObjectKind.Pointer:
- if (IntPtr.Size < 8)
- return new IntPtr ((int)obj.GetAddress (ctx.Thread).Address);
- else
- return new IntPtr (obj.GetAddress (ctx.Thread).Address);
-
- case TargetObjectKind.Object:
- TargetObjectObject oob = obj as TargetObjectObject;
- if (oob == null)
- return null;
- else
- return new EvaluationResult ("{" + oob.TypeName + "}");
-
- case TargetObjectKind.Nullable:
- TargetNullableObject nob = (TargetNullableObject) obj;
- if (nob.HasValue (ctx.Thread))
- return TargetObjectToObject (ctx, nob.GetValue (ctx.Thread));
- else
- return null;
- }
- return new EvaluationResult ("?");
- }
-
-
- public override bool HasMethod (EvaluationContext gctx, object targetType, string methodName, object[] argTypes, BindingFlags flags)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
-
- if (argTypes == null) {
- foreach (MemberReference mm in ObjectUtil.GetTypeMembers (ctx, (TargetType) targetType, false, false, true, flags | BindingFlags.Public | BindingFlags.NonPublic)) {
- TargetMethodInfo met = (TargetMethodInfo) mm.Member;
- if (met.Name == methodName)
- return true;
- }
- return false;
- }
-
- TargetStructType stype = targetType as TargetStructType;
- if (stype == null)
- return false;
-
- TargetType[] types = new TargetType [argTypes.Length];
- Array.Copy (argTypes, types, argTypes.Length);
-
- MemberReference mem;
- mem = OverloadResolve (ctx, methodName, stype, types, (flags & BindingFlags.Instance) != 0, (flags & BindingFlags.Static) != 0, false);
- return mem != null;
- }
-
- public override object RuntimeInvoke (EvaluationContext gctx, object targetType, object target, string methodName, object[] argTypes, object[] argValues)
- {
- gctx.AssertTargetInvokeAllowed ();
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- TargetObject[] lst = new TargetObject [argValues.Length];
- Array.Copy (argValues, lst, argValues.Length);
- if (target != null)
- return CallMethod (ctx, methodName, (TargetObject) target, lst);
- else
- return CallStaticMethod (ctx, methodName, (TargetType) targetType, lst);
- }
-
- protected override TypeDisplayData OnGetTypeDisplayData (EvaluationContext gctx, object type)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- TargetType tt = (TargetType) type;
- if (tt.HasClassType) {
- TypeDisplayData data = new TypeDisplayData ();
- if (tt.ClassType.DebuggerTypeProxyAttribute != null) {
- data.ProxyType = tt.ClassType.DebuggerTypeProxyAttribute.ProxyTypeName;
- }
- if (tt.ClassType.DebuggerDisplayAttribute != null) {
- data.NameDisplayString = tt.ClassType.DebuggerDisplayAttribute.Name;
- data.TypeDisplayString = tt.ClassType.DebuggerDisplayAttribute.Type;
- data.ValueDisplayString = tt.ClassType.DebuggerDisplayAttribute.Value;
- }
- foreach (MemberReference mem in ObjectUtil.GetTypeMembers (ctx, tt, true, true, true, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static)) {
- if (mem.Member.DebuggerBrowsableState.HasValue) {
- if (data.MemberData == null)
- data.MemberData = new Dictionary<string, DebuggerBrowsableState> ();
- data.MemberData [mem.Member.Name] = mem.Member.DebuggerBrowsableState.Value;
- }
- }
- return data;
- }
- return base.OnGetTypeDisplayData (ctx, type);
- }
-
- public override bool IsPrimitive (EvaluationContext gctx, object val)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- return ctx.GetRealObject (val) is TargetFundamentalObject;
- }
-
- public override bool IsEnum (EvaluationContext gctx, object val)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- return ctx.GetRealObject (val) is TargetEnumObject;
- }
-
- public override bool IsNull (EvaluationContext gctx, object val)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- TargetObject ob = ctx.GetRealObject (val);
- if (ob.Kind == TargetObjectKind.Null)
- return true;
- return (ob.HasAddress && ob.GetAddress (ctx.Thread).IsNull);
- }
-
-
- public override bool IsClass (object type)
- {
- return type is TargetClassType;
- }
-
-
- public override bool IsClassInstance (EvaluationContext gctx, object val)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- return ctx.GetRealObject (val) is TargetStructObject;
- }
-
- public override bool IsArray (EvaluationContext gctx, object val)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- return ctx.GetRealObject (val) is TargetArrayObject;
- }
-
-
- public override object GetValueType (EvaluationContext gctx, object val)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- return ctx.GetRealObject (val).Type;
- }
-
-
- public override string GetTypeName (EvaluationContext ctx, object val)
- {
- return ObjectUtil.FixTypeName (((TargetType)val).Name);
- }
-
-
- public override object GetType (EvaluationContext ctx, string name, object[] typeArgs)
- {
- MdbEvaluationContext mctx = (MdbEvaluationContext) ctx;
- name = name.Replace ('+','/');
- return mctx.Frame.Language.LookupType (name);
- }
-
- public override object GetBaseType (EvaluationContext ctx, object t)
- {
- MdbEvaluationContext mctx = (MdbEvaluationContext) ctx;
- TargetStructType type = t as TargetStructType;
- if (type != null && type.HasParent)
- return type.GetParentType (mctx.Thread);
- else
- return null;
- }
-
- public override object[] GetTypeArgs (EvaluationContext ctx, object type)
- {
- return new object [0];
- }
-
-
- protected override ValueReference OnGetThisReference (EvaluationContext gctx)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- if (ctx.Frame.Method != null && ctx.Frame.Method.HasThis) {
- ObjectValueFlags flags = ObjectValueFlags.Field | ObjectValueFlags.ReadOnly;
- TargetVariable var = ctx.Frame.Method.GetThis (ctx.Thread);
- VariableReference vref = new VariableReference (ctx, var, flags);
- return vref;
- }
- else
- return null;
- }
-
- public override ValueReference GetCurrentException (EvaluationContext gctx)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- if (ctx.Exception != null)
- return LiteralValueReference.CreateTargetObjectLiteral (ctx, ctx.Options.CurrentExceptionTag, ctx.Exception);
- else
- return null;
- }
-
-
- protected override IEnumerable<ValueReference> OnGetParameters (EvaluationContext gctx)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- if (ctx.Frame.Method != null) {
- foreach (TargetVariable var in ctx.Frame.Method.GetParameters (ctx.Thread))
- yield return new VariableReference (ctx, var, ObjectValueFlags.Parameter);
- }
- }
-
- public override IEnumerable<object> GetNestedTypes (EvaluationContext gctx, object type)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- string[] tname = GetTypeName (ctx, type).Split ('+');
- object td = FindType (ctx, tname[0]);
- if (td != null) {
- td = FindNestedType (td, tname, 1);
- IEnumerable nestedTypes = (IEnumerable) GetProp (td, "NestedTypes");
- foreach (object nt in nestedTypes) {
- string name = (string) GetProp (nt, "FullName");
- object tt = GetType (ctx, name);
- if (tt != null)
- yield return tt;
- }
- }
- }
-
- object FindNestedType (object td, string[] names, int index)
- {
- if (index == names.Length)
- return td;
- IEnumerable nestedTypes = (IEnumerable) GetProp (td, "NestedTypes");
- foreach (object nt in nestedTypes) {
- string name = (string) GetProp (nt, "Name");
- if (name == names [index])
- return FindNestedType (nt, names, index + 1);
- }
- return null;
- }
-
- object FindType (MdbEvaluationContext ctx, string typeName)
- {
- foreach (object typeDefinition in GetAllTypeDefinitions (ctx, true)) {
- string fullName = (string) GetProp (typeDefinition, "FullName");
- if (fullName == typeName)
- return typeDefinition;
- }
- return null;
- }
-
- public override void GetNamespaceContents (EvaluationContext gctx, string namspace, out string[] childNamespaces, out string[] childTypes)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
-
- // Child types
-
- List<string> types = new List<string> ();
- HashSet<string> namespaces = new HashSet<string> ();
- string namspaceDotted = namspace + ".";
- foreach (object typeDefinition in GetAllTypeDefinitions (ctx, false)) {
- string typeNamespace = (string) GetProp (typeDefinition, "Namespace");
- if (typeNamespace == namspace)
- types.Add ((string) GetProp (typeDefinition, "FullName"));
- else if (typeNamespace.StartsWith (namspaceDotted)) {
- int i = typeNamespace.IndexOf ('.', namspaceDotted.Length);
- if (i != -1)
- typeNamespace = typeNamespace.Substring (0, i);
- namespaces.Add (typeNamespace);
- }
- }
- childTypes = types.ToArray ();
- childNamespaces = new string [namespaces.Count];
- namespaces.CopyTo (childNamespaces);
- }
-
- public IEnumerable<object> GetAllTypeDefinitions (MdbEvaluationContext ctx, bool includePrivate)
- {
- HashSet<object> visited = new HashSet<object> ();
- object methodHandle = ctx.Frame.Method.MethodHandle;
-
- if (methodHandle != null && methodHandle.GetType ().FullName == "Mono.Cecil.MethodDefinition") {
- object declaringType = GetProp (methodHandle, "DeclaringType");
- object module = GetProp (declaringType, "Module");
- object assembly = GetProp (module, "Assembly");
- object resolver = GetProp (module, "AssemblyResolver");
-
- foreach (object typeDefinition in GetAllTypeDefinitions (includePrivate, resolver, visited, assembly))
- yield return typeDefinition;
- }
- }
-
- public IEnumerable<object> GetAllTypeDefinitions (bool includePrivate, object resolver, HashSet<object> visited, object asm)
- {
- if (!visited.Add (asm))
- yield break;
-
- object mainModule = GetProp (asm, "MainModule");
- foreach (object typeDefinition in (IEnumerable) GetProp (mainModule, "Types")) {
- bool isPublic = includePrivate || (bool) GetProp (typeDefinition, "IsPublic");
- bool isInterface = (bool) GetProp (typeDefinition, "IsInterface");
- bool isEnum = (bool) GetProp (typeDefinition, "IsEnum");
- if (isPublic && !isInterface && !isEnum)
- yield return typeDefinition;
- }
-
- Type assemblyNameReferenceType = resolver.GetType ().Assembly.GetType ("Mono.Cecil.AssemblyNameReference");
- MethodInfo resolveMet = resolver.GetType ().GetMethod ("Resolve", new Type[] { assemblyNameReferenceType });
- foreach (object an in (IEnumerable) GetProp (mainModule, "AssemblyReferences")) {
- object refAsm = resolveMet.Invoke (resolver, new object[] {an});
- if (refAsm != null) {
- foreach (object td in GetAllTypeDefinitions (includePrivate, resolver, visited, refAsm))
- yield return td;
- }
- }
- }
-
- static object GetProp (object obj, string name)
- {
- return obj.GetType ().GetProperty (name).GetValue (obj, null);
- }
-
- protected override IEnumerable<ValueReference> GetMembers (EvaluationContext gctx, object tt, object ob, BindingFlags bindingFlags)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext)gctx;
- TargetStructObject co = ctx.GetRealObject (ob) as TargetStructObject; // It can be a TargetObjectObject
- TargetType t = (TargetType)tt;
- if (co == null) {
- bindingFlags |= BindingFlags.Static;
- bindingFlags &= ~BindingFlags.Instance;
- }
- foreach (MemberReference mem in ObjectUtil.GetTypeMembers (ctx, t, true, true, false, bindingFlags)) {
- if (mem.Member is TargetFieldInfo) {
- TargetFieldInfo field = (TargetFieldInfo)mem.Member;
- yield return new FieldReference (ctx, co, mem.DeclaringType, field);
- }
- if (mem.Member is TargetPropertyInfo) {
- TargetPropertyInfo prop = (TargetPropertyInfo) mem.Member;
- if (prop.CanRead && (prop.Getter.ParameterTypes == null || prop.Getter.ParameterTypes.Length == 0))
- yield return new PropertyReference (ctx, prop, co);
- }
- }
- }
-
-
- protected override IEnumerable<ValueReference> OnGetLocalVariables (EvaluationContext gctx)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- foreach (TargetVariable var in ctx.Frame.Method.GetLocalVariables (ctx.Thread)) {
- yield return new VariableReference (ctx, var, ObjectValueFlags.Variable);
- }
- }
-
-
- public override ValueReference GetIndexerReference (EvaluationContext gctx, object target, object[] indices)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- TargetObject[] indexArray = new TargetObject [indices.Length];
- Array.Copy (indices, indexArray, indices.Length);
- return IndexerValueReference.CreateIndexerValueReference (ctx, (TargetObject) target, indexArray);
- }
-
-
- public override string[] GetImportedNamespaces (EvaluationContext gctx)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- return ctx.Frame.Method.GetNamespaces ();
- }
-
-
- public override object GetEnclosingType (EvaluationContext gctx)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- return ctx.Frame.Method.GetDeclaringType (ctx.Frame.Thread);
- }
-
-
- public override object GetBaseValue (EvaluationContext gctx, object val)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- TargetStructObject sob = (TargetStructObject) ctx.GetRealObject (val);
- return sob.GetParentObject (ctx.Thread);
- }
-
-
- public override object CreateValue (EvaluationContext gctx, object value)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- return ctx.Frame.Language.CreateInstance (ctx.Thread, value);
- }
-
-
- public override object CreateValue (EvaluationContext gctx, object type, params object[] args)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- TargetType tt = (TargetType) type;
- TargetObject[] lst = new TargetObject [args.Length];
- Array.Copy (args, lst, args.Length);
- return CallStaticMethod (ctx, ".ctor", tt, lst);
- }
-
-
- public override object CreateTypeObject (EvaluationContext gctx, object type)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- return GetTypeOf (ctx, ((TargetType)type).Name);
- }
-
- public static TargetStructObject GetTypeOf (MdbEvaluationContext ctx, string typeName)
- {
- ctx.AssertTargetInvokeAllowed ();
- TargetType tt = ctx.Frame.Language.LookupType ("System.Type");
- if (tt == null)
- return null;
-
- TargetObject tn = ctx.Frame.Language.CreateInstance (ctx.Thread, ObjectUtil.FixTypeName (typeName));
- TargetObject res = CallStaticMethod (ctx, "GetType", tt, tn);
- return (TargetStructObject) ctx.GetRealObject (res);
- }
-
- protected override ObjectValue CreateObjectValueImpl (EvaluationContext gctx, IObjectValueSource source, ObjectPath path, object vobj, ObjectValueFlags flags)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- TargetObject obj = ctx.GetRealObject (vobj);
-
- if (obj == null)
- return ObjectValue.CreateObject (null, path, "", "", flags | ObjectValueFlags.ReadOnly, null);
-
- if (obj.HasAddress && obj.GetAddress (ctx.Thread).IsNull)
- return ObjectValue.CreateObject (null, path, obj.TypeName, ctx.Evaluator.ToExpression (ctx, null), flags, null);
-
- switch (obj.Kind) {
-
- case TargetObjectKind.Struct:
- case TargetObjectKind.GenericInstance:
- case TargetObjectKind.Class:
- case TargetObjectKind.Array:
- case TargetObjectKind.Fundamental:
- case TargetObjectKind.Enum:
- return base.CreateObjectValueImpl (gctx, source, path, vobj, flags);
-
- case TargetObjectKind.Object:
- TargetObjectObject oob = obj as TargetObjectObject;
- if (oob == null)
- return ObjectValue.CreateUnknown (path.LastName);
- else
- return ObjectValue.CreateObject (source, path, obj.TypeName, Server.Instance.Evaluator.TargetObjectToExpression (ctx, obj), flags, null);
-
- case TargetObjectKind.Pointer:
- return ObjectValue.CreateObject (source, path, obj.TypeName, Server.Instance.Evaluator.TargetObjectToExpression (ctx, obj), flags, null);
-
- case TargetObjectKind.Nullable:
- TargetNullableObject tn = (TargetNullableObject) obj;
- if (tn.HasValue (ctx.Thread)) {
- ObjectValue val = CreateObjectValue (ctx, source, path, tn.GetValue (ctx.Thread), flags);
- val.TypeName = obj.TypeName;
- return val;
- }
- else {
- flags |= ObjectValueFlags.Primitive;
- return ObjectValue.CreateObject (source, path, obj.TypeName, ctx.Evaluator.ToExpression (ctx, null), flags, new ObjectValue [0]);
- }
- default:
- return ObjectValue.CreateFatalError (path.LastName, "Unknown value type: " + obj.Kind, flags);
- }
- }
-
- public override object CreateNullValue (EvaluationContext gctx, object type)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- return ctx.Frame.Language.CreateNullObject (ctx.Thread, (TargetType)type);
- }
-
- public override ICollectionAdaptor CreateArrayAdaptor (EvaluationContext gctx, object arr)
- {
- MdbEvaluationContext ctx = (MdbEvaluationContext) gctx;
- TargetArrayObject aob = arr as TargetArrayObject;
- if (aob != null)
- return new ArrayAdaptor (ctx, aob);
- else
- return null;
- }
-
- public static TargetObject CallMethod (MdbEvaluationContext ctx, string name,
- TargetObject target,
- params TargetObject[] args)
- {
-#if REFLECTION_INVOKE
- if (target is TargetGenericInstanceObject || !(target is TargetStructObject)) {
- // Calling methods on generic objects is suprisingly not supported
- // by the debugger. As a workaround we do the call using reflection.
-
- if (name != "ToString" || args.Length != 0) {
- GetTypeOf (ctx, "System.Convert");
- TargetType cc = ctx.Frame.Language.LookupType ("System.Convert");
- SR.BindingFlags sf = SR.BindingFlags.InvokeMethod | SR.BindingFlags.Static | SR.BindingFlags.FlattenHierarchy | SR.BindingFlags.Public | SR.BindingFlags.NonPublic;
- CallMethodWithReflection (ctx, sf, "ToString", cc, null, target);
- }
-
- SR.BindingFlags f = SR.BindingFlags.InvokeMethod | SR.BindingFlags.Instance | SR.BindingFlags.Public | SR.BindingFlags.NonPublic;
- return CallMethodWithReflection (ctx, f, name, target.Type, target, args);
- }
-#endif
- ctx.AssertTargetInvokeAllowed ();
-
- TargetType[] types = new TargetType [args.Length];
- for (int n=0; n<types.Length; n++)
- types [n] = args [n].Type;
-
- TargetStructObject starget = (TargetStructObject) target;
- MemberReference mem = OverloadResolve (ctx, name, starget.Type, types, true, false, true);
- TargetFunctionType function = (TargetFunctionType) ((TargetMethodInfo) mem.Member).Type;
-
- while (starget.Type != mem.DeclaringType) {
- TargetStructObject par = starget.GetParentObject (ctx.Thread);
- if (par != null)
- starget = par;
- else
- break;
- }
-
- TargetMethodSignature sig = function.GetSignature (ctx.Thread);
-
- TargetObject[] objs = new TargetObject [args.Length];
- for (int i = 0; i < args.Length; i++) {
- objs [i] = TargetObjectConvert.ImplicitConversionRequired (
- ctx, args [i], sig.ParameterTypes [i]);
- }
-
- return Server.Instance.RuntimeInvoke (ctx, function, starget, objs);
- }
-
- public static TargetObject CallStaticMethod (MdbEvaluationContext ctx, string name,
- string typeName,
- params TargetObject[] args)
- {
- return CallStaticMethod (ctx, name, ctx.Frame.Language.LookupType (typeName), args);
- }
-
- public static TargetObject CallStaticMethod (MdbEvaluationContext ctx, string name,
- TargetType type,
- params TargetObject[] args)
- {
-#if REFLECTION_INVOKE
- if (type is TargetGenericInstanceType || !(type is TargetStructType)) {
- // Calling methods on generic objects is suprisingly not supported
- // by the debugger. As a workaround we do the call using reflection.
-
- SR.BindingFlags f = SR.BindingFlags.InvokeMethod | SR.BindingFlags.Static | SR.BindingFlags.Public | SR.BindingFlags.NonPublic;
- return CallMethodWithReflection (ctx, f, name, type, null, args);
- }
-#endif
- ctx.AssertTargetInvokeAllowed ();
-
- TargetType[] types = new TargetType [args.Length];
- for (int n=0; n<types.Length; n++)
- types [n] = args [n].Type;
-
- MemberReference mem = OverloadResolve (ctx, name, type, types, false, true, true);
- TargetFunctionType function = (TargetFunctionType) ((TargetMethodInfo) mem.Member).Type;
-
- TargetMethodSignature sig = function.GetSignature (ctx.Thread);
-
- TargetObject[] objs = new TargetObject [args.Length];
- for (int i = 0; i < args.Length; i++) {
- objs [i] = TargetObjectConvert.ImplicitConversionRequired (ctx, args [i], sig.ParameterTypes [i]);
- }
-
- return Server.Instance.RuntimeInvoke (ctx, function, null, objs);
- }
-
- public static MemberReference OverloadResolve (MdbEvaluationContext ctx, string methodName, TargetType type, TargetType[] argtypes, bool allowInstance, bool allowStatic, bool throwIfNotFound)
- {
- List<MemberReference> candidates = new List<MemberReference> ();
-
- if (methodName == ".ctor") {
- TargetClassType ct = type as TargetClassType;
- if (ct == null && type.HasClassType)
- ct = type.ClassType;
-
- foreach (TargetMethodInfo met in ct.Constructors) {
- if (met.Type.ParameterTypes.Length == argtypes.Length)
- candidates.Add (new MemberReference (met, type));
- }
- }
- else {
- foreach (MemberReference mem in ObjectUtil.GetTypeMembers (ctx, type, false, false, true, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static)) {
- TargetMethodInfo met = (TargetMethodInfo) mem.Member;
- if (met.Name == methodName && met.Type.ParameterTypes.Length == argtypes.Length && (met.IsStatic && allowStatic || !met.IsStatic && allowInstance))
- candidates.Add (mem);
- }
- }
-
- if (candidates.Count == 1) {
- TargetFunctionType func = (TargetFunctionType) ((TargetMethodInfo) candidates [0].Member).Type;
- string error;
- int matchCount;
- if (IsApplicable (ctx, func, argtypes, out error, out matchCount))
- return candidates [0];
-
- if (throwIfNotFound)
- throw new EvaluatorException ("Invalid arguments for method `{0}': {1}", methodName, error);
- else
- return null;
- }
-
- if (candidates.Count == 0) {
- if (throwIfNotFound)
- throw new EvaluatorException ("Method `{0}' not found in type `{1}'.", methodName, type.Name);
- else
- return null;
- }
-
- return OverloadResolve (ctx, methodName, argtypes, candidates, throwIfNotFound);
- }
-
- static bool IsApplicable (MdbEvaluationContext ctx, TargetFunctionType method, TargetType[] types, out string error, out int matchCount)
- {
- TargetMethodSignature sig = method.GetSignature (ctx.Thread);
- matchCount = 0;
-
- for (int i = 0; i < types.Length; i++) {
- TargetType param_type = sig.ParameterTypes [i];
-
- if (param_type == types [i]) {
- matchCount++;
- continue;
- }
-
- if (TargetObjectConvert.ImplicitConversionExists (ctx, types [i], param_type))
- continue;
-
- error = String.Format (
- "Argument {0}: Cannot implicitly convert `{1}' to `{2}'",
- i, types [i].Name, param_type.Name);
- return false;
- }
-
- error = null;
- return true;
- }
-
- static MemberReference OverloadResolve (MdbEvaluationContext ctx, string methodName, TargetType[] argtypes, List<MemberReference> candidates, bool throwIfNotFound)
- {
- // Ok, no we need to find an exact match.
- MemberReference match = null;
- int bestCount = -1;
- bool repeatedBestCount = false;
-
- foreach (MemberReference method in candidates) {
- string error;
- int matchCount;
- TargetFunctionType func;
- if (method.Member is TargetMethodInfo)
- func = (TargetFunctionType) ((TargetMethodInfo) method.Member).Type;
- else
- func = (TargetFunctionType) ((TargetPropertyInfo) method.Member).Getter;
-
- if (!IsApplicable (ctx, func, argtypes, out error, out matchCount))
- continue;
-
- if (matchCount == bestCount) {
- repeatedBestCount = true;
- } else if (matchCount > bestCount) {
- match = method;
- bestCount = matchCount;
- repeatedBestCount = false;
- }
- }
-
- if (match == null) {
- if (!throwIfNotFound)
- return null;
- if (methodName != null)
- throw new EvaluatorException ("Invalid arguments for method `{0}'.", methodName);
- else
- throw new EvaluatorException ("Invalid arguments for indexer.");
- }
-
- if (repeatedBestCount) {
- // If there is an ambiguous match, just pick the first match. If the user was expecting
- // something else, he can provide more specific arguments
-
-/* if (!throwIfNotFound)
- return null;
- if (methodName != null)
- throw new EvaluatorException ("Ambiguous method `{0}'; need to use full name", methodName);
- else
- throw new EvaluatorException ("Ambiguous arguments for indexer.", methodName);
-*/ }
-
- return match;
- }
- }
-
- class ObjectUtil
- {
- public static TargetObject GetRealObject (MdbEvaluationContext ctx, TargetObject obj)
- {
- if (obj == null)
- return null;
-
- try {
- switch (obj.Kind) {
- case TargetObjectKind.Array:
- case TargetObjectKind.Fundamental:
- return obj;
-
- case TargetObjectKind.Struct:
- case TargetObjectKind.GenericInstance:
- case TargetObjectKind.Class:
- TargetStructObject co = obj as TargetStructObject;
- if (co == null)
- return null;
- TargetObject res = co.GetCurrentObject (ctx.Thread);
- return res ?? obj;
-
- case TargetObjectKind.Object:
- TargetObjectObject oob = obj as TargetObjectObject;
- if (oob == null)
- return null;
- if (oob.Type.CanDereference)
- return oob.GetDereferencedObject (ctx.Thread);
- else
- return oob;
- }
- }
- catch {
- // Ignore
- }
- return obj;
- }
-
- public static IEnumerable<MemberReference> GetTypeMembers (MdbEvaluationContext ctx, TargetType t, bool includeFields, bool includeProps, bool includeMethods, BindingFlags flags)
- {
- // Don't use yield in this method because the whole list of members
- // must be retrieved before we can do anything with them.
- List<MemberReference> members = new List<MemberReference> ();
-
- Dictionary<string,string> foundMethods = new Dictionary<string,string> ();
-
- while (t != null) {
-
- TargetFieldInfo[] fields = null;
- TargetPropertyInfo[] properties = null;
- TargetMethodInfo[] methods = null;
-
- TargetClass cls = t.HasClassType ? t.ClassType.GetClass (ctx.Thread) : null;
- if (cls != null) {
- if (includeFields)
- fields = cls.GetFields (ctx.Thread);
- if (includeProps)
- properties = cls.GetProperties (ctx.Thread);
- if (includeMethods)
- methods = cls.GetMethods (ctx.Thread);
- }
- else {
- TargetClassType ct = t as TargetClassType;
- if (ct == null && t.HasClassType)
- ct = t.ClassType;
- if (ct != null) {
- if (includeFields)
- fields = ct.Fields;
- if (includeProps)
- properties = ct.Properties;
- if (includeMethods)
- methods = ct.Methods;
- }
- }
-
- if (fields != null) {
- foreach (TargetFieldInfo field in fields) {
- if (field.IsCompilerGenerated)
- continue;
- if (field.Accessibility == TargetMemberAccessibility.Public && (flags & BindingFlags.Public) == 0)
- continue;
- if (field.Accessibility != TargetMemberAccessibility.Public && (flags & BindingFlags.NonPublic) == 0)
- continue;
- if (field.IsStatic && (flags & BindingFlags.Static) == 0)
- continue;
- if (!field.IsStatic && (flags & BindingFlags.Instance) == 0)
- continue;
- members.Add (new MemberReference (field, t));
- }
- }
-
- if (properties != null) {
- foreach (TargetPropertyInfo prop in properties) {
- if (prop.Accessibility == TargetMemberAccessibility.Public && (flags & BindingFlags.Public) == 0)
- continue;
- if (prop.Accessibility != TargetMemberAccessibility.Public && (flags & BindingFlags.NonPublic) == 0)
- continue;
- if (prop.IsStatic && (flags & BindingFlags.Static) == 0)
- continue;
- if (!prop.IsStatic && (flags & BindingFlags.Instance) == 0)
- continue;
- members.Add (new MemberReference (prop, t));
- }
- }
-
- if (methods != null) {
- foreach (TargetMethodInfo met in methods) {
- if (met.Accessibility == TargetMemberAccessibility.Public && (flags & BindingFlags.Public) == 0)
- continue;
- if (met.Accessibility != TargetMemberAccessibility.Public && (flags & BindingFlags.NonPublic) == 0)
- continue;
- if (met.IsStatic && (flags & BindingFlags.Static) == 0)
- continue;
- if (!met.IsStatic && (flags & BindingFlags.Instance) == 0)
- continue;
- string sig = met.FullName;
- if (!foundMethods.ContainsKey (sig)) {
- foundMethods [sig] = sig;
- members.Add (new MemberReference (met, t));
- }
- }
- }
-
- TargetStructType type = t as TargetStructType;
- if (type != null && type.HasParent && (flags & BindingFlags.DeclaredOnly) == 0)
- t = type.GetParentType (ctx.Thread);
- else
- break;
- }
- return members;
- }
-
- public static ObjectValueFlags GetAccessibility (TargetMemberAccessibility ma)
- {
- switch (ma) {
- case TargetMemberAccessibility.Internal: return ObjectValueFlags.Internal;
- case TargetMemberAccessibility.Protected: return ObjectValueFlags.Protected;
- case TargetMemberAccessibility.Public: return ObjectValueFlags.Public;
- default: return ObjectValueFlags.Private;
- }
- }
-
- public static string FixTypeName (string typeName)
- {
- // Required since the debugger uses C# type aliases for fundamental types,
- // which is silly, but looks like it won't be fixed any time soon.
-
- typeName = typeName.Replace ('/','+');
-
- switch (typeName) {
- case "short": return "System.Int16";
- case "ushort": return "System.UInt16";
- case "int": return "System.Int32";
- case "uint": return "System.UInt32";
- case "long": return "System.Int64";
- case "ulong": return "System.UInt64";
- case "float": return "System.Single";
- case "double": return "System.Double";
- case "char": return "System.Char";
- case "byte": return "System.Byte";
- case "sbyte": return "System.SByte";
- case "object": return "System.Object";
- case "string": return "System.String";
- case "bool": return "System.Boolean";
- case "void": return "System.Void";
- case "decimal": return "System.Decimal";
- }
-
- int i = typeName.IndexOf ('<');
- if (i != -1) {
- StringBuilder sb = new StringBuilder (typeName.Substring (0, i));
- sb.Append ('[');
- i++;
- int e;
- do {
- e = FindTypeEnd (typeName, i);
- sb.Append (FixTypeName (typeName.Substring (i, e-i)));
- sb.Append (',');
- i = e + 1;
- } while (typeName [e] == ',');
-
- sb.Remove (sb.Length - 1, 1);
- sb.Append (']');
- sb.Append (typeName.Substring (e+1));
- return sb.ToString ();
- }
-
- return typeName;
- }
-
- static int FindTypeEnd (string str, int index)
- {
- int level = 0;
- while (index < str.Length) {
- char c = str [index];
- if (c == '[' || c == '<')
- level++;
- if (c == ']' || c == '>') {
- if (level == 0)
- return index;
- else
- level--;
- }
- if (c == ',' && level == 0)
- return index;
- index++;
- }
- return index;
- }
- }
-
- public class MemberReference
- {
- public readonly TargetMemberInfo Member;
- public readonly TargetType DeclaringType;
-
- public MemberReference (TargetMemberInfo member, TargetType type)
- {
- Member = member;
- DeclaringType = type;
- }
-
- public TargetObject GetValue (MdbEvaluationContext ctx, TargetStructObject thisObj)
- {
- if (Member is TargetPropertyInfo) {
- TargetPropertyInfo prop = (TargetPropertyInfo) Member;
- return ObjectUtil.GetRealObject (ctx, Server.Instance.RuntimeInvoke (ctx, prop.Getter, thisObj));
- }
- else if (Member is TargetFieldInfo) {
- TargetFieldInfo field = (TargetFieldInfo) Member;
- if (field.HasConstValue)
- return ctx.Frame.Language.CreateInstance (ctx.Thread, field.ConstValue);
- TargetClass cls = DeclaringType.ClassType.GetClass (ctx.Thread);
- return ObjectUtil.GetRealObject (ctx, cls.GetField (ctx.Thread, thisObj, field));
- }
- else {
- TargetMethodInfo met = (TargetMethodInfo) Member;
- return ObjectUtil.GetRealObject (ctx, Server.Instance.RuntimeInvoke (ctx, met.Type, thisObj));
- }
- }
- }
-
- class MethodCall: AsyncOperation
- {
- MdbEvaluationContext ctx;
- TargetFunctionType function;
- TargetStructObject object_argument;
- TargetObject[] param_objects;
- RuntimeInvokeResult res;
-
- public MethodCall (MdbEvaluationContext ctx, TargetFunctionType function, TargetStructObject object_argument, TargetObject[] param_objects)
- {
- this.ctx = ctx;
- this.function = function;
- this.object_argument = object_argument;
- this.param_objects = param_objects;
- }
-
- public override string Description {
- get {
- if (function.DeclaringType != null)
- return function.DeclaringType.Name + "." + function.Name;
- else
- return function.Name;
- }
- }
-
- public override void Invoke ( )
- {
- res = ctx.Thread.RuntimeInvoke (function, object_argument, param_objects, true, false);
- }
-
- public override void Abort ( )
- {
- res.Abort ();
- res.CompletedEvent.WaitOne ();
- Server.Instance.MdbAdaptor.AbortThread (ctx.Thread, res);
- WaitToStop (ctx.Thread);
- }
-
- public override void Shutdown ()
- {
- res.Abort ();
- if (!res.CompletedEvent.WaitOne (200))
- return;
- Server.Instance.MdbAdaptor.AbortThread (ctx.Thread, res);
- }
-
- public override bool WaitForCompleted (int timeout)
- {
- if (timeout != -1) {
- if (!res.CompletedEvent.WaitOne (timeout, false))
- return false;
- }
- else {
- res.Wait ();
- }
- WaitToStop (ctx.Thread);
- return true;
- }
-
- void WaitToStop (Thread thread)
- {
- thread.WaitHandle.WaitOne ();
- while (!thread.IsStopped)
- ST.Thread.Sleep (1);
- }
-
- public TargetObject ReturnValue {
- get {
- if (res.ExceptionMessage != null)
- throw new EvaluatorException (res.ExceptionMessage);
- return res.ReturnObject;
- }
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Mono.Debugging.Server.Mdb.csproj b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Mono.Debugging.Server.Mdb.csproj
deleted file mode 100644
index 4f60d7b3b4..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Mono.Debugging.Server.Mdb.csproj
+++ /dev/null
@@ -1,195 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
- <PropertyGroup>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <ProductVersion>9.0.21022</ProductVersion>
- <SchemaVersion>2.0</SchemaVersion>
- <ProjectGuid>{4B40BE72-6DF7-48FD-8DF0-81A42D1FB6DF}</ProjectGuid>
- <OutputType>Exe</OutputType>
- <RootNamespace>DebuggerServer</RootNamespace>
- <AssemblyName>DebuggerServer</AssemblyName>
- <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <DebugSymbols>true</DebugSymbols>
- <DebugType>full</DebugType>
- <Optimize>false</Optimize>
- <OutputPath>..\build</OutputPath>
- <DefineConstants>DEBUG;TRACE</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
- <Execution>
- <Execution clr-version="Net_2_0" />
- </Execution>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <DebugSymbols>true</DebugSymbols>
- <DebugType>full</DebugType>
- <Optimize>true</Optimize>
- <OutputPath>..\..\..\extra\home\lluis\work\monodevelop\extras\MonoDevelop.Debugger.Mdb\build</OutputPath>
- <DefineConstants>TRACE</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
- <Execution>
- <Execution clr-version="Net_2_0" />
- </Execution>
- </PropertyGroup>
- <ItemGroup>
- <Reference Include="System" />
- <Reference Include="System.Data" />
- <Reference Include="System.Runtime.Remoting" />
- <Reference Include="System.Xml" />
- <Reference Include="Mono.Debugger, Version=1.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" />
- <Reference Include="NRefactory, Version=0.0.0.0, Culture=neutral">
- <Package>monodevelop</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="Mono.TextEditor, Version=1.0.0.0, Culture=neutral">
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="Mono.Addins, Version=0.4.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="Mono.Posix" />
- <Reference Include="Mono.Cecil, Version=0.6.8.8607, Culture=neutral">
- <Package>monodevelop</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.Core, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.Ide, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.VersionControl, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.NUnit, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.XmlEditor, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.AspNet, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.Gettext, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.Deployment, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.Deployment.Linux, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.GtkCore, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.DesignerSupport, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.VBNetBinding, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.CBinding, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.CSharpBinding, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.Autotools, Version=1.9.2.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="System.Core">
- </Reference>
- <Reference Include="MonoDevelop.SourceEditor2, Version=2.1.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.Debugger, Version=2.1.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.Refactoring, Version=2.1.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="MonoDevelop.Debugger.Soft, Version=2.2.0.0, Culture=neutral">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="Mono.Debugger.Soft, Version=0.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- <Reference Include="Mono.Debugging, Version=0.0.0.0, Culture=neutral, PublicKeyToken=5e9ce85b0923c84f">
- <Package>monodevelop</Package>
- </Reference>
- <Reference Include="Mono.Debugging.Soft, Version=0.0.0.0, Culture=neutral, PublicKeyToken=5e9ce85b0923c84f">
- <Package>monodevelop-core-addins</Package>
- </Reference>
- </ItemGroup>
- <ItemGroup>
- <ProjectReference Include="..\Mono.Debugging.Backend.Mdb\Mono.Debugging.Backend.Mdb.csproj">
- <Project>{932ACD9F-AAEC-4A86-AC73-D0C9E1137A60}</Project>
- <Name>Mono.Debugging.Backend.Mdb</Name>
- </ProjectReference>
- </ItemGroup>
- <ItemGroup>
- <Compile Include="Server.cs" />
- <Compile Include="DebuggerServer.cs" />
- <Compile Include="BacktraceWrapper.cs" />
- <Compile Include="AssemblyInfo.cs" />
- <Compile Include="PropertyReference.cs" />
- <Compile Include="FieldReference.cs" />
- <Compile Include="VariableReference.cs" />
- <Compile Include="Convert.cs" />
- <Compile Include="ArrayAdaptor.cs" />
- <Compile Include="IndexerValueReference.cs" />
- <Compile Include="EvaluationContext.cs" />
- <Compile Include="MdbAdaptor.cs" />
- <Compile Include="MdbAdaptorFactory.cs" />
- <Compile Include="MdbObjectValueAdaptor.cs" />
- </ItemGroup>
- <ItemGroup>
- <None Include="ChangeLog" />
- </ItemGroup>
- <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
- <ProjectExtensions>
- <MonoDevelop>
- <Properties>
- <Deployment.LinuxDeployData generateScript="false" />
- </Properties>
- </MonoDevelop>
- </ProjectExtensions>
- <ItemGroup>
- <EmbeddedResource Include="MdbAdaptor-2-6.cs">
- <LogicalName>MdbAdaptor-2-6.cs</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="MdbAdaptor-2-4-2.cs">
- <LogicalName>MdbAdaptor-2-4-2.cs</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="MdbAdaptor-2-0.cs">
- <LogicalName>MdbAdaptor-2-0.cs</LogicalName>
- </EmbeddedResource>
- <EmbeddedResource Include="MdbAdaptor-2-4-4.cs">
- <LogicalName>MdbAdaptor-2-4-4.cs</LogicalName>
- </EmbeddedResource>
- </ItemGroup>
-</Project>
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/PropertyReference.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/PropertyReference.cs
deleted file mode 100644
index 1995ffbba1..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/PropertyReference.cs
+++ /dev/null
@@ -1,86 +0,0 @@
-// PropertyVariable.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using Mono.Debugger.Languages;
-using Mono.Debugger;
-using Mono.Debugging.Client;
-using Mono.Debugging.Evaluation;
-
-namespace DebuggerServer
-{
- class PropertyReference: ValueReference
- {
- TargetPropertyInfo prop;
- TargetStructObject thisobj;
-
- public PropertyReference (EvaluationContext ctx, TargetPropertyInfo prop, TargetStructObject thisobj): base (ctx)
- {
- this.prop = prop;
- if (!prop.IsStatic)
- this.thisobj = thisobj;
- }
-
- public override object Type {
- get {
- return prop.Type;
- }
- }
-
- public override object DeclaringType {
- get {
- return prop.Getter.DeclaringType;
- }
- }
-
- public override object Value {
- get {
- MdbEvaluationContext ctx = (MdbEvaluationContext) Context;
- return ctx.GetRealObject (Server.Instance.RuntimeInvoke (ctx, prop.Getter, thisobj, new TargetObject[0]));
- }
- set {
- MdbEvaluationContext ctx = (MdbEvaluationContext) Context;
- Server.Instance.RuntimeInvoke (ctx, prop.Setter, thisobj, new TargetObject[] { (TargetObject) value });
- }
- }
-
- public override string Name {
- get {
- return prop.Name;
- }
- }
-
- public override ObjectValueFlags Flags {
- get {
- ObjectValueFlags flags = ObjectValueFlags.Property | ObjectUtil.GetAccessibility (prop.Accessibility);
- if (!prop.CanWrite) flags |= ObjectValueFlags.ReadOnly;
- if (prop.IsStatic) flags |= ObjectValueFlags.Global;
- return flags;
- }
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Server.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Server.cs
deleted file mode 100644
index 314cd3ac70..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/Server.cs
+++ /dev/null
@@ -1,109 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.IO;
-using System.Runtime.Remoting.Channels;
-using System.Runtime.Remoting.Channels.Tcp;
-using System.Runtime.Serialization.Formatters.Binary;
-using System.Text;
-using Mono.Debugging.Backend.Mdb;
-using System.Reflection;
-using Mono.Remoting.Channels.Unix;
-
-namespace DebuggerServer
-{
- public class ServerApp
- {
- static void Main(string[] args)
- {
- Console.WriteLine("## DebuggerServer started");
-
- // The first line of the input is the location of the Mono.Debugging assembly
- string debuggingAsmLocation = Console.In.ReadLine();
- Assembly.LoadFrom (debuggingAsmLocation);
-
- // Mono can't jit a direct call to Server.Run because it fails trying to load Mono.Debugging.
- // The reflection call delays the loading of Mono.Debugging.
- typeof(Server).GetMethod ("Run", BindingFlags.Public | BindingFlags.Static).Invoke (null, new object[] { args });
- }
- }
-
- class Server
- {
- public static DebuggerServer Instance;
-
- public static void Run (string[] args)
- {
- try
- {
- // Load n-refactory from MD's dir
- string path = typeof(Mono.Debugging.Client.DebuggerSession).Assembly.Location;
- path = System.IO.Path.GetDirectoryName (path);
- path = System.IO.Path.Combine (path, "NRefactory.dll");
- Assembly.LoadFrom (path);
-
- string channel = Console.In.ReadLine();
-
- string unixPath = null;
- if (channel == "unix")
- {
- unixPath = System.IO.Path.GetTempFileName();
- Hashtable props = new Hashtable();
- props["path"] = unixPath;
- props["name"] = "__internal_unix";
- ChannelServices.RegisterChannel(new UnixChannel(props, null, null), false);
- }
- else
- {
- Hashtable props = new Hashtable();
- props["port"] = 0;
- props["name"] = "__internal_tcp";
- BinaryClientFormatterSinkProvider clientProvider = new BinaryClientFormatterSinkProvider();
- BinaryServerFormatterSinkProvider serverProvider = new BinaryServerFormatterSinkProvider();
-
- serverProvider.TypeFilterLevel = System.Runtime.Serialization.Formatters.TypeFilterLevel.Full;
- ChannelServices.RegisterChannel(new TcpChannel(props, clientProvider, serverProvider), false);
- }
-
- string sref = Console.In.ReadLine();
- byte[] data = Convert.FromBase64String(sref);
-
- MemoryStream ms = new MemoryStream(data);
- BinaryFormatter bf = new BinaryFormatter();
- IDebuggerController dc = (IDebuggerController) bf.Deserialize(ms);
-
- Instance = new DebuggerServer(dc);
- dc.RegisterDebugger (Instance);
- try
- {
- dc.WaitForExit();
- }
- catch (Exception e)
- {
- Console.WriteLine ("DS: Exception while waiting for WaitForExit: {0}", e.ToString ());
- }
-
- try
- {
- Instance.Dispose();
- }
- catch
- {
- }
-
- if (unixPath != null)
- File.Delete(unixPath);
-
- } catch (Exception e)
- {
- Console.WriteLine ("DS: {0}", e.ToString());
- }
-
- // Delay the exit a few seconds, to make sure all remoting calls
- // from the client have been completed
- System.Threading.Thread.Sleep (3000);
-
- Console.WriteLine ("DebuggerServer exiting.");
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/VariableReference.cs b/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/VariableReference.cs
deleted file mode 100644
index 0155ea5cc6..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Server.Mdb/VariableReference.cs
+++ /dev/null
@@ -1,79 +0,0 @@
-// VariableReference.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using Mono.Debugger.Languages;
-using Mono.Debugger;
-using DC = Mono.Debugging.Client;
-using Mono.Debugging.Evaluation;
-
-namespace DebuggerServer
-{
- public class VariableReference: ValueReference
- {
- TargetVariable var;
- DC.ObjectValueFlags flags;
-
- public VariableReference (EvaluationContext ctx, TargetVariable var, DC.ObjectValueFlags flags): base (ctx)
- {
- this.flags = flags;
- this.var = var;
- if (!var.CanWrite)
- flags |= DC.ObjectValueFlags.ReadOnly;
- }
-
- public override object Value {
- get {
- MdbEvaluationContext ctx = (MdbEvaluationContext) Context;
- TargetObject val = var.GetObject (ctx.Frame);
- return ctx.GetRealObject (val);
- }
- set {
- MdbEvaluationContext ctx = (MdbEvaluationContext) Context;
- var.SetObject (ctx.Frame, (TargetObject) value);
- }
- }
-
- public override string Name {
- get {
- return var.Name;
- }
- }
-
- public override object Type {
- get {
- return var.Type;
- }
- }
-
- public override DC.ObjectValueFlags Flags {
- get {
- return flags;
- }
- }
- }
-}
diff --git a/extras/MonoDevelop.Debugger.Mdb/MonoDevelop.Debugger.Mdb.sln b/extras/MonoDevelop.Debugger.Mdb/MonoDevelop.Debugger.Mdb.sln
deleted file mode 100644
index caa21d4e57..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/MonoDevelop.Debugger.Mdb.sln
+++ /dev/null
@@ -1,59 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Debugging.Backend.Mdb", "Mono.Debugging.Backend.Mdb\Mono.Debugging.Backend.Mdb.csproj", "{932ACD9F-AAEC-4A86-AC73-D0C9E1137A60}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Debugging.Server.Mdb", "Mono.Debugging.Server.Mdb\Mono.Debugging.Server.Mdb.csproj", "{4B40BE72-6DF7-48FD-8DF0-81A42D1FB6DF}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Mono.Debugging.Backend.Mdb.AspNet", "Mono.Debugging.Backend.Mdb.AspNet\Mono.Debugging.Backend.Mdb.AspNet.csproj", "{A35E163C-179D-47A0-8026-FDAA2BE6737B}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Release|Any CPU = Release|Any CPU
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {4B40BE72-6DF7-48FD-8DF0-81A42D1FB6DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {4B40BE72-6DF7-48FD-8DF0-81A42D1FB6DF}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {4B40BE72-6DF7-48FD-8DF0-81A42D1FB6DF}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {4B40BE72-6DF7-48FD-8DF0-81A42D1FB6DF}.Release|Any CPU.Build.0 = Release|Any CPU
- {932ACD9F-AAEC-4A86-AC73-D0C9E1137A60}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {932ACD9F-AAEC-4A86-AC73-D0C9E1137A60}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {932ACD9F-AAEC-4A86-AC73-D0C9E1137A60}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {932ACD9F-AAEC-4A86-AC73-D0C9E1137A60}.Release|Any CPU.Build.0 = Release|Any CPU
- {A35E163C-179D-47A0-8026-FDAA2BE6737B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {A35E163C-179D-47A0-8026-FDAA2BE6737B}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {A35E163C-179D-47A0-8026-FDAA2BE6737B}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {A35E163C-179D-47A0-8026-FDAA2BE6737B}.Release|Any CPU.Build.0 = Release|Any CPU
- EndGlobalSection
- GlobalSection(MonoDevelopProperties) = preSolution
- StartupItem = Mono.Debugging.Backend.Mdb\Mono.Debugging.Backend.Mdb.csproj
- Policies = $0
- $0.DotNetNamingPolicy = $1
- $1.DirectoryNamespaceAssociation = Flat
- $1.ResourceNamePolicy = FileName
- $0.StandardHeader = $2
- $2.Text = @\n${FileName}\n \nAuthor:\n ${AuthorName} <${AuthorEmail}>\n\nCopyright (c) ${Year} ${CopyrightHolder}\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the "Software"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.
- $2.IncludeInNewFiles = True
- $0.TextStylePolicy = $3
- $3.FileWidth = 120
- $3.TabWidth = 4
- $3.inheritsSet = Mono
- $3.inheritsScope = text/plain
- $0.VersionControlPolicy = $4
- $4.inheritsSet = Mono
- $0.ChangeLogPolicy = $5
- $5.UpdateMode = None
- $5.VcsIntegration = None
- $5.inheritsSet = Mono
- $0.TextStylePolicy = $6
- $6.TabWidth = 4
- $6.inheritsSet = Mono
- $6.inheritsScope = text/plain
- $6.scope = text/x-csharp
- $0.CSharpFormattingPolicy = $7
- $7.inheritsSet = Mono
- $7.inheritsScope = text/x-csharp
- $7.scope = text/x-csharp
- EndGlobalSection
-EndGlobal
diff --git a/extras/MonoDevelop.Debugger.Mdb/configure b/extras/MonoDevelop.Debugger.Mdb/configure
deleted file mode 100755
index 6695f8b771..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/configure
+++ /dev/null
@@ -1,160 +0,0 @@
-#!/usr/bin/env bash
-VERSION=4.2
-PACKAGE=monodevelop-debugger-mdb
-prefix=/usr/local
-config=DEBUG
-configurations=" RELEASE DEBUG"
-common_packages=" mono-addins;0.3 mono-debugger;2.0 monodevelop;4.2 monodevelop-core-addins;2.7"
-
-
-usage ()
-{
- echo "Usage : configure [OPTION]... [--config=CONFIG]"
- echo
- echo "Options:"
- echo " --prefix=PREFIX install architecture-independent files in PREFIX"
- echo " [/usr/local]"
- echo " --bindir=DIR user executables [PREFIX/bin]"
- echo " --datadir=DIR read-only architecture-independent data [PREFIX/share]"
- echo " --libdir=DIR object code libraries [PREFIX/lib]"
- echo
- echo "Configurations available :"
- for c in $configurations; do
- if [ "$c" = "$config" ]; then
- echo " $c (Default)"
- else
- echo " $c"
- fi
- done
-}
-
-validate_config ()
-{
- test -z "$1" && return 0
- for c in $configurations; do
- if [ "$c" = "$1" ]; then
- return 1
- fi
- done
- return 0
-}
-
-check_package ()
-{
- name=`echo $1 | cut -d\; -f1`
- version=`echo $1 | cut -d\; -f2`
-
- echo -n "Checking for package '$name'.." | tee -a config.log
- pkg-config --atleast-version=$version $name
- if [ $? -ne 0 ]; then
- echo " ERROR: Package named '$name' >= $version not found." | tee -a config.log
- echo "Try adjusting your PKG_CONFIG_PATH environment variable." | tee -a config.log
- return 1
- fi
- echo " found." | tee -a config.log
-}
-
-check_required_packages ()
-{
- echo "Looking for required packages" | tee config.log
- var=required_packages_$config
- for pkg in $common_packages ${!var}; do
- check_package $pkg
- retval=$?
- [ $retval -ne 0 ] && return $retval
- done
- return 0
-}
-
-while test x$1 != x; do
- case $1 in
- --prefix=*)
- prefix=`echo $1 | sed 's/--prefix=//'`
- ;;
- --prefix)
- shift
- prefix=$1
- ;;
- --libdir=*)
- libdir=`echo $1 | sed 's/--libdir=//'`
- ;;
- --libdir)
- shift
- libdir=$1
- ;;
- --bindir=*)
- bindir=`echo $1 | sed 's/--bindir=//'`
- ;;
- --bindir)
- shift
- bindir=$1
- ;;
- --datadir=*)
- datadir=`echo $1 | sed 's/--datadir=//'`
- ;;
- --datadir)
- shift
- datadir=$1
- ;;
- --config=*)
- conf=`echo $1 | sed 's/--config=//'`
- validate_config "$conf"
- if [ $? -eq 1 ]; then
- config=$conf
- else
- echo "Invalid config name - $conf"
- usage
- exit 1
- fi
- ;;
- --help)
- usage
- exit
- ;;
- *)
- echo Unknown argument $1 >&2
- usage
- exit 1
- ;;
- esac
- shift
-done
-
-check_required_packages
-[ $? -eq 1 ] && exit 1
-
-if [ -z "$libdir" ]; then
- libdir=$prefix/lib
-fi
-if [ -z "$bindir" ]; then
- bindir=$prefix/bin
-fi
-if [ -z "$datadir" ]; then
- datadir=$prefix/share
-fi
-
-echo "prefix=$prefix" > config.make
-echo "libdir=$libdir" >> config.make
-echo "bindir=$bindir" >> config.make
-echo "datadir=$datadir" >> config.make
-echo "RUNTIME=mono" >> config.make
-echo "ASSEMBLY_VERSION=$VERSION.0.0" >> config.make
-echo "VERSION=$VERSION" >> config.make
-echo "PACKAGE=$PACKAGE" >> config.make
-echo "CONFIG=$config" >> config.make
-echo "CSC=dmcs" >> config.make
-
-echo
-echo "$PACKAGE has been configured with "
-echo " prefix = $prefix"
-if [ "$libdir" != "$prefix/lib" ]; then
- echo " libdir = $libdir"
-fi
-if [ "$bindir" != "$prefix/bin" ]; then
- echo " bindir = $bindir"
-fi
-if [ "$datadir" != "$prefix/share" ]; then
- echo " datadir = $datadir"
-fi
-echo " config = $config"
-echo
diff --git a/extras/MonoDevelop.Debugger.Mdb/rules.make b/extras/MonoDevelop.Debugger.Mdb/rules.make
deleted file mode 100644
index a4f37a1fd1..0000000000
--- a/extras/MonoDevelop.Debugger.Mdb/rules.make
+++ /dev/null
@@ -1,42 +0,0 @@
-clean-local:
- make pre-clean-local-hook
- make $(CONFIG)_BeforeClean
- -rm -f $(call quote_each,$(CLEANFILES))
- make $(CONFIG)_AfterClean
- make post-clean-local-hook
-
-install-local:
-uninstall-local:
-
-q2quote = '$(subst ?, ,$1)'
-quote_each = $(foreach f,$(call s2q,$1),$(call q2quote,$f))
-
-dist-local:
- make pre-dist-local-hook "distdir=$$distdir"
- for f in Makefile $(call quote_each,$(EXTRA_DIST)); do \
- d=`dirname "$$f"`; \
- test -d "$(distdir)/$$d" || \
- mkdir -p "$(distdir)/$$d"; \
- cp -p "$$f" "$(distdir)/$$d" || exit 1; \
- done
- make post-dist-local-hook "distdir=$$distdir"
-
-dist-local-recursive:
- for dir in $(call quote_each,$(SUBDIRS)); do \
- mkdir -p "$(distdir)/$$dir" || true; \
- case "$$dir" in \
- .) make dist-local "distdir=$(distdir)" || exit 1;; \
- *) (cd "$$dir"; make dist-local "distdir=$(distdir)/$$dir") || exit 1; \
- esac \
- done
-
-#hooks: Available hooks - all, clean, install, uninstall and dist
-# and their *-local variants
-pre-%-hook: ; @:
-post-%-hook: ; @:
-
-#targets for custom commands
-%_BeforeBuild: ; @:
-%_AfterBuild: ; @:
-%_BeforeClean: ; @:
-%_AfterClean: ; @:
diff --git a/extras/extras.mdw b/extras/extras.mdw
index 10a171f1f7..0781b242dd 100644
--- a/extras/extras.mdw
+++ b/extras/extras.mdw
@@ -1,10 +1,8 @@
<WorkspaceItem name="extras" ctype="Workspace">
<Items>
<Item>MonoDevelop.AddinAuthoring/MonoDevelop.AddinAuthoring.sln</Item>
- <Item>MonoDevelop.Profiling/MonoDevelop.Profiling.mds</Item>
<Item>ValaBinding/ValaBinding.sln</Item>
<Item>PyBinding/PyBinding.sln</Item>
- <Item>MonoDevelop.Debugger.Mdb/MonoDevelop.Debugger.Mdb.sln</Item>
<Item>MonoDevelop.Debugger.Gdb/MonoDevelop.Debugger.Gdb.sln</Item>
<Item>MonoDevelop.Database/MonoDevelop.Database.sln</Item>
<Item>MonoDevelop.CodeAnalysis/MonoDevelop.CodeAnalysis.sln</Item>
diff --git a/main/Main.sln b/main/Main.sln
index cd3448176f..4308643851 100644
--- a/main/Main.sln
+++ b/main/Main.sln
@@ -55,8 +55,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "libstetic", "src\addins\Mon
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "libsteticui", "src\addins\MonoDevelop.GtkCore\libsteticui\libsteticui.csproj", "{7926DB5B-96A7-47A7-9870-DB42FA5C3548}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "prj2make-sharp-lib", "src\addins\prj2make-sharp-lib\prj2make-sharp-lib.csproj", "{0F57E572-2359-4BAF-B302-6478C2E42FA2}"
-EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "VBNetBinding", "VBNetBinding", "{481E1487-E0F1-4C6D-BD71-E572D9A19683}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "VBNetBinding", "src\addins\VBNetBinding\VBNetBinding.csproj", "{EF91D0B8-53F6-4622-9F26-3ED27815878A}"
@@ -320,13 +318,6 @@ Global
{0EA3AD14-404A-4D3F-979B-F087E2E70C82}.DebugWin32|Any CPU.ActiveCfg = Debug|Any CPU
{0EA3AD14-404A-4D3F-979B-F087E2E70C82}.DebugWin32|Any CPU.Build.0 = Debug|Any CPU
{0EA3AD14-404A-4D3F-979B-F087E2E70C82}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {0F57E572-2359-4BAF-B302-6478C2E42FA2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {0F57E572-2359-4BAF-B302-6478C2E42FA2}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {0F57E572-2359-4BAF-B302-6478C2E42FA2}.DebugMac|Any CPU.ActiveCfg = Debug|Any CPU
- {0F57E572-2359-4BAF-B302-6478C2E42FA2}.DebugMac|Any CPU.Build.0 = Debug|Any CPU
- {0F57E572-2359-4BAF-B302-6478C2E42FA2}.DebugWin32|Any CPU.ActiveCfg = Debug|Any CPU
- {0F57E572-2359-4BAF-B302-6478C2E42FA2}.DebugWin32|Any CPU.Build.0 = Debug|Any CPU
- {0F57E572-2359-4BAF-B302-6478C2E42FA2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{100568FC-F4E8-439B-94AD-41D11724E45B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{100568FC-F4E8-439B-94AD-41D11724E45B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{100568FC-F4E8-439B-94AD-41D11724E45B}.DebugMac|Any CPU.ActiveCfg = Debug|Any CPU
@@ -994,7 +985,6 @@ Global
{961B9266-C44A-42B6-BA3D-3FB229C9C417} = {D417E929-2B3A-46AC-BBE8-027ADB63A790}
{DEEB9163-3966-4E5E-9AB5-FBB3E01AC82A} = {D417E929-2B3A-46AC-BBE8-027ADB63A790}
{02280E65-C507-4931-AE68-AA2E89E15EEF} = {D417E929-2B3A-46AC-BBE8-027ADB63A790}
- {0F57E572-2359-4BAF-B302-6478C2E42FA2} = {D417E929-2B3A-46AC-BBE8-027ADB63A790}
{481E1487-E0F1-4C6D-BD71-E572D9A19683} = {D417E929-2B3A-46AC-BBE8-027ADB63A790}
{75B9F2DF-4DEA-4007-965D-339563735EBE} = {D417E929-2B3A-46AC-BBE8-027ADB63A790}
{7E9FADE6-CB4E-4366-8489-AEA1DD9F45F2} = {D417E929-2B3A-46AC-BBE8-027ADB63A790}
diff --git a/main/configure.in b/main/configure.in
index a8b20c677f..13e046963d 100644
--- a/main/configure.in
+++ b/main/configure.in
@@ -302,7 +302,6 @@ src/addins/CSharpBinding/Autotools/Makefile
src/addins/CSharpBinding/AspNet/Makefile
src/addins/ILAsmBinding/Makefile
src/addins/VBNetBinding/Makefile
-src/addins/prj2make-sharp-lib/Makefile
src/addins/ChangeLogAddIn/Makefile
src/addins/MonoDevelop.GtkCore/Makefile
src/addins/MonoDevelop.GtkCore/libstetic/Makefile
diff --git a/main/external/debugger-libs b/main/external/debugger-libs
-Subproject 34595024f0072c1cfc5b1dde1d194d0dcc5c11f
+Subproject 23e33f4743f2a5fb81833631e9c537ed33e9e66
diff --git a/main/external/mono-addins b/main/external/mono-addins
-Subproject 21d715adedaa9a8bc1255de7ddf0d2445622c18
+Subproject d2665f78225fdb50370a2c9c1e64dbb1ccc7a7e
diff --git a/main/external/nrefactory b/main/external/nrefactory
-Subproject 6509e7648f605649dcf01f826c96a57c4a55569
+Subproject cc2a30a92d0e4a692960eafd2a241260ba3fb4e
diff --git a/main/external/xwt b/main/external/xwt
-Subproject 5c770838900d35ffdd5492f1e8508fe6b366caa
+Subproject d9d88153637c123554a1378e4665ef6edf99be5
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am
index 77025934a1..b8a06787c8 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am
+++ b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am
@@ -1,2 +1,4 @@
include $(top_srcdir)/xbuild.include
-EXTRA_DIST += $(wildcard lib/*)
+EXTRA_DIST += \
+ $(wildcard lib/*) \
+ $(wildcard Templates/Common/*.cshtml)
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.csproj b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.csproj
index e65e096e15..7387fd3088 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.csproj
+++ b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.csproj
@@ -19,8 +19,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.AspNet.Mvc\MonoDevelop.AspNet.Mvc.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\build\MonoDevelop.AspNet.Mvc.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.cs" />
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.MD1Serialization/MD1AspNetCustomDataItem.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.MD1Serialization/MD1AspNetCustomDataItem.cs
deleted file mode 100644
index 73fc0c617c..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.MD1Serialization/MD1AspNetCustomDataItem.cs
+++ /dev/null
@@ -1,104 +0,0 @@
-//
-// MD1AspNetCustomDataItem.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.IO;
-using MonoDevelop.Core;
-using MonoDevelop.Core.Serialization;
-
-namespace MonoDevelop.AspNet.MD1Serialization
-{
-
- class MD1AspNetCustomDataItem : MonoDevelop.Projects.Formats.MD1.MD1CustomDataItem
- {
- public override DataCollection Serialize (object obj, ITypeSerializer handler)
- {
- //serialise as normal
- DataCollection data = base.Serialize (obj, handler);
-
- AspNetAppProject proj = obj as AspNetAppProject;
- if (proj == null)
- return data;
-
- //for the old format we need to make sure each Content file that's a web type and is NOT set
- //to copy actually gets changed to the FileCopy build target
- DataItem files = data ["Contents"] as DataItem;
- if (files == null || !files.HasItemData)
- return data;
-
- foreach (object f in files.ItemData) {
- DataItem file = f as DataItem;
- if (file == null || !file.HasItemData)// || file.Name != "File")
- continue;
-
- DataValue ctod = file ["copyToOutputDirectory"] as DataValue;
- if (ctod != null && ctod.Value == "Never")
- {
- DataValue action = file ["buildaction"] as DataValue;
- DataValue name = file ["name"] as DataValue;
- if (action != null && name != null && action.Value == "Content")
- {
- WebSubtype type = AspNetAppProject.DetermineWebSubtype (name.Value);
- if (type != WebSubtype.None && type != WebSubtype.Code) {
- file.Extract ("copyToOutputDirectory");
- int index = file.ItemData.IndexOf (action);
- file.ItemData.Remove (action);
- file.ItemData.Insert (index, new DataValue ("buildaction", "FileCopy"));
- }
- }
- }
- }
-
- return data;
- }
-
- public override void Deserialize (object obj, ITypeSerializer handler, DataCollection data)
- {
- //deserialise as normal
- base.Deserialize (obj, handler, data);
-
- AspNetAppProject proj = obj as AspNetAppProject;
- if (proj == null)
- return;
-
- //find files that are web content and have been deserialised from the obsolete "FileCopy" BuildAction
- foreach (MonoDevelop.Projects.ProjectFile pf in proj.Files) {
- if (pf.BuildAction != MonoDevelop.Projects.BuildAction.Content
- || pf.CopyToOutputDirectory != MonoDevelop.Projects.FileCopyMode.Always)
- continue;
-
- WebSubtype type = proj.DetermineWebSubtype (pf);
- if (type != WebSubtype.None && type != WebSubtype.Code) {
- //and mark them to not copy, since we don't actually want this;
- // the obsolete behaviour was a hack
- pf.CopyToOutputDirectory = MonoDevelop.Projects.FileCopyMode.None;
- }
- }
- }
- }
-}
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.MD1Serialization/md1format.xml b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.MD1Serialization/md1format.xml
deleted file mode 100644
index 11a4d7d121..0000000000
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.MD1Serialization/md1format.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-<SerializationMap>
- <DataItem class = "MonoDevelop.AspNet.AspNetAppProject" customDataItem="MonoDevelop.AspNet.MD1Serialization.MD1AspNetCustomDataItem" >
- <ItemProperty member="xspParameters" name = "XspParameters" />
- <ItemProperty member="verifyCodeBehindFields" name = "VerifyCodeBehindFields" />
- <ItemProperty member="verifyCodeBehindEvents" name = "VerifyCodeBehindEvents" />
- <ItemProperty member="webDeployTargets" name = "WebDeployTargets" />
- <ItemProperty member="webDeployTargets" scope="*" name="Target" valueType="MonoDevelop.AspNet.Deployment.WebDeployTarget" />
- </DataItem>
- <DataItem class = "MonoDevelop.AspNet.AspNetAppProjectConfiguration" >
- <ItemProperty member="disableCodeBehindGeneration" name="AspNet/DisableCodeBehindGeneration" defaultValue="false"/>
- <ItemProperty member="nonStandardOutputDirectory" name="AspNet/nonStandardOutputDirectory" defaultValue="false"/>
- </DataItem>
-</SerializationMap> \ No newline at end of file
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.addin.xml b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.addin.xml
index fe7608f3ff..a9d81804a9 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.addin.xml
+++ b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.addin.xml
@@ -249,10 +249,6 @@
xsdFile = "xhtml1-frameset.xsd" />
</Extension>
- <Extension path = "/MonoDevelop/ProjectModel/MD1SerializationMaps">
- <SerializationMap resource="md1format.xml" />
- </Extension>
-
<Extension path = "/MonoDevelop/Deployment/DeployServiceExtensions">
<Class id="AspNetDeploy" insertbefore="PrepareDeploy" class = "MonoDevelop.AspNet.Deployment.AspNetDeployServiceExtension" />
</Extension>
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.csproj b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.csproj
index fef0b41175..f9466d77f7 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.csproj
+++ b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.csproj
@@ -20,9 +20,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.AspNet\MonoDevelop.AspNet.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -34,8 +34,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.AspNet\MonoDevelop.AspNet.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\core\MonoDevelop.Ide\MonoDevelop.Ide.csproj">
@@ -205,9 +205,6 @@
<EmbeddedResource Include="Templates\WebConfig-SubDir.xft.xml">
<LogicalName>WebConfig-SubDir.xft.xml</LogicalName>
</EmbeddedResource>
- <EmbeddedResource Include="MonoDevelop.AspNet.MD1Serialization\md1format.xml">
- <LogicalName>md1format.xml</LogicalName>
- </EmbeddedResource>
<EmbeddedResource Include="Templates\WebContentForm-CodeBehind.xft.xml">
<LogicalName>WebContentForm-CodeBehind.xft.xml</LogicalName>
</EmbeddedResource>
@@ -276,7 +273,6 @@
<Compile Include="MonoDevelop.AspNet.StateEngine\AspNetDom.cs" />
<Compile Include="MonoDevelop.AspNet.StateEngine\AspNetDirectiveState.cs" />
<Compile Include="MonoDevelop.AspNet.StateEngine\AspNetServerCommentState.cs" />
- <Compile Include="MonoDevelop.AspNet.MD1Serialization\MD1AspNetCustomDataItem.cs" />
<Compile Include="MonoDevelop.AspNet.Deployment\AspNetDeployServiceExtension.cs" />
<Compile Include="MonoDevelop.AspNet.Parser\Directive.cs" />
<Compile Include="MonoDevelop.AspNet.Completion\SimpleLists.cs" />
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProject.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProject.cs
index f0486a084f..d02a958794 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProject.cs
+++ b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProject.cs
@@ -83,17 +83,6 @@ namespace MonoDevelop.AspNet
{
base.OnEndLoad ();
- if (FileFormat.Id == "MD1") {
- foreach (AspNetAppProjectConfiguration conf in Configurations) {
- //migrate settings once
- if (!conf.nonStandardOutputDirectory) {
- conf.nonStandardOutputDirectory = true;
- conf.OutputDirectory = String.IsNullOrEmpty (BaseDirectory)? "bin" : Path.Combine (BaseDirectory, "bin");
- }
- }
- }
- base.OnEndLoad ();
-
//FIX: old version of MD didn't set CompileTarget to Library for ASP.NET projects,
// but implicitly assumed they were always libraries. This is not compatible with VS/MSBuild,
// so we automatically "upgrade" this value.
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs
index 7b36426f74..07a8e6e268 100644
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs
+++ b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/AspNetAppProjectConfiguration.cs
@@ -51,9 +51,6 @@ namespace MonoDevelop.AspNet
[ItemProperty ("AspNet/DisableCodeBehindGeneration", DefaultValue = false)]
bool disableCodeBehindGeneration = false;
- //MD1 compatibility
- internal bool nonStandardOutputDirectory = false;
-
public bool DisableCodeBehindGeneration {
get { return disableCodeBehindGeneration; }
set { disableCodeBehindGeneration = value; }
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/WebTypeManager.cs b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/WebTypeManager.cs
index f1260358f5..631c07312d 100755
--- a/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/WebTypeManager.cs
+++ b/main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet/WebTypeManager.cs
@@ -316,6 +316,8 @@ namespace MonoDevelop.AspNet
if (database == null)
yield break;
var baseTypeDefinition = baseType.GetDefinition ();
+ if (baseTypeDefinition == null)
+ yield break;
//return classes if they derive from system.web.ui.control
foreach (var type in baseTypeDefinition.GetSubTypeDefinitions ().Where (t => t.Namespace == namespac))
if (!type.IsAbstract && type.IsPublic)
diff --git a/main/src/addins/CBinding/CBinding.Autotools/CBinding.Autotools.csproj b/main/src/addins/CBinding/CBinding.Autotools/CBinding.Autotools.csproj
index 734b23817a..b629c735d6 100644
--- a/main/src/addins/CBinding/CBinding.Autotools/CBinding.Autotools.csproj
+++ b/main/src/addins/CBinding/CBinding.Autotools/CBinding.Autotools.csproj
@@ -21,9 +21,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\BackendBindings\MonoDevelop.CBinding.Autotools.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -36,8 +36,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\BackendBindings\MonoDevelop.CBinding.Autotools.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\MonoDevelop.Autotools\MonoDevelop.Autotools.csproj">
diff --git a/main/src/addins/CBinding/CBinding.addin.xml b/main/src/addins/CBinding/CBinding.addin.xml
index aa26cc120e..4b0872809d 100644
--- a/main/src/addins/CBinding/CBinding.addin.xml
+++ b/main/src/addins/CBinding/CBinding.addin.xml
@@ -230,10 +230,6 @@
<SolutionItem type="CBinding.CProject" extension="cproj" guid="{2857B73E-F847-4B02-9238-064979017E93}"/>
</Extension>
- <Extension path = "/MonoDevelop/ProjectModel/MD1SerializationMaps">
- <SerializationMap resource="md1format.xml" />
- </Extension>
-
<!-- Current Autotools AddIn is very .NET specific
<Module>
<Runtime>
diff --git a/main/src/addins/CBinding/CBinding.csproj b/main/src/addins/CBinding/CBinding.csproj
index e65601bc40..40b12a81e6 100644
--- a/main/src/addins/CBinding/CBinding.csproj
+++ b/main/src/addins/CBinding/CBinding.csproj
@@ -22,9 +22,9 @@
<Execution clr-version="Net_2_0" />
</Execution>
<AssemblyOriginatorKeyFile>.</AssemblyOriginatorKeyFile>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\BackendBindings\MonoDevelop.CBinding.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -37,8 +37,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\BackendBindings\MonoDevelop.CBinding.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
@@ -175,9 +175,6 @@
<EmbeddedResource Include="templates\ConsoleCppProject.xpt.xml">
<LogicalName>ConsoleCppProject.xpt.xml</LogicalName>
</EmbeddedResource>
- <EmbeddedResource Include="md1format.xml">
- <LogicalName>md1format.xml</LogicalName>
- </EmbeddedResource>
<EmbeddedResource Include="templates\ConsoleObjCProject.xpt.xml">
<LogicalName>ConsoleObjCProject.xpt.xml</LogicalName>
</EmbeddedResource>
diff --git a/main/src/addins/CBinding/md1format.xml b/main/src/addins/CBinding/md1format.xml
deleted file mode 100644
index 9b00c93af9..0000000000
--- a/main/src/addins/CBinding/md1format.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<SerializationMap>
- <DataItem class = "CBinding.CProject">
- <ItemProperty member="compiler_manager" name="compiler" valueType="CBinding.CCompiler"/>
- <ItemProperty member="language" />
- <ItemProperty member="target" name="Target"/>
- <ItemProperty member="Packages" />
- </DataItem>
- <DataItem class = "CBinding.CProjectConfiguration">
- <ItemProperty member="output" name="Output/output"/>
- <ItemProperty member="target" name="Build/target"/>
- <ItemProperty member="includes" name="Includes"/>
- <ItemProperty member="includes" scope="*" name="Include" valueType="System.String"/>
- <ItemProperty member="libpaths" name="LibPaths"/>
- <ItemProperty member="libpaths" scope="*" name="LibPath" valueType="System.String"/>
- <ItemProperty member="libs" name="Libs"/>
- <ItemProperty member="libs" scope="*" name="Lib" valueType="System.String"/>
- <ItemProperty member="warning_level" name="CodeGeneration/WarningLevel"/>
- <ItemProperty member="warnings_as_errors" name="CodeGeneration/WarningsAsErrors"/>
- <ItemProperty member="optimization" name="CodeGeneration/OptimizationLevel"/>
- <ItemProperty member="extra_compiler_args" name="CodeGeneration/ExtraCompilerArguments"/>
- <ItemProperty member="extra_linker_args" name="CodeGeneration/ExtraLinkerArguments"/>
- <ItemProperty member="define_symbols" name="CodeGeneration/DefineSymbols"/>
- <ItemProperty member="source_directory_path" name="SourceDirectory" serializationDataType="MonoDevelop.Projects.PathDataType"/>
- <ItemProperty member="use_ccache" name="UseCcache" defaultValue="false"/>
- <ItemProperty member="precompileHeaders" name="PrecompileHeaders" defaultValue="true"/>
- </DataItem>
-</SerializationMap> \ No newline at end of file
diff --git a/main/src/addins/CSharpBinding/AspNet/CSharpBinding.AspNet.csproj b/main/src/addins/CSharpBinding/AspNet/CSharpBinding.AspNet.csproj
index dcafb47e13..77c74f509f 100644
--- a/main/src/addins/CSharpBinding/AspNet/CSharpBinding.AspNet.csproj
+++ b/main/src/addins/CSharpBinding/AspNet/CSharpBinding.AspNet.csproj
@@ -19,8 +19,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\BackendBindings\MonoDevelop.CSharpBinding.AspNet.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\BackendBindings\MonoDevelop.CSharpBinding.AspNet.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/CSharpBinding/Autotools/Autotools.csproj b/main/src/addins/CSharpBinding/Autotools/Autotools.csproj
index 4497470ee1..ee32210300 100644
--- a/main/src/addins/CSharpBinding/Autotools/Autotools.csproj
+++ b/main/src/addins/CSharpBinding/Autotools/Autotools.csproj
@@ -21,9 +21,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\BackendBindings\MonoDevelop.CSharpBinding.Autotools.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -36,8 +36,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>1591</DefineConstants>
+ <DocumentationFile>..\..\..\..\build\AddIns\BackendBindings\MonoDevelop.CSharpBinding.Autotools.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\MonoDevelop.Autotools\MonoDevelop.Autotools.csproj">
diff --git a/main/src/addins/CSharpBinding/CSharpBinding.addin.xml b/main/src/addins/CSharpBinding/CSharpBinding.addin.xml
index 1db3ba123c..cea9b4c659 100644
--- a/main/src/addins/CSharpBinding/CSharpBinding.addin.xml
+++ b/main/src/addins/CSharpBinding/CSharpBinding.addin.xml
@@ -103,10 +103,6 @@
<Class fileExtensions = ".cs" class = "MonoDevelop.CSharp.UnitTestTextEditorExtension" />
</Extension>
- <Extension path = "/MonoDevelop/ProjectModel/MD1SerializationMaps">
- <SerializationMap resource="md1format.xml" />
- </Extension>
-
<Extension path = "/MonoDevelop/Core/StockIcons">
<StockIcon stockid = "md-csharp-file" icon = "md-file-source" size="Menu" />
<StockIcon stockid = "md-csharp-project" icon = "md-project" size="Menu"/>
diff --git a/main/src/addins/CSharpBinding/CSharpBinding.csproj b/main/src/addins/CSharpBinding/CSharpBinding.csproj
index 9266f9f23d..b9fed1e1a3 100644
--- a/main/src/addins/CSharpBinding/CSharpBinding.csproj
+++ b/main/src/addins/CSharpBinding/CSharpBinding.csproj
@@ -183,9 +183,6 @@
<EmbeddedResource Include="templates\AssemblyInfo.xft.xml">
<LogicalName>AssemblyInfo.xft.xml</LogicalName>
</EmbeddedResource>
- <EmbeddedResource Include="md1format.xml">
- <LogicalName>md1format.xml</LogicalName>
- </EmbeddedResource>
<EmbeddedResource Include="MonoDevelop.CSharp.Formatting\policies\AllmanCSharpPolicy.xml">
<LogicalName>AllmanCSharpPolicy.xml</LogicalName>
</EmbeddedResource>
diff --git a/main/src/addins/CSharpBinding/md1format.xml b/main/src/addins/CSharpBinding/md1format.xml
deleted file mode 100644
index 64d49a560e..0000000000
--- a/main/src/addins/CSharpBinding/md1format.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-<SerializationMap>
- <DataItem class = "MonoDevelop.CSharp.Project.CSharpCompilerParameters">
- <LiteralProperty name="compiler" value="Mcs" />
- <ItemProperty member="warninglevel" name = "warninglevel"/>
- <ItemProperty member="noWarnings" name="nowarn" defaultValue=""/>
- <ItemProperty member="optimize" name="optimize"/>
- <ItemProperty member="unsafecode" name="unsafecodeallowed"/>
- <ItemProperty member="generateOverflowChecks" name="generateoverflowchecks"/>
- <ItemProperty member="mainclass" name="mainclass" defaultValue=""/>
- <ItemProperty member="definesymbols" name="definesymbols" defaultValue="" />
- <ItemProperty member="win32Icon" name="win32Icon" defaultValue="" serializationDataType="MonoDevelop.Projects.PathDataType"/>
- <ItemProperty member="win32Resource" name="win32Resource" defaultValue="" />
- <ItemProperty member="codePage" name="codepage" defaultValue="0"/>
- <ItemProperty member="additionalArgs" name="additionalargs" defaultValue="" />
- <ItemProperty member="LangVersion" name="langversion" defaultValue="Default"/>
- <ItemProperty member="treatWarningsAsErrors" name="warningsAsErrors" defaultValue="False"/>
- <ItemProperty member="warningsNotAsErrors" name="warningsNotAsErrors" defaultValue=""/>
- </DataItem>
-</SerializationMap> \ No newline at end of file
diff --git a/main/src/addins/ChangeLogAddIn/ChangeLogAddIn.addin.xml b/main/src/addins/ChangeLogAddIn/ChangeLogAddIn.addin.xml
index e9be8574d7..226b186130 100644
--- a/main/src/addins/ChangeLogAddIn/ChangeLogAddIn.addin.xml
+++ b/main/src/addins/ChangeLogAddIn/ChangeLogAddIn.addin.xml
@@ -35,13 +35,4 @@
<Extension path = "/MonoDevelop/ProjectModel/PolicySets/Mono" >
<Policies resource="Policies.xml"/>
</Extension>
-
- <!-- for MD1 migration -->
- <Extension path = "/MonoDevelop/ProjectModel/ExtendedProperties">
- <ItemProperty class = "MonoDevelop.Projects.SolutionItem"
- name = "MonoDevelop.ChangeLogAddIn.ChangeLogInfo" type = "MonoDevelop.ChangeLogAddIn.OldChangeLogData" />
- <ItemProperty class = "MonoDevelop.Projects.Solution"
- name = "MonoDevelop.ChangeLogAddIn.ChangeLogInfo" type = "MonoDevelop.ChangeLogAddIn.OldChangeLogData" />
- </Extension>
-
</ExtensionModel>
diff --git a/main/src/addins/ChangeLogAddIn/ChangeLogAddIn.csproj b/main/src/addins/ChangeLogAddIn/ChangeLogAddIn.csproj
index 6c40ca4f37..158af5dd6d 100644
--- a/main/src/addins/ChangeLogAddIn/ChangeLogAddIn.csproj
+++ b/main/src/addins/ChangeLogAddIn/ChangeLogAddIn.csproj
@@ -20,9 +20,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\ChangeLogAddIn\ChangeLogAddIn.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -34,8 +34,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\ChangeLogAddIn\ChangeLogAddIn.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
@@ -119,7 +119,6 @@
<Compile Include="gtk-gui\MonoDevelop.ChangeLogAddIn.ProjectOptionPanelWidget.cs" />
<Compile Include="ChangeLogService.cs" />
<Compile Include="ChangeLogPolicy.cs" />
- <Compile Include="OldChangeLogData.cs" />
<Compile Include="AddinInfo.cs" />
</ItemGroup>
<ItemGroup>
diff --git a/main/src/addins/ChangeLogAddIn/ChangeLogService.cs b/main/src/addins/ChangeLogAddIn/ChangeLogService.cs
index 6d6800d1e0..587bb5db7c 100644
--- a/main/src/addins/ChangeLogAddIn/ChangeLogService.cs
+++ b/main/src/addins/ChangeLogAddIn/ChangeLogService.cs
@@ -121,7 +121,6 @@ namespace MonoDevelop.ChangeLogAddIn
static ChangeLogPolicy GetPolicy (SolutionItem item)
{
- OldChangeLogData.Migrate (item);
return item.Policies.Get<ChangeLogPolicy> ();
}
}
diff --git a/main/src/addins/ChangeLogAddIn/OldChangeLogData.cs b/main/src/addins/ChangeLogAddIn/OldChangeLogData.cs
deleted file mode 100644
index e5f2ac4616..0000000000
--- a/main/src/addins/ChangeLogAddIn/OldChangeLogData.cs
+++ /dev/null
@@ -1,100 +0,0 @@
-//
-// OldChangeLogData.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (c) 2009 Novell, Inc. (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-
-using System;
-using MonoDevelop.Projects;
-using MonoDevelop.Core.Serialization;
-
-namespace MonoDevelop.ChangeLogAddIn
-{
-
- [DataItem ("ChangeLogInfo")]
- class OldChangeLogData
- {
- [ItemProperty]
- readonly ChangeLogPolicyEnum policy = ChangeLogPolicyEnum.UseParentPolicy;
-
- OldChangeLogData ()
- {
- }
-
- enum ChangeLogPolicyEnum
- {
- NoChangeLog,
- UseParentPolicy,
- UpdateNearestChangeLog,
- OneChangeLogInProjectRootDirectory,
- OneChangeLogInEachDirectory
- }
-
- public static void Migrate (SolutionItem entry)
- {
- if (entry.ParentFolder != null)
- Migrate (entry.ParentFolder);
-
- var data = entry.ExtendedProperties ["MonoDevelop.ChangeLogAddIn.ChangeLogInfo"] as OldChangeLogData;
- if (data == null)
- return;
-
- entry.ExtendedProperties.Remove ("MonoDevelop.ChangeLogAddIn.ChangeLogInfo");
-
- if (entry.Policies.DirectGet<ChangeLogPolicy> () != null)
- return;
-
- ChangeLogPolicyEnum policy = data.policy;
-
- if ((entry is SolutionFolder) && ((SolutionFolder)entry).IsRoot) {
- if (policy == ChangeLogPolicyEnum.UseParentPolicy)
- policy = ChangeLogPolicyEnum.UpdateNearestChangeLog;
- }
-
- ChangeLogUpdateMode mode;
- VcsIntegration intEnabled = VcsIntegration.Enabled;
-
- switch (policy) {
- case ChangeLogPolicyEnum.UseParentPolicy:
- return;
- case ChangeLogPolicyEnum.NoChangeLog:
- mode = ChangeLogUpdateMode.None;
- intEnabled = VcsIntegration.None;
- break;
- case ChangeLogPolicyEnum.OneChangeLogInEachDirectory:
- mode = ChangeLogUpdateMode.Directory;
- break;
- case ChangeLogPolicyEnum.OneChangeLogInProjectRootDirectory:
- mode = ChangeLogUpdateMode.ProjectRoot;
- break;
- case ChangeLogPolicyEnum.UpdateNearestChangeLog:
- mode = ChangeLogUpdateMode.Nearest;
- break;
- default:
- throw new InvalidOperationException ("Unknown value '" + policy + "'");
- }
-
- entry.Policies.Set (new ChangeLogPolicy (mode, intEnabled, null));
- }
- }
-}
diff --git a/main/src/addins/ChangeLogAddIn/Policies.xml b/main/src/addins/ChangeLogAddIn/Policies.xml
index a727ac56a1..3da243b398 100644
--- a/main/src/addins/ChangeLogAddIn/Policies.xml
+++ b/main/src/addins/ChangeLogAddIn/Policies.xml
@@ -1,3 +1,3 @@
<ChangeLogPolicy id="Mono" UpdateMode="Directory" VcsIntegration="Enabled" allowDiffSerialize="True">
<MessageStyle Header="${Date:yyyy-MM-dd} ${AuthorName} &lt;${AuthorEmail}&gt;&#xA;&#xA;" Indent="&#x9;" FirstFilePrefix="* " FileSeparator=":&#xA;* " LastFilePostfix=": " LineAlign="2" InterMessageLines="1" IncludeDirectoryPaths="False"/>
-</ChangeLogPolicy> \ No newline at end of file
+</ChangeLogPolicy>
diff --git a/main/src/addins/ChangeLogAddIn/ProjectOptionPanel.cs b/main/src/addins/ChangeLogAddIn/ProjectOptionPanel.cs
index 948bc69453..12a02a3337 100644
--- a/main/src/addins/ChangeLogAddIn/ProjectOptionPanel.cs
+++ b/main/src/addins/ChangeLogAddIn/ProjectOptionPanel.cs
@@ -41,19 +41,6 @@ namespace MonoDevelop.ChangeLogAddIn
return widget = new ProjectOptionPanelWidget (this);
}
- public override void Initialize (OptionsDialog dialog, object dataObject)
- {
- var solutionItem = dataObject as SolutionItem;
- if (solutionItem != null)
- OldChangeLogData.Migrate (solutionItem);
- else {
- var solution = dataObject as Solution;
- if (solution != null)
- OldChangeLogData.Migrate (solution.RootFolder);
- }
- base.Initialize (dialog, dataObject);
- }
-
protected override string PolicyTitleWithMnemonic {
get {
return GettextCatalog.GetString ("ChangeLog _Policy");
diff --git a/main/src/addins/Deployment/MonoDevelop.Deployment.Linux/MonoDevelop.Deployment.Linux.csproj b/main/src/addins/Deployment/MonoDevelop.Deployment.Linux/MonoDevelop.Deployment.Linux.csproj
index 111a86dcf9..b1f599cbea 100644
--- a/main/src/addins/Deployment/MonoDevelop.Deployment.Linux/MonoDevelop.Deployment.Linux.csproj
+++ b/main/src/addins/Deployment/MonoDevelop.Deployment.Linux/MonoDevelop.Deployment.Linux.csproj
@@ -21,9 +21,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.Deployment\MonoDevelop.Deployment.Linux.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -36,8 +36,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.Deployment\MonoDevelop.Deployment.Linux.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
diff --git a/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment.addin.xml b/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment.addin.xml
index 986e617bd2..2071ab2593 100644
--- a/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment.addin.xml
+++ b/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment.addin.xml
@@ -196,8 +196,4 @@
<Extension path = "/MonoDevelop/Ide/ProjectFeatures">
<!-- <Class class = "MonoDevelop.Deployment.Gui.PackagingFeature" /> -->
</Extension>
-
- <Extension path = "/MonoDevelop/ProjectModel/MD1SerializationMaps">
- <SerializationMap resource="md1format.xml" />
- </Extension>
</Addin>
diff --git a/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment.csproj b/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment.csproj
index 2c4f7cc0c7..7e3e237f2c 100644
--- a/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment.csproj
+++ b/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment.csproj
@@ -20,9 +20,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.Deployment\MonoDevelop.Deployment.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -35,8 +35,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.Deployment\MonoDevelop.Deployment.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
@@ -163,7 +163,6 @@
<Compile Include="MonoDevelop.Deployment.Gui\SshFuseFileCopyConfigurationEditorWidget.cs" />
<Compile Include="gtk-gui\MonoDevelop.Deployment.Gui.SshFuseFileCopyConfigurationEditorWidget.cs" />
<Compile Include="MonoDevelop.Deployment.Gui\SshFuseFileCopyConfigurationEditor.cs" />
- <Compile Include="MonoDevelop.Deployment\MD1Serializer.cs" />
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="gtk-gui\gui.stetic">
@@ -184,9 +183,6 @@
<EmbeddedResource Include="icons\packaging-16.png">
<LogicalName>packaging-16.png</LogicalName>
</EmbeddedResource>
- <EmbeddedResource Include="md1format.xml">
- <LogicalName>md1format.xml</LogicalName>
- </EmbeddedResource>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
</Project>
diff --git a/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment/MD1Serializer.cs b/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment/MD1Serializer.cs
deleted file mode 100644
index 181b613d32..0000000000
--- a/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment/MD1Serializer.cs
+++ /dev/null
@@ -1,125 +0,0 @@
-// MD1Serializer.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using System.Collections.Generic;
-using MonoDevelop.Projects;
-using MonoDevelop.Core.Serialization;
-using MonoDevelop.Projects.Formats.MD1;
-
-namespace MonoDevelop.Deployment
-{
- public class MD1Serializer: ICustomDataItemHandler
- {
- public DataCollection Serialize (object obj, ITypeSerializer handler)
- {
- PackageBuilder pb = (PackageBuilder) obj;
- List<string> items = new List<string> ();
- foreach (SolutionItem sitem in pb.GetChildEntries ()) {
- string file = MD1ProjectService.GetItemFileName (sitem);
- if (file != null)
- items.Add (file);
- else if (handler.SerializationContext.ProgressMonitor != null)
- handler.SerializationContext.ProgressMonitor.ReportWarning ("Can't save reference to item '" + sitem.Name + "'");
- }
- string rootFile = MD1ProjectService.GetItemFileName (pb.RootSolutionItem);
- if (rootFile == null && handler.SerializationContext.ProgressMonitor != null)
- handler.SerializationContext.ProgressMonitor.ReportWarning ("Can't save reference to item '" + pb.RootSolutionItem.Name + "'");
-
- pb.SetSolutionItemMd1 (rootFile, items.ToArray ());
- return handler.Serialize (obj);
- }
-
- public void Deserialize (object obj, ITypeSerializer handler, DataCollection data)
- {
- handler.Deserialize (obj, data);
- }
-
- }
-
- public class MD1ProjectFileSerializer : ICustomDataItemHandler
- {
- static string[] keys = new string[] {
- "DeployService.Deploy",
- "DeployService.TargetDirectoryId",
- "DeployService.RelativeDeployPath",
- "DeployService.UseProjectRelativePath",
- "DeployService.HasPathReferences",
- "DeployService.FileAttributes"
- };
-
- public DataCollection Serialize (object obj, ITypeSerializer handler)
- {
- DataCollection data = handler.Serialize (obj);
- ProjectFile file = (ProjectFile) obj;
-
- //if the file is marked to copy to output, the deploy settings are useless, so strip them out and return
- if (file.CopyToOutputDirectory != FileCopyMode.None) {
- foreach (string key in keys) {
- data.Extract (key);
- }
- return data;
- }
-
- //if the file was FileCopyMode.None and is BuildAction.Content and is marked to deploy, then we can
- //map it back to a FileCopy build action
- if (file.BuildAction == BuildAction.Content) {
- object val = file.ExtendedProperties ["DeployService.Deploy"];
- if (val != null && (bool) val) {
- data.Extract ("buildaction");
- data.Add (new DataValue ("buildaction", "FileCopy"));
- }
- }
-
- return data;
- }
-
- public void Deserialize (object obj, ITypeSerializer handler, DataCollection data)
- {
- //find whether is was marked as FileCopy
- DataValue value = data ["buildaction"] as DataValue;
- bool isFileCopy = value != null && value.Value == "FileCopy";
-
- handler.Deserialize (obj, data);
- ProjectFile file = (ProjectFile) obj;
-
- //if it wasn't, no fancy migrations to do
- if (!isFileCopy)
- return;
-
- //if there were any deploy settings remaining in the project file, then the file isn't "copy to output"
- //but instead should be marked to deploy
- foreach (string key in keys) {
- if (file.ExtendedProperties.Contains (key)) {
- file.CopyToOutputDirectory = FileCopyMode.None;
- file.ExtendedProperties ["DeployService.Deploy"] = true;
- return;
- }
- }
- }
- }
-}
diff --git a/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment/PackageBuilder.cs b/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment/PackageBuilder.cs
index 51d8cd6cc3..3df5f51486 100644
--- a/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment/PackageBuilder.cs
+++ b/main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment/PackageBuilder.cs
@@ -52,11 +52,6 @@ namespace MonoDevelop.Deployment
List<SolutionItem> childCombineEntries;
SolutionItem rootSolutionItem;
-
-#region MD 1.0 compatibility fields
- string[] md1ChildEntries;
- string md1RootEntry;
-#endregion
public PackageBuilder ()
{
@@ -126,9 +121,7 @@ namespace MonoDevelop.Deployment
{
childEntries = new List<SolutionItemReference> (other.childEntries);
rootEntry = other.rootEntry;
- md1ChildEntries = other.md1ChildEntries;
- md1RootEntry = other.md1RootEntry;
-
+
if (other.childCombineEntries != null)
childCombineEntries = new List<SolutionItem> (other.childCombineEntries);
else
@@ -190,12 +183,6 @@ namespace MonoDevelop.Deployment
childEntries.Add (e);
}
- internal void SetSolutionItemMd1 (string siRoot, string[] children)
- {
- md1RootEntry = siRoot;
- md1ChildEntries = children;
- }
-
void UpdateEntryNames ()
{
this.rootEntry = new SolutionItemReference (rootSolutionItem);
@@ -206,13 +193,8 @@ namespace MonoDevelop.Deployment
public SolutionItem RootSolutionItem {
get {
- if (rootSolutionItem == null && (rootEntry != null || md1RootEntry != null)) {
- if (md1RootEntry != null) {
- rootSolutionItem = GetEntryMD1 (md1RootEntry);
- md1RootEntry = null;
- } else
- rootSolutionItem = GetEntry (rootEntry);
- }
+ if (rootSolutionItem == null && rootEntry != null)
+ rootSolutionItem = GetEntry (rootEntry);
return rootSolutionItem;
}
}
@@ -261,16 +243,6 @@ namespace MonoDevelop.Deployment
childCombineEntries = new List<SolutionItem> ();
- if (md1ChildEntries != null) {
- foreach (string it in md1ChildEntries) {
- SolutionItem re = GetEntryMD1 (it);
- if (re != null && !(re is UnknownSolutionItem))
- childCombineEntries.Add (re);
- }
- md1ChildEntries = null;
- return childCombineEntries.ToArray ();
- }
-
foreach (SolutionItemReference en in childEntries) {
SolutionItem re = GetEntry (en);
if (re != null && !(re is UnknownSolutionItem))
@@ -346,41 +318,5 @@ namespace MonoDevelop.Deployment
}
return common;
}
-
- SolutionItem GetEntryMD1 (string fileName)
- {
- foreach (WorkspaceItem it in IdeApp.Workspace.Items) {
- SolutionItem fi = FindEntryMD1 (it, FileService.GetFullPath (fileName));
- if (fi != null)
- return fi;
- }
- return Services.ProjectService.ReadSolutionItem (new NullProgressMonitor (), fileName);
- }
-
- SolutionItem FindEntryMD1 (object item, string fileName)
- {
- if (item is SolutionItem) {
- string file = MonoDevelop.Projects.Formats.MD1.MD1ProjectService.GetItemFileName ((SolutionItem)item);
- if (file != null && FileService.GetFullPath (file) == fileName)
- return (SolutionItem) item;
- }
-
- if (item is Solution) {
- return FindEntryMD1 (((Solution)item).RootFolder, fileName);
- }
- else if (item is SolutionFolder) {
- foreach (SolutionItem ce in ((SolutionFolder)item).Items) {
- SolutionItem fi = FindEntryMD1 (ce, fileName);
- if (fi != null) return fi;
- }
- }
- else if (item is Workspace) {
- foreach (WorkspaceItem wi in ((Workspace)item).Items) {
- SolutionItem fi = FindEntryMD1 (wi, fileName);
- if (fi != null) return fi;
- }
- }
- return null;
- }
}
}
diff --git a/main/src/addins/Deployment/MonoDevelop.Deployment/md1format.xml b/main/src/addins/Deployment/MonoDevelop.Deployment/md1format.xml
deleted file mode 100644
index 4503c10700..0000000000
--- a/main/src/addins/Deployment/MonoDevelop.Deployment/md1format.xml
+++ /dev/null
@@ -1,11 +0,0 @@
-<SerializationMap>
- <DataItem class = "MonoDevelop.Deployment.PackageBuilder" customDataItem="MonoDevelop.Deployment.MD1Serializer">
- <ItemProperty member="excludedFiles" name="ExcludedFiles"/>
- <ItemProperty member="excludedFiles" scope="*" name="File"/>
- <ItemProperty member="md1ChildEntries" name="ChildEntries"/>
- <ItemProperty member="md1ChildEntries" scope="*" name="Entry" serializationDataType="MonoDevelop.Projects.PathDataType"/>
- <ItemProperty member="md1RootEntry" name="rootEntry" serializationDataType="MonoDevelop.Projects.PathDataType"/>
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.ProjectFile" customDataItem = "MonoDevelop.Deployment.MD1ProjectFileSerializer" >
- </DataItem>
-</SerializationMap> \ No newline at end of file
diff --git a/main/src/addins/GnomePlatform/GnomePlatform.csproj b/main/src/addins/GnomePlatform/GnomePlatform.csproj
index bbf831b40c..d36d9eebb7 100644
--- a/main/src/addins/GnomePlatform/GnomePlatform.csproj
+++ b/main/src/addins/GnomePlatform/GnomePlatform.csproj
@@ -18,9 +18,9 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\GnomePlatform.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>bin\Release\GnomePlatform.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="gdk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
diff --git a/main/src/addins/ILAsmBinding/ILAsmBinding.csproj b/main/src/addins/ILAsmBinding/ILAsmBinding.csproj
index 59ce0dccf9..c9602726f0 100644
--- a/main/src/addins/ILAsmBinding/ILAsmBinding.csproj
+++ b/main/src/addins/ILAsmBinding/ILAsmBinding.csproj
@@ -20,9 +20,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\BackendBindings\ILAsmBinding.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -34,8 +34,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\BackendBindings\ILAsmBinding.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/MacPlatform/MacMenu/MDLinkMenuItem.cs b/main/src/addins/MacPlatform/MacMenu/MDLinkMenuItem.cs
index f955d6422e..ecc041a5f9 100644
--- a/main/src/addins/MacPlatform/MacMenu/MDLinkMenuItem.cs
+++ b/main/src/addins/MacPlatform/MacMenu/MDLinkMenuItem.cs
@@ -49,17 +49,8 @@ namespace MonoDevelop.MacIntegration.MacMenu
MonoDevelop.Ide.DesktopService.ShowUrl (lce.Url);
}
- //NOTE: This is used to disable the whole menu when there's a modal dialog.
- // We can justify this because safari 3.2.1 does it ("do you want to close all tabs?").
- static bool IsGloballyDisabled {
- get {
- return MonoDevelop.Ide.DesktopService.IsModalDialogRunning ();
- }
- }
-
public void Update (MDMenu parent, ref NSMenuItem lastSeparator, ref int index)
{
- Enabled = !MDMenuItem.IsGloballyDisabled;
MDMenu.ShowLastSeparator (ref lastSeparator);
}
}
diff --git a/main/src/addins/MacPlatform/MacPlatform.csproj b/main/src/addins/MacPlatform/MacPlatform.csproj
index 780cf0ac94..8ea0f9037b 100644
--- a/main/src/addins/MacPlatform/MacPlatform.csproj
+++ b/main/src/addins/MacPlatform/MacPlatform.csproj
@@ -20,8 +20,8 @@
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MacPlatform.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -32,8 +32,8 @@
<ConsolePause>False</ConsolePause>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MacPlatform.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/Makefile.am b/main/src/addins/Makefile.am
index bc2ac6c3ea..032913f6c1 100644
--- a/main/src/addins/Makefile.am
+++ b/main/src/addins/Makefile.am
@@ -19,7 +19,6 @@ SUBDIRS = \
NUnit \
MonoDeveloperExtensions \
VBNetBinding \
- prj2make-sharp-lib \
MonoDevelop.GtkCore \
ChangeLogAddIn \
MonoDevelop.WebReferences \
diff --git a/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser.csproj b/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser.csproj
index fa4e181e42..65e5e824a9 100644
--- a/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser.csproj
+++ b/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser.csproj
@@ -24,8 +24,8 @@
</Execution>
<AssemblyOriginatorKeyFile>.</AssemblyOriginatorKeyFile>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\DisplayBindings\AssemblyBrowser\MonoDevelop.AssemblyBrowser.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -39,8 +39,8 @@
</Execution>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\DisplayBindings\AssemblyBrowser\MonoDevelop.AssemblyBrowser.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="Mono.Posix" />
diff --git a/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyBrowserViewContent.cs b/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyBrowserViewContent.cs
index 160313a26e..d9c73ce43c 100644
--- a/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyBrowserViewContent.cs
+++ b/main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser/AssemblyBrowserViewContent.cs
@@ -114,6 +114,12 @@ namespace MonoDevelop.AssemblyBrowser
var entity = element as IMember;
if (entity != null)
member = entity.UnresolvedMember;
+
+ }
+ if (member == null) {
+ var entity = element as IType;
+ if (entity != null)
+ member = entity.GetDefinition ().Parts [0];
}
if (member == null)
return;
diff --git a/main/src/addins/MonoDevelop.Autotools/MonoDevelop.Autotools.csproj b/main/src/addins/MonoDevelop.Autotools/MonoDevelop.Autotools.csproj
index a1ecedfbca..8a8706a852 100644
--- a/main/src/addins/MonoDevelop.Autotools/MonoDevelop.Autotools.csproj
+++ b/main/src/addins/MonoDevelop.Autotools/MonoDevelop.Autotools.csproj
@@ -21,9 +21,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.Autotools\MonoDevelop.Autotools.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -36,8 +36,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.Autotools\MonoDevelop.Autotools.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\core\MonoDevelop.Ide\MonoDevelop.Ide.csproj">
diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/MonoDevelop.Debugger.Soft.AspNet.csproj b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/MonoDevelop.Debugger.Soft.AspNet.csproj
index 9259f6643b..583c144897 100644
--- a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/MonoDevelop.Debugger.Soft.AspNet.csproj
+++ b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/MonoDevelop.Debugger.Soft.AspNet.csproj
@@ -18,8 +18,8 @@
<DefineConstants>DEBUG</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.Debugger.Soft\MonoDevelop.Debugger.Soft.AspNet.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -28,8 +28,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.Debugger.Soft\MonoDevelop.Debugger.Soft.AspNet.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.csproj b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.csproj
index 6f4f85cbc2..7ab1ed775f 100644
--- a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.csproj
+++ b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.csproj
@@ -19,8 +19,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.Debugger.Soft\MonoDevelop.Debugger.Soft.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.Debugger.Soft\MonoDevelop.Debugger.Soft.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32.csproj b/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32.csproj
index e6703d1eb2..d3d5a011c0 100644
--- a/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32.csproj
+++ b/main/src/addins/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32.csproj
@@ -55,13 +55,13 @@
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core">
- <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ <RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
<Reference Include="System.Xml.Linq">
- <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ <RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data.DataSetExtensions">
- <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ <RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/CorEvaluationTests.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/CorEvaluationTests.cs
index ff5b437caa..4dc8c9c446 100644
--- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/CorEvaluationTests.cs
+++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/CorEvaluationTests.cs
@@ -30,6 +30,7 @@ namespace MonoDevelop.Debugger.Tests.Win32
{
[TestFixture]
[Platform (Include = "Win")]
+ [Ignore ("Disabled for now")]
public class CorEvaluationTests: EvaluationTests
{
public CorEvaluationTests (): base ("MonoDevelop.Debugger.Win32")
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/CorStackFrameTests.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/CorStackFrameTests.cs
index 102334594d..ae0f541f65 100644
--- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/CorStackFrameTests.cs
+++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.Tests/CorStackFrameTests.cs
@@ -29,6 +29,7 @@ namespace MonoDevelop.Debugger.Tests.Win32
{
[TestFixture]
[Platform (Include = "Win")]
+ [Ignore ("Disabled for now")]
public class CorStackFrameTests : StackFrameTests
{
public CorStackFrameTests (): base ("MonoDevelop.Debugger.Win32")
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.csproj b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.csproj
index 7a7dd82a84..1c8ef0054e 100644
--- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.csproj
+++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.csproj
@@ -143,7 +143,6 @@
<Compile Include="MonoDevelop.Debugger.Visualizer\PixbufVisualizer.cs" />
<Compile Include="MonoDevelop.Debugger.Visualizer\IValueVisualizer.cs" />
<Compile Include="MonoDevelop.Debugger\ExpressionEvaluatorExtensionNode.cs" />
- <Compile Include="gtk-gui\MonoDevelop.Debugger.ExceptionCaughtWidget.cs" />
<Compile Include="MonoDevelop.Debugger\TreePathComparer.cs" />
<Compile Include="MonoDevelop.Debugger\TreePathReference.cs" />
<Compile Include="MonoDevelop.Debugger\DebuggerConsoleView.cs" />
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ExceptionCaughtDialog.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ExceptionCaughtDialog.cs
index 64e6ba660e..b206b4eb00 100644
--- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ExceptionCaughtDialog.cs
+++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ExceptionCaughtDialog.cs
@@ -1,10 +1,11 @@
//
// ExceptionCaughtDialog.cs
//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
+// Authors: Lluis Sanchez Gual <lluis@novell.com>
+// Jeffrey Stedfast <jeff@xamarin.com>
//
-// Copyright (c) 2010 Novell, Inc (http://www.novell.com)
+// Copyright (c) 2010 Novell, Inc. (http://www.novell.com)
+// Copyright (c) 2011 Xamarin Inc. (http://www.xamarin.com)
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
@@ -25,191 +26,291 @@
// THE SOFTWARE.
using System;
+
+using Gtk;
+
using Mono.Debugging.Client;
+
+using MonoDevelop.Ide;
using MonoDevelop.Core;
-using Gtk;
-using System.Threading;
using MonoDevelop.Components;
using MonoDevelop.Ide.TextEditing;
-using MonoDevelop.Ide;
using MonoDevelop.Ide.Gui.Content;
namespace MonoDevelop.Debugger
{
- public partial class ExceptionCaughtWidget : Gtk.Bin
+ class ExceptionCaughtDialog : Gtk.Dialog
{
- readonly Gtk.TreeStore stackStore;
+ static readonly Gdk.Pixbuf WarningIconPixbuf = Gdk.Pixbuf.LoadFromResource ("exception-icon.png");
+ protected ObjectValueTreeView ExceptionValueTreeView { get; private set; }
+ protected TreeView StackTraceTreeView { get; private set; }
+ protected CheckButton OnlyShowMyCodeCheckbox { get; private set; }
+ protected Label ExceptionMessageLabel { get; private set; }
+ protected Label ExceptionTypeLabel { get; private set; }
+ readonly ExceptionCaughtMessage message;
readonly ExceptionInfo exception;
bool destroyed;
-
- public ExceptionCaughtWidget (ExceptionInfo exception)
+
+ protected enum ModelColumn {
+ StackFrame,
+ Markup
+ }
+
+ public ExceptionCaughtDialog (ExceptionInfo ex, ExceptionCaughtMessage msg)
+ {
+ exception = ex;
+ message = msg;
+
+ Build ();
+ UpdateDisplay ();
+
+ exception.Changed += ExceptionChanged;
+ }
+
+ Widget CreateExceptionInfoHeader ()
{
- this.Build ();
+ ExceptionMessageLabel = new Label () { Selectable = true, Wrap = true, WidthRequest = 500, Xalign = 0.0f };
+ ExceptionTypeLabel = new Label () { UseMarkup = true, Xalign = 0.0f };
+
+ ExceptionMessageLabel.Show ();
+ ExceptionTypeLabel.Show ();
- vboxExceptionInfo.Remove (labelMessage);
- var frame = new InfoFrame (labelMessage);
+ var frame = new InfoFrame (ExceptionMessageLabel);
frame.Show ();
- vboxExceptionInfo.PackStart (frame, false, true, 0);
- stackStore = new TreeStore (typeof(string), typeof(string), typeof(int), typeof(int));
- treeStack.Model = stackStore;
+ var vbox = new VBox (false, 6);
+ vbox.PackStart (ExceptionTypeLabel, false, true, 0);
+ vbox.PackStart (frame, true, true, 0);
+ vbox.Show ();
+
+ return vbox;
+ }
+
+ Widget CreateExceptionHeader ()
+ {
+ var icon = new Image (WarningIconPixbuf);
+ icon.Show ();
+
+ var hbox = new HBox (false, 12) { BorderWidth = 12 };
+ hbox.PackStart (icon, false, true, 0);
+ hbox.PackStart (CreateExceptionInfoHeader (), true, true, 0);
+ hbox.Show ();
+
+ return hbox;
+ }
+
+ Widget CreateExceptionValueTreeView ()
+ {
+ ExceptionValueTreeView = new ObjectValueTreeView ();
+ ExceptionValueTreeView.Frame = DebuggingService.CurrentFrame;
+ ExceptionValueTreeView.AllowExpanding = true;
+ ExceptionValueTreeView.AllowPinning = false;
+ ExceptionValueTreeView.AllowEditing = false;
+ ExceptionValueTreeView.AllowAdding = false;
+
+ // TODO: set the bg color to a greyish blue
+ ExceptionValueTreeView.Show ();
+
+ var scrolled = new ScrolledWindow () { HeightRequest = 128 };
+ scrolled.ShadowType = ShadowType.In;
+ scrolled.Add (ExceptionValueTreeView);
+ scrolled.Show ();
+
+ return scrolled;
+ }
+
+ Widget CreateStackTraceTreeView ()
+ {
+ var store = new TreeStore (typeof (ExceptionStackFrame), typeof (string));
+ StackTraceTreeView = new TreeView (store);
+ StackTraceTreeView.HeadersVisible = false;
+ StackTraceTreeView.ShowExpanders = false;
+ StackTraceTreeView.RulesHint = true;
+ StackTraceTreeView.Show ();
+
var crt = new CellRendererText ();
crt.Ellipsize = Pango.EllipsizeMode.End;
crt.WrapWidth = -1;
- treeStack.AppendColumn ("", crt, "markup", 0);
- treeStack.ShowExpanders = false;
- treeStack.RulesHint = true;
-
- valueView.AllowExpanding = true;
- valueView.Frame = DebuggingService.CurrentFrame;
- this.exception = exception;
-
- exception.Changed += HandleExceptionChanged;
- treeStack.SizeAllocated += (object o, SizeAllocatedArgs args) => crt.WrapWidth = args.Allocation.Width;
-
- Fill ();
- treeStack.RowActivated += HandleRowActivated;
+
+ StackTraceTreeView.AppendColumn ("", crt, "markup", (int) ModelColumn.Markup);
+
+ StackTraceTreeView.SizeAllocated += (o, args) => crt.WrapWidth = args.Allocation.Width;
+ StackTraceTreeView.RowActivated += StackFrameActivated;
+
+ var scrolled = new ScrolledWindow () { HeightRequest = 128 };
+ scrolled.ShadowType = ShadowType.In;
+ scrolled.Add (StackTraceTreeView);
+ scrolled.Show ();
+
+ return scrolled;
}
- void HandleRowActivated (object o, RowActivatedArgs args)
+ Widget CreateButtonBox ()
{
- TreeIter iter;
+ var buttons = new HButtonBox () { Layout = ButtonBoxStyle.End, Spacing = 12 };
- if (!stackStore.GetIter (out iter, args.Path))
- return;
+ var copy = new Button (Stock.Copy);
+ copy.Clicked += CopyClicked;
+ copy.Show ();
+
+ buttons.PackStart (copy, false, true, 0);
+
+ var close = new Button (Stock.Close);
+ close.Activated += CloseClicked;
+ close.Clicked += CloseClicked;
+ close.Show ();
+
+ buttons.PackStart (close, false, true, 0);
+
+ buttons.Show ();
- string file = (string) stackStore.GetValue (iter, 1);
- int line = (int) stackStore.GetValue (iter, 2);
- if (!string.IsNullOrEmpty (file))
- IdeApp.Workbench.OpenDocument (file, line, 0);
+ return buttons;
}
- void HandleExceptionChanged (object sender, EventArgs e)
+ void Build ()
{
- Gtk.Application.Invoke (delegate {
- Fill ();
- });
+ Title = GettextCatalog.GetString ("Exception Caught");
+ DefaultHeight = 350;
+ DefaultWidth = 500;
+ VBox.Spacing = 0;
+
+ VBox.PackStart (CreateExceptionHeader (), false, true, 0);
+
+ var vbox = new VBox (false, 0);
+ vbox.PackStart (CreateExceptionValueTreeView (), true, true, 0);
+ vbox.PackStart (CreateStackTraceTreeView (), true, true, 0);
+ vbox.Show ();
+
+ VBox.PackStart (vbox, true, true, 0);
+
+ var actionArea = new HBox (false, 12) { BorderWidth = 6 };
+
+ OnlyShowMyCodeCheckbox = new CheckButton (GettextCatalog.GetString ("_Only show my code."));
+ OnlyShowMyCodeCheckbox.Toggled += OnlyShowMyCodeToggled;
+ OnlyShowMyCodeCheckbox.Show ();
+
+ var alignment = new Alignment (0.0f, 0.5f, 0.0f, 0.0f) { Child = OnlyShowMyCodeCheckbox };
+ alignment.Show ();
+
+ actionArea.PackStart (alignment, true, true, 0);
+ actionArea.PackStart (CreateButtonBox (), false, true, 0);
+ actionArea.Show ();
+
+ VBox.PackStart (actionArea, false, true, 0);
+ ActionArea.Hide ();
}
-
- void Fill ()
+
+ void StackFrameActivated (object o, RowActivatedArgs args)
{
- if (destroyed)
+ var model = StackTraceTreeView.Model;
+ TreeIter iter;
+
+ if (!model.GetIter (out iter, args.Path))
return;
-
- stackStore.Clear ();
- valueView.ClearValues ();
- labelType.Markup = GettextCatalog.GetString ("A <b>{0}</b> was thrown.", exception.Type);
- labelMessage.Text = string.IsNullOrEmpty (exception.Message) ?
- string.Empty :
- exception.Message;
-
- ShowStackTrace (exception, false);
-
- if (!exception.IsEvaluating && exception.Instance != null) {
- valueView.AddValue (exception.Instance);
- valueView.ExpandRow (new TreePath ("0"), false);
- }
+ var frame = (ExceptionStackFrame) model.GetValue (iter, (int) ModelColumn.StackFrame);
- if (exception.StackIsEvaluating) {
- stackStore.AppendValues (GettextCatalog.GetString ("Loading..."), "", 0, 0);
- }
+ if (frame != null && !string.IsNullOrEmpty (frame.File))
+ IdeApp.Workbench.OpenDocument (frame.File, frame.Line, frame.Column);
}
-
- void ShowStackTrace (ExceptionInfo exc, bool showExceptionNode)
+
+ void ShowStackTrace (ExceptionInfo ex, bool showExceptionNode)
{
+ var model = (TreeStore) StackTraceTreeView.Model;
TreeIter iter = TreeIter.Zero;
if (showExceptionNode) {
- treeStack.ShowExpanders = true;
- string tn = exc.Type + ": " + exc.Message;
- iter = stackStore.AppendValues (tn, null, 0, 0);
+ var markup = ex.Type + ": " + ex.Message;
+ iter = model.AppendValues (null, markup);
+ StackTraceTreeView.ShowExpanders = true;
}
- foreach (ExceptionStackFrame frame in exc.StackTrace) {
- string text = string.Format ("<b>{0}</b>", GLib.Markup.EscapeText (frame.DisplayText));
+ foreach (var frame in ex.StackTrace) {
+ var markup = string.Format ("<b>{0}</b>", GLib.Markup.EscapeText (frame.DisplayText));
+
if (!string.IsNullOrEmpty (frame.File)) {
- text += "\n<small>" + GLib.Markup.EscapeText (frame.File);
+ markup += "\n<small>" + GLib.Markup.EscapeText (frame.File);
if (frame.Line > 0) {
- text += ":" + frame.Line;
+ markup += ":" + frame.Line;
if (frame.Column > 0)
- text += "," + frame.Column;
+ markup += "," + frame.Column;
}
- text += "</small>";
+ markup += "</small>";
}
if (!iter.Equals (TreeIter.Zero))
- stackStore.AppendValues (iter, text, frame.File, frame.Line, frame.Column);
+ model.AppendValues (iter, frame, markup);
else
- stackStore.AppendValues (text, frame.File, frame.Line, frame.Column);
+ model.AppendValues (frame, markup);
}
-
- ExceptionInfo inner = exc.InnerException;
+
+ var inner = ex.InnerException;
if (inner != null)
ShowStackTrace (inner, true);
}
-
- protected override void OnDestroyed ()
+
+ void UpdateDisplay ()
{
- destroyed = true;
- exception.Changed -= HandleExceptionChanged;
- base.OnDestroyed ();
- }
- }
+ if (destroyed)
+ return;
- class ExceptionCaughtDialog: Gtk.Dialog
- {
- readonly ExceptionCaughtWidget widget;
- readonly ExceptionCaughtMessage msg;
- readonly ExceptionInfo ex;
+ var stack = (TreeStore) StackTraceTreeView.Model;
+ ExceptionValueTreeView.ClearValues ();
+ stack.Clear ();
- public ExceptionCaughtDialog (ExceptionInfo val, ExceptionCaughtMessage msg)
- {
- Title = GettextCatalog.GetString ("Exception Caught");
- ex = val;
- widget = new ExceptionCaughtWidget (val);
- this.msg = msg;
+ ExceptionTypeLabel.Markup = GettextCatalog.GetString ("A <b>{0}</b> was thrown.", exception.Type);
+ ExceptionMessageLabel.Text = string.IsNullOrEmpty (exception.Message) ? string.Empty : exception.Message;
- VBox box = new VBox ();
- box.Spacing = 6;
- box.PackStart (widget, true, true, 0);
- HButtonBox buttonBox = new HButtonBox ();
- buttonBox.Layout = ButtonBoxStyle.End;
- buttonBox.BorderWidth = 6;
- buttonBox.Spacing = 12;
+ ShowStackTrace (exception, false);
- var copy = new Gtk.Button (GettextCatalog.GetString ("Copy"));
- buttonBox.PackStart (copy, false, false, 0);
- copy.Clicked += HandleCopyClicked;
+ if (!exception.IsEvaluating && exception.Instance != null) {
+ ExceptionValueTreeView.AddValue (exception.Instance);
+ ExceptionValueTreeView.ExpandRow (new TreePath ("0"), false);
+ }
- var close = new Gtk.Button (GettextCatalog.GetString ("Close"));
- buttonBox.PackStart (close, false, false, 0);
- close.Clicked += (sender, e) => msg.Close ();
- close.Activated += (sender, e) => msg.Close ();
+ if (exception.StackIsEvaluating)
+ stack.AppendValues (null, GettextCatalog.GetString ("Loading..."));
+ }
- box.PackStart (buttonBox, false, false, 0);
- VBox.Add (box);
+ void ExceptionChanged (object sender, EventArgs e)
+ {
+ Application.Invoke (delegate {
+ UpdateDisplay ();
+ });
+ }
- DefaultWidth = 500;
- DefaultHeight = 350;
+ void OnlyShowMyCodeToggled (object sender, EventArgs e)
+ {
+
+ }
- box.ShowAll ();
- ActionArea.Hide ();
+ void CloseClicked (object sender, EventArgs e)
+ {
+ message.Close ();
+ }
+
+ void CopyClicked (object sender, EventArgs e)
+ {
+ var text = exception.ToString ();
+
+ var clipboard = Clipboard.Get (Gdk.Atom.Intern ("CLIPBOARD", false));
+ clipboard.Text = text;
+
+ var primary = Clipboard.Get (Gdk.Atom.Intern ("PRIMARY", false));
+ primary.Text = text;
}
protected override bool OnDeleteEvent (Gdk.Event evnt)
{
- msg.Close ();
+ message.Close ();
return true;
}
- void HandleCopyClicked (object sender, EventArgs e)
+ protected override void OnDestroyed ()
{
- var text = ex.ToString ();
- var clipboard = Clipboard.Get (Gdk.Atom.Intern ("CLIPBOARD", false));
- clipboard.Text = text;
- clipboard = Clipboard.Get (Gdk.Atom.Intern ("PRIMARY", false));
- clipboard.Text = text;
+ destroyed = true;
+ exception.Changed -= ExceptionChanged;
+ base.OnDestroyed ();
}
}
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ExceptionsDialog.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ExceptionsDialog.cs
index 34ac6adb40..00636f3c48 100644
--- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ExceptionsDialog.cs
+++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ExceptionsDialog.cs
@@ -27,25 +27,28 @@
using System;
using System.Collections.Generic;
+
using Gtk;
-using MonoDevelop.Core;
-using MonoDevelop.Components;
+
using Mono.Debugging.Client;
-using MonoDevelop.Ide;
using ICSharpCode.NRefactory.TypeSystem;
+
+using MonoDevelop.Ide;
+using MonoDevelop.Core;
+using MonoDevelop.Components;
using MonoDevelop.Ide.TypeSystem;
namespace MonoDevelop.Debugger
{
public partial class ExceptionsDialog : Gtk.Dialog
{
- ListStore storeExceptions;
- ListStore storeSelection;
- HashSet<string> classes = new HashSet<string> ();
- TreeViewState tstateExc;
- TreeViewState tstateSel;
+ readonly HashSet<string> selectedClasses = new HashSet<string> ();
+ readonly HashSet<string> classes = new HashSet<string> ();
+ readonly ListStore storeExceptions;
+ readonly ListStore storeSelection;
+ readonly TreeViewState tstateExc;
+ readonly TreeViewState tstateSel;
bool updateScheduled;
- HashSet<string> selectedClasses = new HashSet<string> ();
public ExceptionsDialog()
{
diff --git a/main/src/addins/MonoDevelop.Debugger/gtk-gui/MonoDevelop.Debugger.ExceptionCaughtWidget.cs b/main/src/addins/MonoDevelop.Debugger/gtk-gui/MonoDevelop.Debugger.ExceptionCaughtWidget.cs
deleted file mode 100644
index 3359b30d19..0000000000
--- a/main/src/addins/MonoDevelop.Debugger/gtk-gui/MonoDevelop.Debugger.ExceptionCaughtWidget.cs
+++ /dev/null
@@ -1,125 +0,0 @@
-
-// This file has been generated by the GUI designer. Do not modify.
-namespace MonoDevelop.Debugger
-{
- public partial class ExceptionCaughtWidget
- {
- private global::Gtk.VBox dialog1_VBox;
- private global::Gtk.VBox vbox2;
- private global::Gtk.HBox hbox2;
- private global::Gtk.Image imageWarning;
- private global::Gtk.VBox vboxExceptionInfo;
- private global::Gtk.Label labelType;
- private global::Gtk.Label labelMessage;
- private global::Gtk.ScrolledWindow GtkScrolledWindow;
- private global::MonoDevelop.Debugger.ObjectValueTreeView valueView;
- private global::Gtk.ScrolledWindow GtkScrolledWindow1;
- private global::Gtk.TreeView treeStack;
-
- protected virtual void Build ()
- {
- global::Stetic.Gui.Initialize (this);
- // Widget MonoDevelop.Debugger.ExceptionCaughtWidget
- global::Stetic.BinContainer.Attach (this);
- this.Name = "MonoDevelop.Debugger.ExceptionCaughtWidget";
- // Container child MonoDevelop.Debugger.ExceptionCaughtWidget.Gtk.Container+ContainerChild
- this.dialog1_VBox = new global::Gtk.VBox ();
- this.dialog1_VBox.Name = "dialog1_VBox";
- // Container child dialog1_VBox.Gtk.Box+BoxChild
- this.vbox2 = new global::Gtk.VBox ();
- this.vbox2.Name = "vbox2";
- // Container child vbox2.Gtk.Box+BoxChild
- this.hbox2 = new global::Gtk.HBox ();
- this.hbox2.Name = "hbox2";
- this.hbox2.Spacing = 12;
- this.hbox2.BorderWidth = ((uint)(12));
- // Container child hbox2.Gtk.Box+BoxChild
- this.imageWarning = new global::Gtk.Image ();
- this.imageWarning.Name = "imageWarning";
- this.imageWarning.Pixbuf = global::Gdk.Pixbuf.LoadFromResource ("exception-icon.png");
- this.hbox2.Add (this.imageWarning);
- global::Gtk.Box.BoxChild w1 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.imageWarning]));
- w1.Position = 0;
- w1.Expand = false;
- w1.Fill = false;
- // Container child hbox2.Gtk.Box+BoxChild
- this.vboxExceptionInfo = new global::Gtk.VBox ();
- this.vboxExceptionInfo.Name = "vboxExceptionInfo";
- this.vboxExceptionInfo.Spacing = 6;
- // Container child vboxExceptionInfo.Gtk.Box+BoxChild
- this.labelType = new global::Gtk.Label ();
- this.labelType.Name = "labelType";
- this.labelType.Xalign = 0F;
- this.labelType.LabelProp = "<b>Exception</b> has been thrown";
- this.labelType.UseMarkup = true;
- this.vboxExceptionInfo.Add (this.labelType);
- global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.vboxExceptionInfo [this.labelType]));
- w2.Position = 0;
- w2.Expand = false;
- w2.Fill = false;
- // Container child vboxExceptionInfo.Gtk.Box+BoxChild
- this.labelMessage = new global::Gtk.Label ();
- this.labelMessage.WidthRequest = 500;
- this.labelMessage.Name = "labelMessage";
- this.labelMessage.Xalign = 0F;
- this.labelMessage.LabelProp = "test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test";
- this.labelMessage.Wrap = true;
- this.labelMessage.Selectable = true;
- this.vboxExceptionInfo.Add (this.labelMessage);
- global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.vboxExceptionInfo [this.labelMessage]));
- w3.Position = 1;
- w3.Expand = false;
- w3.Fill = false;
- this.hbox2.Add (this.vboxExceptionInfo);
- global::Gtk.Box.BoxChild w4 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.vboxExceptionInfo]));
- w4.Position = 1;
- this.vbox2.Add (this.hbox2);
- global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.hbox2]));
- w5.Position = 0;
- w5.Expand = false;
- w5.Fill = false;
- // Container child vbox2.Gtk.Box+BoxChild
- this.GtkScrolledWindow = new global::Gtk.ScrolledWindow ();
- this.GtkScrolledWindow.HeightRequest = 128;
- this.GtkScrolledWindow.Name = "GtkScrolledWindow";
- this.GtkScrolledWindow.ShadowType = ((global::Gtk.ShadowType)(1));
- // Container child GtkScrolledWindow.Gtk.Container+ContainerChild
- this.valueView = new global::MonoDevelop.Debugger.ObjectValueTreeView ();
- this.valueView.CanFocus = true;
- this.valueView.Name = "valueView";
- this.valueView.AllowAdding = false;
- this.valueView.AllowEditing = true;
- this.valueView.AllowPinning = false;
- this.valueView.RootPinAlwaysVisible = false;
- this.valueView.AllowExpanding = false;
- this.valueView.PinnedWatchLine = 0;
- this.valueView.CompactView = false;
- this.GtkScrolledWindow.Add (this.valueView);
- this.vbox2.Add (this.GtkScrolledWindow);
- global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.GtkScrolledWindow]));
- w7.Position = 1;
- // Container child vbox2.Gtk.Box+BoxChild
- this.GtkScrolledWindow1 = new global::Gtk.ScrolledWindow ();
- this.GtkScrolledWindow1.HeightRequest = 128;
- this.GtkScrolledWindow1.Name = "GtkScrolledWindow1";
- this.GtkScrolledWindow1.ShadowType = ((global::Gtk.ShadowType)(1));
- // Container child GtkScrolledWindow1.Gtk.Container+ContainerChild
- this.treeStack = new global::Gtk.TreeView ();
- this.treeStack.CanFocus = true;
- this.treeStack.Name = "treeStack";
- this.treeStack.HeadersVisible = false;
- this.GtkScrolledWindow1.Add (this.treeStack);
- this.vbox2.Add (this.GtkScrolledWindow1);
- global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.GtkScrolledWindow1]));
- w9.Position = 2;
- this.dialog1_VBox.Add (this.vbox2);
- global::Gtk.Box.BoxChild w10 = ((global::Gtk.Box.BoxChild)(this.dialog1_VBox [this.vbox2]));
- w10.Position = 0;
- this.Add (this.dialog1_VBox);
- if ((this.Child != null)) {
- this.Child.ShowAll ();
- }
- this.Hide ();
- }
- }
-}
diff --git a/main/src/addins/MonoDevelop.Debugger/gtk-gui/gui.stetic b/main/src/addins/MonoDevelop.Debugger/gtk-gui/gui.stetic
index cf1c702984..650fc2b9ac 100644
--- a/main/src/addins/MonoDevelop.Debugger/gtk-gui/gui.stetic
+++ b/main/src/addins/MonoDevelop.Debugger/gtk-gui/gui.stetic
@@ -1757,133 +1757,6 @@ Break when the hit count is a multiple of</property>
</widget>
</child>
</widget>
- <widget class="Gtk.Bin" id="MonoDevelop.Debugger.ExceptionCaughtWidget" design-size="612 362">
- <property name="MemberName" />
- <property name="Visible">False</property>
- <child>
- <widget class="Gtk.VBox" id="dialog1_VBox">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.VBox" id="vbox2">
- <property name="MemberName" />
- <child>
- <widget class="Gtk.HBox" id="hbox2">
- <property name="MemberName" />
- <property name="Spacing">12</property>
- <property name="BorderWidth">12</property>
- <child>
- <widget class="Gtk.Image" id="imageWarning">
- <property name="MemberName" />
- <property name="Pixbuf">resource:exception-icon.png</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.VBox" id="vboxExceptionInfo">
- <property name="MemberName" />
- <property name="Spacing">6</property>
- <child>
- <widget class="Gtk.Label" id="labelType">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp">&lt;b&gt;Exception&lt;/b&gt; has been thrown</property>
- <property name="UseMarkup">True</property>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.Label" id="labelMessage">
- <property name="MemberName" />
- <property name="WidthRequest">500</property>
- <property name="Xalign">0</property>
- <property name="LabelProp">test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test</property>
- <property name="Wrap">True</property>
- <property name="Selectable">True</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.ScrolledWindow" id="GtkScrolledWindow">
- <property name="MemberName" />
- <property name="HeightRequest">128</property>
- <property name="ShadowType">In</property>
- <child>
- <widget class="MonoDevelop.Debugger.ObjectValueTreeView" id="valueView">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="ShowScrollbars">True</property>
- <property name="AllowAdding">False</property>
- <property name="AllowEditing">True</property>
- <property name="AllowPinning">False</property>
- <property name="RootPinAlwaysVisible">False</property>
- <property name="AllowExpanding">False</property>
- <property name="PinnedWatchLine">0</property>
- <property name="CompactView">False</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
- <child>
- <widget class="Gtk.ScrolledWindow" id="GtkScrolledWindow1">
- <property name="MemberName" />
- <property name="HeightRequest">128</property>
- <property name="ShadowType">In</property>
- <child>
- <widget class="Gtk.TreeView" id="treeStack">
- <property name="MemberName" />
- <property name="CanFocus">True</property>
- <property name="ShowScrollbars">True</property>
- <property name="HeadersVisible">False</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="Position">0</property>
- <property name="AutoSize">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
<widget class="Gtk.Dialog" id="MonoDevelop.Debugger.Viewers.ValueVisualizerDialog" design-size="628 433">
<property name="MemberName" />
<property name="Visible">False</property>
diff --git a/main/src/addins/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.csproj b/main/src/addins/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.csproj
index cf35086049..e32ca74b60 100644
--- a/main/src/addins/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.csproj
+++ b/main/src/addins/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.csproj
@@ -20,9 +20,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.DesignerSupport\MonoDevelop.DesignerSupport.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -34,8 +34,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.DesignerSupport\MonoDevelop.DesignerSupport.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/MonoDevelop.DocFood/MonoDevelop.DocFood.csproj b/main/src/addins/MonoDevelop.DocFood/MonoDevelop.DocFood.csproj
index dc0b576a97..453ecbac6d 100644
--- a/main/src/addins/MonoDevelop.DocFood/MonoDevelop.DocFood.csproj
+++ b/main/src/addins/MonoDevelop.DocFood/MonoDevelop.DocFood.csproj
@@ -24,8 +24,8 @@
<Command type="Execute" command="../../../main/build/bin/MonoDevelop.exe" />
</CustomCommands>
</CustomCommands>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\BackendBindings\MonoDevelop.DocFood.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -35,8 +35,8 @@
<WarningLevel>4</WarningLevel>
<Externalconsole>True</Externalconsole>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\BackendBindings\MonoDevelop.DocFood.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/MonoDevelop.Gettext/MonoDevelop.Gettext.csproj b/main/src/addins/MonoDevelop.Gettext/MonoDevelop.Gettext.csproj
index b4e2047f28..137f10be0a 100644
--- a/main/src/addins/MonoDevelop.Gettext/MonoDevelop.Gettext.csproj
+++ b/main/src/addins/MonoDevelop.Gettext/MonoDevelop.Gettext.csproj
@@ -21,9 +21,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\DisplayBindings\Gettext\MonoDevelop.Gettext.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -35,8 +35,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\DisplayBindings\Gettext\MonoDevelop.Gettext.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/MonoDevelop.GtkCore/MonoDevelop.GtkCore.csproj b/main/src/addins/MonoDevelop.GtkCore/MonoDevelop.GtkCore.csproj
index cb07317991..68ea8e3988 100644
--- a/main/src/addins/MonoDevelop.GtkCore/MonoDevelop.GtkCore.csproj
+++ b/main/src/addins/MonoDevelop.GtkCore/MonoDevelop.GtkCore.csproj
@@ -20,9 +20,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.GtkCore\MonoDevelop.GtkCore.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -34,8 +34,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.GtkCore\MonoDevelop.GtkCore.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/MonoDevelop.GtkCore/libstetic/libstetic.csproj b/main/src/addins/MonoDevelop.GtkCore/libstetic/libstetic.csproj
index 6a6bb07c79..24bac2866e 100644
--- a/main/src/addins/MonoDevelop.GtkCore/libstetic/libstetic.csproj
+++ b/main/src/addins/MonoDevelop.GtkCore/libstetic/libstetic.csproj
@@ -21,8 +21,8 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.GtkCore\libstetic.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -34,8 +34,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>bin\Release\libstetic.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="Mono.Posix" />
diff --git a/main/src/addins/MonoDevelop.GtkCore/libsteticui/libsteticui.csproj b/main/src/addins/MonoDevelop.GtkCore/libsteticui/libsteticui.csproj
index 9f16696852..dccb4ab568 100644
--- a/main/src/addins/MonoDevelop.GtkCore/libsteticui/libsteticui.csproj
+++ b/main/src/addins/MonoDevelop.GtkCore/libsteticui/libsteticui.csproj
@@ -23,8 +23,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.GtkCore\libsteticui.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -37,8 +37,8 @@
</Execution>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>bin\Release\libsteticui.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="Mono.Posix" />
diff --git a/main/src/addins/MonoDevelop.HexEditor/MonoDevelop.HexEditor.csproj b/main/src/addins/MonoDevelop.HexEditor/MonoDevelop.HexEditor.csproj
index 51ac5ac0c6..3d6ac3bc7f 100644
--- a/main/src/addins/MonoDevelop.HexEditor/MonoDevelop.HexEditor.csproj
+++ b/main/src/addins/MonoDevelop.HexEditor/MonoDevelop.HexEditor.csproj
@@ -18,8 +18,8 @@
<DefineConstants>DEBUG</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\DisplayBindings\HexEditor\MonoDevelop.HexEditor.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -28,8 +28,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\DisplayBindings\HexEditor\MonoDevelop.HexEditor.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/MonoDevelop.RegexToolkit/MonoDevelop.RegexToolkit.csproj b/main/src/addins/MonoDevelop.RegexToolkit/MonoDevelop.RegexToolkit.csproj
index 6cfd4d41dd..d8e9f37cf7 100644
--- a/main/src/addins/MonoDevelop.RegexToolkit/MonoDevelop.RegexToolkit.csproj
+++ b/main/src/addins/MonoDevelop.RegexToolkit/MonoDevelop.RegexToolkit.csproj
@@ -21,9 +21,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.RegexToolkit\MonoDevelop.RegexToolkit.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -36,8 +36,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.RegexToolkit\MonoDevelop.RegexToolkit.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="Mono.Posix" />
diff --git a/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor/SourceEditorView.cs b/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor/SourceEditorView.cs
index 22b95e1af3..d7c13967ac 100644
--- a/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor/SourceEditorView.cs
+++ b/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor/SourceEditorView.cs
@@ -1780,19 +1780,21 @@ namespace MonoDevelop.SourceEditor
public CodeCompletionContext CreateCodeCompletionContext (int triggerOffset)
{
- CodeCompletionContext result = new CodeCompletionContext ();
+ var result = new CodeCompletionContext ();
+ if (widget == null)
+ return result;
+ var editor = widget.TextEditor;
+ if (editor == null)
+ return result;
result.TriggerOffset = triggerOffset;
- DocumentLocation loc = widget.TextEditor.Caret.Location;
+ var loc = editor.Caret.Location;
result.TriggerLine = loc.Line;
result.TriggerLineOffset = loc.Column - 1;
-/* var p = new Cairo.Point ((int)this.widget.TextEditor.TextViewMargin.CaretVisualLocation.X,
- (int)this.widget.TextEditor.TextViewMargin.CaretVisualLocation.Y);
- if (widget.TextEditor.Caret.Location.Column == loc.Column)*/
var p = this.widget.TextEditor.LocationToPoint (loc);
int tx, ty;
- widget.TextEditor.ParentWindow.GetOrigin (out tx, out ty);
- tx += widget.TextEditor.Allocation.X + (int)p.X;
- ty += widget.TextEditor.Allocation.Y + (int)p.Y + (int)TextEditor.LineHeight;
+ editor.ParentWindow.GetOrigin (out tx, out ty);
+ tx += editor.Allocation.X + p.X;
+ ty += editor.Allocation.Y + p.Y + (int)editor.LineHeight;
result.TriggerXCoord = tx;
result.TriggerYCoord = ty;
@@ -2442,7 +2444,7 @@ namespace MonoDevelop.SourceEditor
[CommandUpdateHandler (SearchCommands.FindPrevious)]
void UpdateFindNextAndPrev (CommandInfo cinfo)
{
- cinfo.Enabled = !string.IsNullOrEmpty (widget.TextEditor.SearchPattern);
+ cinfo.Enabled = !string.IsNullOrEmpty (SearchAndReplaceOptions.SearchPattern);
}
[CommandHandler (SearchCommands.FindPrevious)]
diff --git a/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor/SourceEditorWidget.cs b/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor/SourceEditorWidget.cs
index 4e27f48f4d..4b286d4e50 100644
--- a/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor/SourceEditorWidget.cs
+++ b/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor/SourceEditorWidget.cs
@@ -1718,12 +1718,14 @@ namespace MonoDevelop.SourceEditor
Wave = true;
StartCol = Info.Region.BeginColumn;
- var startOffset = line.Offset;
- while (StartCol < line.Length) {
- char ch = doc.GetCharAt (startOffset + StartCol - 1);
- if (!char.IsWhiteSpace (ch))
- break;
- StartCol++;
+ if (line != null) {
+ var startOffset = line.Offset;
+ while (StartCol < line.Length) {
+ char ch = doc.GetCharAt (startOffset + StartCol - 1);
+ if (!char.IsWhiteSpace (ch))
+ break;
+ StartCol++;
+ }
}
if (Info.Region.EndColumn > StartCol) {
diff --git a/main/src/addins/MonoDevelop.WebReferences/MonoDevelop.WebReferences.csproj b/main/src/addins/MonoDevelop.WebReferences/MonoDevelop.WebReferences.csproj
index d2b5b06f18..d0c83955dd 100644
--- a/main/src/addins/MonoDevelop.WebReferences/MonoDevelop.WebReferences.csproj
+++ b/main/src/addins/MonoDevelop.WebReferences/MonoDevelop.WebReferences.csproj
@@ -22,8 +22,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DefineConstants>DEBUG</DefineConstants>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.WebReferences\MonoDevelop.WebReferences.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -36,8 +36,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.WebReferences\MonoDevelop.WebReferences.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.csproj b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.csproj
index 8984fb2633..795f6508de 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.csproj
+++ b/main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.csproj
@@ -22,9 +22,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.XmlEditor\MonoDevelop.XmlEditor.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -38,8 +38,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDevelop.XmlEditor\MonoDevelop.XmlEditor.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SchemaAssociationTests.cs b/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SchemaAssociationTests.cs
index 3fc9b0cc73..2ff5377578 100644
--- a/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SchemaAssociationTests.cs
+++ b/main/src/addins/MonoDevelop.XmlEditor/Tests/Schema/SchemaAssociationTests.cs
@@ -25,6 +25,7 @@ namespace MonoDevelop.XmlEditor.Tests.Schema
}
[Test]
+ [Platform (Exclude = "Win")]
public void ToXml()
{
XmlFileAssociation schema = new XmlFileAssociation (".xml", "http://mono-project.com", null);
@@ -35,6 +36,7 @@ namespace MonoDevelop.XmlEditor.Tests.Schema
}
[Test]
+ [Platform (Exclude = "Win")]
public void FromXml()
{
XmlFileAssociation expectedSchema = new XmlFileAssociation (".xml", "http://mono-project.com", null);
diff --git a/main/src/addins/MonoDeveloperExtensions/MonoDeveloperExtensions.csproj b/main/src/addins/MonoDeveloperExtensions/MonoDeveloperExtensions.csproj
index 4ff9182c4a..d7727e1f9a 100644
--- a/main/src/addins/MonoDeveloperExtensions/MonoDeveloperExtensions.csproj
+++ b/main/src/addins/MonoDeveloperExtensions/MonoDeveloperExtensions.csproj
@@ -20,9 +20,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDeveloperExtensions\MonoDeveloperExtensions.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -34,8 +34,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\MonoDeveloperExtensions\MonoDeveloperExtensions.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
diff --git a/main/src/addins/MonoDeveloperExtensions/NUnit/NUnit.csproj b/main/src/addins/MonoDeveloperExtensions/NUnit/NUnit.csproj
index 81b6208c12..bf976b8870 100644
--- a/main/src/addins/MonoDeveloperExtensions/NUnit/NUnit.csproj
+++ b/main/src/addins/MonoDeveloperExtensions/NUnit/NUnit.csproj
@@ -21,9 +21,9 @@
<Execution clr-version="Net_2_0" />
</Execution>
<AssemblyName>MonoDeveloperExtensions_nunit</AssemblyName>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDeveloperExtensions\MonoDeveloperExtensions_nunit.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -37,8 +37,8 @@
</Execution>
<AssemblyName>NUnit</AssemblyName>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDeveloperExtensions\NUnit.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\MonoDeveloperExtensions.csproj">
diff --git a/main/src/addins/NUnit/MonoDevelop.NUnit.csproj b/main/src/addins/NUnit/MonoDevelop.NUnit.csproj
index a2de3497fd..c7249b321a 100644
--- a/main/src/addins/NUnit/MonoDevelop.NUnit.csproj
+++ b/main/src/addins/NUnit/MonoDevelop.NUnit.csproj
@@ -20,9 +20,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\NUnit\MonoDevelop.NUnit.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -34,8 +34,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\NUnit\MonoDevelop.NUnit.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="nunit.core">
@@ -155,9 +155,6 @@
<EmbeddedResource Include="Gui\icons\light\project-nunit-overlay-32%402x.png">
<LogicalName>project-nunit-overlay-light-32@2x.png</LogicalName>
</EmbeddedResource>
- <EmbeddedResource Include="md1format.xml">
- <LogicalName>md1format.xml</LogicalName>
- </EmbeddedResource>
<EmbeddedResource Include="gtk-gui\gui.stetic">
<LogicalName>gui.stetic</LogicalName>
</EmbeddedResource>
@@ -183,7 +180,6 @@
<Compile Include="Gui\NUnitAssemblyGroupNodeBuilder.cs" />
<Compile Include="Gui\NUnitAssemblyGroupConfigurationNodeBuilder.cs" />
<Compile Include="Gui\TestAssemblyNodeBuilder.cs" />
- <Compile Include="Project\NUnitAssemblyGroupFileFormat.cs" />
<Compile Include="Project\NUnitAssemblyGroupProject.cs" />
<Compile Include="Project\TestAssembly.cs" />
<Compile Include="Project\TestAssemblyCollection.cs" />
diff --git a/main/src/addins/NUnit/MonoDevelopNUnit.addin.xml b/main/src/addins/NUnit/MonoDevelopNUnit.addin.xml
index 29946b9d05..b9af482d66 100644
--- a/main/src/addins/NUnit/MonoDevelopNUnit.addin.xml
+++ b/main/src/addins/NUnit/MonoDevelopNUnit.addin.xml
@@ -192,11 +192,6 @@
<Extension path = "/MonoDevelop/Ide/FileTemplates">
<FileTemplate id = "NUnitTestClass" resource = "NUnitTestClass.xft.xml"/>
</Extension>
-
- <Extension path = "/MonoDevelop/ProjectModel/FileFormats">
- <FileFormat id="NUnitAssemblyGroupFileFormat"
- class="MonoDevelop.NUnit.NUnitAssemblyGroupFileFormat"/>
- </Extension>
<Extension path = "/MonoDevelop/NUnit/TestProviders">
<Class id="SystemTestProvider" class="MonoDevelop.NUnit.SystemTestProvider" />
diff --git a/main/src/addins/NUnit/NUnitRunner/NUnitRunner.csproj b/main/src/addins/NUnit/NUnitRunner/NUnitRunner.csproj
index 1ca13b73e5..6c404b0cea 100644
--- a/main/src/addins/NUnit/NUnitRunner/NUnitRunner.csproj
+++ b/main/src/addins/NUnit/NUnitRunner/NUnitRunner.csproj
@@ -19,8 +19,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\NUnit\NUnitRunner.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>bin\Release\NUnitRunner.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/NUnit/Project/NUnitAssemblyGroupFileFormat.cs b/main/src/addins/NUnit/Project/NUnitAssemblyGroupFileFormat.cs
deleted file mode 100644
index 702ae8c0c8..0000000000
--- a/main/src/addins/NUnit/Project/NUnitAssemblyGroupFileFormat.cs
+++ /dev/null
@@ -1,126 +0,0 @@
-//
-// NUnitAssemblyGroupFileFormat.cs
-//
-// Author:
-// Lluis Sanchez Gual
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-
-using System;
-using System.IO;
-using System.Xml;
-using System.Collections.Generic;
-using MonoDevelop.Projects;
-using MonoDevelop.Core.Serialization;
-using MonoDevelop.Core;
-using MonoDevelop.Projects.Extensions;
-using MonoDevelop.Projects.Formats.MD1;
-
-namespace MonoDevelop.NUnit
-{
- public class NUnitAssemblyGroupFileFormat: IFileFormat
- {
- public string Name {
- get { return "NUnit assembly group"; }
- }
-
- public FilePath GetValidFormatName (object obj, FilePath fileName)
- {
- return fileName.ChangeExtension (".md-nunit");
- }
-
- public bool CanReadFile (FilePath file, Type expectedType)
- {
- return expectedType.IsAssignableFrom (typeof(NUnitAssemblyGroupProject)) && Path.GetExtension (file) == ".md-nunit";
- }
-
- public bool CanWriteFile (object obj)
- {
- return false;
- }
-
- public void WriteFile (FilePath file, object obj, IProgressMonitor monitor)
- {
- WriteFile (file, file, obj, monitor);
- }
-
- public void ExportFile (FilePath file, object obj, IProgressMonitor monitor)
- {
- WriteFile (((NUnitAssemblyGroupProject)obj).FileName, file, obj, monitor);
- }
-
- public List<FilePath> GetItemFiles (object obj)
- {
- return new List<FilePath> ();
- }
-
- void WriteFile (FilePath file, FilePath outFile, object obj, IProgressMonitor monitor)
- {
- }
-
- public object ReadFile (FilePath file, Type expectedType, IProgressMonitor monitor)
- {
- XmlTextReader reader = new XmlTextReader (new StreamReader (file));
- try {
- monitor.BeginTask (string.Format (GettextCatalog.GetString ("Loading project: {0}"), file), 1);
-
- reader.MoveToContent ();
-
- XmlDataSerializer ser = new XmlDataSerializer (MD1ProjectService.DataContext);
- ser.SerializationContext.BaseFile = file;
-
- SolutionEntityItem entry = (SolutionEntityItem) ser.Deserialize (reader, typeof(NUnitAssemblyGroupProject));
- entry.FileName = file;
- return entry;
- }
- catch (Exception ex) {
- monitor.ReportError (string.Format (GettextCatalog.GetString ("Could not load project: {0}"), file), ex);
- throw;
- }
- finally {
- monitor.EndTask ();
- reader.Close ();
- }
- }
-
- public void ConvertToFormat (object obj)
- {
- }
-
- public bool SupportsMixedFormats {
- get { return false; }
- }
-
- public IEnumerable<string> GetCompatibilityWarnings (object obj)
- {
- yield break;
- }
-
- public bool SupportsFramework (MonoDevelop.Core.Assemblies.TargetFramework framework)
- {
- return true;
- }
- }
-}
-
diff --git a/main/src/addins/NUnit/md1format.xml b/main/src/addins/NUnit/md1format.xml
deleted file mode 100644
index b113d058bf..0000000000
--- a/main/src/addins/NUnit/md1format.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<SerializationMap>
- <DataItem class = "MonoDevelop.CSharp.Project.CSharpCompilerParameters">
- <ItemProperty member="warninglevel" name = "warninglevel"/>
- <ItemProperty member="noWarnings" name="nowarn" defaultValue=""/>
- <ItemProperty member="optimize" name="optimize"/>
- <ItemProperty member="unsafecode" name="unsafecodeallowed"/>
- <ItemProperty member="generateOverflowChecks" name="generateoverflowchecks"/>
- <ItemProperty member="mainclass" name="mainclass"/>
- <ItemProperty member="definesymbols" name="definesymbols" defaultValue="" />
- <ItemProperty member="generateXmlDocumentation" name="generatexmldocumentation"/>
- <ItemProperty member="win32Icon" name="win32Icon" defaultValue="" />
- <ItemProperty member="win32Resource" name="win32Resource" defaultValue="" />
- <ItemProperty member="codePage" name="codepage" defaultValue="0"/>
- <ItemProperty member="additionalArgs" name="additionalargs" defaultValue="" />
- <ItemProperty member="langVersion" name="langversion" defaultValue="Default"/>
- <LiteralProperty name="compiler" value="Mcs" />
- </DataItem>
-</SerializationMap> \ No newline at end of file
diff --git a/main/src/addins/TextTemplating/Mono.TextTemplating/Mono.TextTemplating.csproj b/main/src/addins/TextTemplating/Mono.TextTemplating/Mono.TextTemplating.csproj
index b6c7a0b530..488f868106 100644
--- a/main/src/addins/TextTemplating/Mono.TextTemplating/Mono.TextTemplating.csproj
+++ b/main/src/addins/TextTemplating/Mono.TextTemplating/Mono.TextTemplating.csproj
@@ -19,8 +19,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.TextTemplating\Mono.TextTemplating.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.TextTemplating\Mono.TextTemplating.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/TextTemplating/MonoDevelop.TextTemplating/MonoDevelop.TextTemplating.csproj b/main/src/addins/TextTemplating/MonoDevelop.TextTemplating/MonoDevelop.TextTemplating.csproj
index 65d1e3c3fa..61e452d98b 100644
--- a/main/src/addins/TextTemplating/MonoDevelop.TextTemplating/MonoDevelop.TextTemplating.csproj
+++ b/main/src/addins/TextTemplating/MonoDevelop.TextTemplating/MonoDevelop.TextTemplating.csproj
@@ -19,8 +19,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.TextTemplating\MonoDevelop.TextTemplating.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.TextTemplating\MonoDevelop.TextTemplating.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<EmbeddedResource Include="MonoDevelop.TextTemplating.addin.xml">
diff --git a/main/src/addins/TextTemplating/TextTransform/TextTransform.csproj b/main/src/addins/TextTemplating/TextTransform/TextTransform.csproj
index 3b059ce74d..19f100b590 100644
--- a/main/src/addins/TextTemplating/TextTransform/TextTransform.csproj
+++ b/main/src/addins/TextTemplating/TextTransform/TextTransform.csproj
@@ -19,8 +19,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Commandlineparameters>-o:out.txt in.tt</Commandlineparameters>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.TextTemplating\TextTransform.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -29,8 +29,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\MonoDevelop.TextTemplating\TextTransform.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/VBNetBinding/VBNetBinding.addin.xml b/main/src/addins/VBNetBinding/VBNetBinding.addin.xml
index a62de755ab..8a07a271d7 100644
--- a/main/src/addins/VBNetBinding/VBNetBinding.addin.xml
+++ b/main/src/addins/VBNetBinding/VBNetBinding.addin.xml
@@ -21,10 +21,6 @@
import="$(MSBuildBinPath)\Microsoft.VisualBasic.targets"
resourceHandler="MonoDevelop.VBNetBinding.VBNetResourceIdBuilder"/>
</Extension>
-
- <Extension path = "/MonoDevelop/ProjectModel/MD1SerializationMaps">
- <SerializationMap resource="md1format.xml" />
- </Extension>
<Extension path = "/MonoDevelop/Ide/FileFilters">
<FileFilter id = "VBNet"
diff --git a/main/src/addins/VBNetBinding/VBNetBinding.csproj b/main/src/addins/VBNetBinding/VBNetBinding.csproj
index 6f8c6026ca..b26b34e2e3 100644
--- a/main/src/addins/VBNetBinding/VBNetBinding.csproj
+++ b/main/src/addins/VBNetBinding/VBNetBinding.csproj
@@ -20,9 +20,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\BackendBindings\MonoDevelop.VBNetBinding.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -34,8 +34,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\BackendBindings\MonoDevelop.VBNetBinding.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
@@ -118,9 +118,6 @@
<EmbeddedResource Include="gtk-gui\gui.stetic">
<LogicalName>gui.stetic</LogicalName>
</EmbeddedResource>
- <EmbeddedResource Include="md1format.xml">
- <LogicalName>md1format.xml</LogicalName>
- </EmbeddedResource>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<ItemGroup>
diff --git a/main/src/addins/VBNetBinding/md1format.xml b/main/src/addins/VBNetBinding/md1format.xml
deleted file mode 100644
index 1451c26eda..0000000000
--- a/main/src/addins/VBNetBinding/md1format.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<SerializationMap>
- <DataItem class = "MonoDevelop.VBNetBinding.VBCompilerParameters">
- <ItemProperty member="noWarnings" name="nowarn"/>
- <ItemProperty member="optimize" name="optimize"/>
- <ItemProperty member="generateOverflowChecks" name="generateoverflowchecks"/>
- <ItemProperty member="definesymbols" name="definesymbols" />
- <ItemProperty member="additionalParameters" name="additionalParameters" />
- <ItemProperty member="defineDebug" name="defineDebug" />
- <ItemProperty member="defineTrace" name="defineTrace" />
- <ItemProperty member="debugType" name="debugType" />
- <ItemProperty member="documentationFile" name="documentationFile" />
- <ItemProperty member="warningsAsErrors" name="warningsAsErrors" />
- <ItemProperyt member="treatWarningsAsErrors" name="treatWarningsAsErrors" />
- <ItemProperty member="warningLevel" name="warningLevel" />
- </DataItem>
-</SerializationMap> \ No newline at end of file
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git.csproj b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git.csproj
index d91d832b33..e3b3b4f363 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git.csproj
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git.csproj
@@ -19,8 +19,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\VersionControl\MonoDevelop.VersionControl.Git.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\VersionControl\MonoDevelop.VersionControl.Git.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git/GitCommitDialogExtension.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git/GitCommitDialogExtension.cs
index 7c2c3f9079..9d713ec9f1 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git/GitCommitDialogExtension.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git/GitCommitDialogExtension.cs
@@ -1,10 +1,12 @@
//
// CommitDialogExtensionWidget.cs
//
-// Author:
+// Authors:
// Lluis Sanchez Gual <lluis@novell.com>
+// Andrés G. Aragoneses <knocte@gmail.com>
//
// Copyright (c) 2010 Novell, Inc (http://www.novell.com)
+// Copyright (c) 2013 Andrés G. Aragoneses
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
@@ -23,6 +25,8 @@
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
+
+using System;
using MonoDevelop.Core;
using MonoDevelop.Projects;
using MonoDevelop.Ide;
@@ -32,7 +36,10 @@ namespace MonoDevelop.VersionControl.Git
sealed class GitCommitDialogExtension: CommitDialogExtension
{
GitCommitDialogExtensionWidget widget;
-
+
+ Gtk.TextView textView;
+ Gtk.TextTag overflowTextTag;
+
public override bool Initialize (ChangeSet changeSet)
{
if (changeSet.Repository is GitRepository) {
@@ -140,6 +147,45 @@ namespace MonoDevelop.VersionControl.Git
if (success && widget.PushAfterCommit)
GitService.Push ((GitRepository) changeSet.Repository);
}
+
+ public override void CommitMessageTextViewHook (Gtk.TextView textView)
+ {
+ this.textView = textView;
+ overflowTextTag = new Gtk.TextTag ("overflow");
+ overflowTextTag.Foreground = "red";
+ overflowTextTag.ForegroundSet = true;
+ textView.Buffer.TagTable.Add (overflowTextTag);
+ textView.Buffer.Changed += OnTextChanged;
+ }
+
+ void OnTextChanged (object source, EventArgs args)
+ {
+ HighlightTextIfTooLong ();
+ }
+
+ const int maxLengthConventionForFirstLineOfCommitMessage = 50;
+
+ void HighlightTextIfTooLong ()
+ {
+ var text = textView.Buffer.Text;
+ var lines = text.Split ('\n');
+ if (lines.Length > 0 && lines [0].Length > maxLengthConventionForFirstLineOfCommitMessage) {
+ textView.TooltipText = String.Format (GettextCatalog.GetString (
+ "When using GIT, it is not recommended to surpass the character count of {0} in the first line of the commit message"),
+ maxLengthConventionForFirstLineOfCommitMessage);
+ textView.HasTooltip = true;
+
+ Gtk.TextIter start, end, unused;
+ textView.Buffer.GetBounds (out start, out unused);
+ start.ForwardChars (maxLengthConventionForFirstLineOfCommitMessage);
+
+ textView.Buffer.GetBounds (out end, out unused);
+ end.ForwardChars (lines [0].Length);
+ textView.Buffer.ApplyTag (overflowTextTag, start, end);
+ } else {
+ textView.HasTooltip = false;
+ }
+ }
}
}
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion.Unix/MonoDevelop.VersionControl.Subversion.Unix.csproj b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion.Unix/MonoDevelop.VersionControl.Subversion.Unix.csproj
index 025cc76adc..50097c2fc9 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion.Unix/MonoDevelop.VersionControl.Subversion.Unix.csproj
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion.Unix/MonoDevelop.VersionControl.Subversion.Unix.csproj
@@ -20,8 +20,8 @@
<WarningLevel>4</WarningLevel>
<ConsolePause>False</ConsolePause>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\VersionControl\MonoDevelop.VersionControl.Subversion.Unix.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -32,8 +32,8 @@
<ConsolePause>False</ConsolePause>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\VersionControl\MonoDevelop.VersionControl.Subversion.Unix.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion.Unix/MonoDevelop.VersionControl.Subversion.Unix/SvnClient.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion.Unix/MonoDevelop.VersionControl.Subversion.Unix/SvnClient.cs
index 7c0b286246..4a510a8fc0 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion.Unix/MonoDevelop.VersionControl.Subversion.Unix/SvnClient.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion.Unix/MonoDevelop.VersionControl.Subversion.Unix/SvnClient.cs
@@ -12,6 +12,7 @@ using size_t = System.Int32;
using off_t = System.Int64;
using MonoDevelop.Projects.Text;
using System.Timers;
+using System.Threading;
namespace MonoDevelop.VersionControl.Subversion.Unix
{
@@ -1136,11 +1137,16 @@ namespace MonoDevelop.VersionControl.Subversion.Unix
return IntPtr.Zero;
}
+ string oldStacktrace = String.Empty;
IntPtr TryStartOperation (IProgressMonitor monitor)
{
lock (sync) {
- if (inProgress)
+ if (inProgress) {
+ LoggingService.LogError ("Old: {0}", oldStacktrace);
+ LoggingService.LogError ("Current: {1}", Environment.StackTrace);
throw new SubversionException ("Another Subversion operation is already in progress.");
+ }
+ oldStacktrace = Environment.StackTrace;
inProgress = true;
updatemonitor = monitor;
progressData = new ProgressData ();
@@ -1242,7 +1248,7 @@ namespace MonoDevelop.VersionControl.Subversion.Unix
public long Remainder;
public long SavedProgress;
public long KBytes;
- public Timer LogTimer = new Timer ();
+ public System.Timers.Timer LogTimer = new System.Timers.Timer ();
public int Seconds;
}
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion/MonoDevelop.VersionControl.Subversion.csproj b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion/MonoDevelop.VersionControl.Subversion.csproj
index c9761420f4..27094361c1 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion/MonoDevelop.VersionControl.Subversion.csproj
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion/MonoDevelop.VersionControl.Subversion.csproj
@@ -21,9 +21,9 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\VersionControl\MonoDevelop.VersionControl.Subversion.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -36,8 +36,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\..\build\AddIns\VersionControl\MonoDevelop.VersionControl.Subversion.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl.Dialogs/CommitDialog.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl.Dialogs/CommitDialog.cs
index 68889ae8a5..fd3ae7c6f5 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl.Dialogs/CommitDialog.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl.Dialogs/CommitDialog.cs
@@ -1,3 +1,33 @@
+//
+// CommitDialog.cs
+//
+// Authors:
+// Thiago Becker (GSoC)
+// Rafael Giorgetti (GSoC)
+// Lluis Sanchez Gual <lluis@novell.com>
+// Michael Hutchinson <mhutchinson@novell.com>
+// Ungureanu Marius <teromario@yahoo.com>
+//
+// Copyright (c) 2006-2011 Novell, Inc (http://www.novell.com)
+// Copyright (c) 2013 Xamarin (http://www.xamarin.com)
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
using System;
using System.Collections;
@@ -59,6 +89,7 @@ namespace MonoDevelop.VersionControl.Dialogs
continue;
}
if (ext.Initialize (changeSet)) {
+ ext.CommitMessageTextViewHook (textview);
if (separatorRequired) {
HSeparator sep = new HSeparator ();
sep.Show ();
@@ -190,7 +221,6 @@ namespace MonoDevelop.VersionControl.Dialogs
MessageService.ShowException (ex);
res = false;
}
- System.Console.WriteLine ("RES: " + res);
if (!res) {
// Commit failed. Rollback the previous extensions
for (int m=0; m<n; m++) {
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl.Views/EditorCompareWidgetBase.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl.Views/EditorCompareWidgetBase.cs
index a3acb31b22..7c76963f9d 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl.Views/EditorCompareWidgetBase.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl.Views/EditorCompareWidgetBase.cs
@@ -108,7 +108,7 @@ namespace MonoDevelop.VersionControl.Views
this.viewOnly = viewOnly;
}
- public EditorCompareWidgetBase ()
+ protected EditorCompareWidgetBase ()
{
GtkWorkarounds.FixContainerLeak (this);
Intialize ();
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/BaseView.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/BaseView.cs
index 1bc06e7618..26462b2335 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/BaseView.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/BaseView.cs
@@ -8,7 +8,7 @@ namespace MonoDevelop.VersionControl
{
string name;
- public BaseView (string name)
+ protected BaseView (string name)
{
this.name = name;
}
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/CheckoutCommand.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/CheckoutCommand.cs
index 073b83e8ec..e17d2678a5 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/CheckoutCommand.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/CheckoutCommand.cs
@@ -67,23 +67,9 @@ namespace MonoDevelop.VersionControl
string projectFn = null;
- string[] list = System.IO.Directory.GetFiles(path);
- foreach (string str in list ) {
- if (str.EndsWith (".mds", System.StringComparison.Ordinal)) {
- projectFn = str;
- break;
- }
- }
- if ( projectFn == null ) {
- foreach ( string str in list ) {
- if (str.EndsWith (".mdp", System.StringComparison.Ordinal)) {
- projectFn = str;
- break;
- }
- }
- }
- if ( projectFn == null ) {
- foreach (string str in list ) {
+ string[] list = System.IO.Directory.GetFiles (path);
+ if (projectFn == null) {
+ foreach (string str in list) {
if (MonoDevelop.Projects.Services.ProjectService.IsWorkspaceItemFile (str)) {
projectFn = str;
break;
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/CommitDialogExtension.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/CommitDialogExtension.cs
index a509061d5e..6c51bed69f 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/CommitDialogExtension.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/CommitDialogExtension.cs
@@ -23,6 +23,10 @@ namespace MonoDevelop.VersionControl
{
return true;
}
+
+ public virtual void CommitMessageTextViewHook (Gtk.TextView textView)
+ {
+ }
/// <summary>
/// Called when the commit operation starts.
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/Repository.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/Repository.cs
index a44cbcc9f3..75cd2ac002 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/Repository.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/Repository.cs
@@ -29,12 +29,12 @@ namespace MonoDevelop.VersionControl
public event EventHandler NameChanged;
- public Repository ()
+ protected Repository ()
{
infoCache = new VersionInfoCache (this);
}
- public Repository (VersionControlSystem vcs): this ()
+ protected Repository (VersionControlSystem vcs): this ()
{
VersionControlSystem = vcs;
}
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/UrlBasedRepository.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/UrlBasedRepository.cs
index 9d474fdeb3..9178fc6554 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/UrlBasedRepository.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/UrlBasedRepository.cs
@@ -9,11 +9,11 @@ namespace MonoDevelop.VersionControl
string url;
Uri uri;
- public UrlBasedRepository ()
+ protected UrlBasedRepository ()
{
}
- public UrlBasedRepository (VersionControlSystem vcs): base (vcs)
+ protected UrlBasedRepository (VersionControlSystem vcs): base (vcs)
{
}
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/VersionControlService.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/VersionControlService.cs
index fd256365c7..b4bf1507ce 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/VersionControlService.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/VersionControlService.cs
@@ -543,7 +543,10 @@ namespace MonoDevelop.VersionControl
repo.Add (v.LocalPath, false, monitor);
}
}
-
+
+ if (entry is SolutionFolder && files.Count == 1)
+ return;
+
NotifyFileStatusChanged (new FileUpdateEventArgs (repo, parent.BaseDirectory, true));
}
diff --git a/main/src/addins/WindowsPlatform/WindowsPlatform.csproj b/main/src/addins/WindowsPlatform/WindowsPlatform.csproj
index ddd50d7057..cab8d14395 100644
--- a/main/src/addins/WindowsPlatform/WindowsPlatform.csproj
+++ b/main/src/addins/WindowsPlatform/WindowsPlatform.csproj
@@ -19,8 +19,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\WindowsPlatform.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\AddIns\WindowsPlatform.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="gdk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
diff --git a/main/src/addins/prj2make-sharp-lib/AddinInfo.cs b/main/src/addins/prj2make-sharp-lib/AddinInfo.cs
deleted file mode 100644
index 4ef96e62f5..0000000000
--- a/main/src/addins/prj2make-sharp-lib/AddinInfo.cs
+++ /dev/null
@@ -1,17 +0,0 @@
-
-using System;
-using Mono.Addins;
-using Mono.Addins.Description;
-
-[assembly:Addin ("Prj2Make",
- Namespace = "MonoDevelop",
- Version = MonoDevelop.BuildInfo.Version,
- Category = "Project Import and Export")]
-
-[assembly:AddinName ("Visual Studio .NET Project Support")]
-[assembly:AddinDescription ("Importer for VS2003 projects")]
-
-[assembly:AddinDependency ("Core", MonoDevelop.BuildInfo.Version)]
-[assembly:AddinDependency ("Ide", MonoDevelop.BuildInfo.Version)]
-[assembly:AddinDependency ("CSharpBinding", MonoDevelop.BuildInfo.Version)]
-[assembly:AddinDependency ("VBBinding", MonoDevelop.BuildInfo.Version)]
diff --git a/main/src/addins/prj2make-sharp-lib/AssemblyInfo.cs b/main/src/addins/prj2make-sharp-lib/AssemblyInfo.cs
deleted file mode 100644
index d0838d5d35..0000000000
--- a/main/src/addins/prj2make-sharp-lib/AssemblyInfo.cs
+++ /dev/null
@@ -1,9 +0,0 @@
-// Autogenerated from prj2make-sharp-lib.addin.xml
-
-using System.Reflection;
-
-[assembly: AssemblyProduct ("MonoDevelop")]
-[assembly: AssemblyTitle ("Visual Studio .NET Project Support")]
-[assembly: AssemblyDescription ("Importer for VS2003 projects")]
-[assembly: AssemblyVersion ("2.6")]
-[assembly: AssemblyCopyright ("LGPL")]
diff --git a/main/src/addins/prj2make-sharp-lib/ChangeLog b/main/src/addins/prj2make-sharp-lib/ChangeLog
deleted file mode 100644
index 6cae48ac22..0000000000
--- a/main/src/addins/prj2make-sharp-lib/ChangeLog
+++ /dev/null
@@ -1,1364 +0,0 @@
-2010-05-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * VS2003ProjectFileFormat.cs: Remove option of converting to
- MD 1.0 format.
-
-2010-03-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * prj2make-sharp-lib.addin.xml: Bumped MD version.
-
-2010-03-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am:
- * prj2make-sharp-lib.csproj:
- * VS2003ProjectFileFormat.cs:
- * prj2make-sharp-lib.addin.xml: Merged MD.Projects into
- MD.Core, and MD.Projects.Gui, MD.Core.Gui and MD.Components
- into MD.Ide.
-
-2010-02-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am: Remove asp.net dependency.
-
-2009-10-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * prj2make-sharp-lib.addin.xml: Bump MD version.
-
-2009-10-29 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.csproj: Flush.
-
-2009-10-09 Mike Krüger <mkrueger@novell.com>
-
- * MsPrjHelper.cs: Track namespace renamings.
-
-2009-10-08 Ankit Jain <jankit@novell.com>
-
- * prj2make-sharp-lib.csproj: Use \ instead of '/' in the Import.
-
-2009-10-08 Ankit Jain <jankit@novell.com>
-
- * prj2make-sharp-lib.csproj: Add md.targets .
-
-2009-10-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * prj2make-sharp-lib.addin.xml: Update license.
-
-2009-10-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * prj2make-sharp-lib.addin.xml: Bump MD version.
-
-2009-09-28 Lluis Sanchez Gual <lluis@novell.com>
-
- * MsPrjHelper.cs: Use the new DotNetAssemblyProject class
- instead of DotNetProject, which is now abstract.
-
-2009-09-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * MsPrjHelper.cs: Create default configurations for the
- imported solution. Fixes bug #504600 - Rebuild solution
- doesn't trigger a real build.
-
-2009-08-26 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.csproj: Updated dependencies. We now
- depend on gtk# 2.12.8, Mono 2.4, and Mono.Addins 0.4.
-
-2009-08-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * CsprojInfo.cs:
- * MsPrjHelper.cs:
- * VS2003ProjectFileFormat.cs: Make sure the project has the
- 2003 format before trying to import it. Properly import
- assembly references.
-
-2009-08-13 Lluis Sanchez Gual <lluis@novell.com>
-
- * MsPrjHelper.cs: Use the new AssemblyContext class to query
- and resolve assemblies.
-
-2009-08-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * VS2003ProjectFileFormat.cs: Add support for reading vs2003
- projects and solutions when not running in the IDE.
-
-2009-08-10 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.csproj: Don't make local copies of
- project references.
-
-2009-07-03 Mike Krüger <mkrueger@novell.com>
-
- * Makefile.am:
- * prj2make-sharp-lib.csproj: Added MonoDevelop.Refactoring
- reference. (otherwise build would break)
-
-2009-06-15 Michael Hutchinson <mhutchinson@novell.com>
-
- * MsPrjHelper.cs: Track assembly lookup APIs.
-
-2009-05-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * VS2003ProjectFileFormat.cs: Use the new FilePath class for
- handling file and directory paths.
-
-2009-05-01 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * prj2make-sharp-lib.csproj:
- * prj2make-sharp-lib.addin.xml:
- * MSBuildProjectServiceExtension.cs:
- * SilverlightMSBuildProjectExtension.cs: Remove unused code
- and extensions.
-
-2009-04-17 Mike Kestner <mkestner@novell.com>
-
- * prj2make-sharp-lib.csproj: don't require specific
- gtk-sharp version.
-
-2009-04-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * prj2make-sharp-lib.addin.xml: Bump MD version.
-
-2009-04-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * MsPrjHelper.cs: Add support for multiple target runtimes.
-
-2009-03-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * prj2make-sharp-lib.csproj: Don't local-copy project refs.
-
-2009-03-13 Mike Krüger <mkrueger@novell.com>
-
- * prj2make-sharp-lib.csproj: Moved text editor to core
-
-2009-03-10 Mike Krüger <mkrueger@novell.com>
-
- * Makefile.am:
- * prj2make-sharp-lib.csproj: Monodevelop changed the reference
- a bit.
-
-2009-03-10 Mike Krüger <mkrueger@novell.com>
-
- * Makefile.am:
- * prj2make-sharp-lib.csproj: Updated nrefactory references.
-
-2009-02-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * MsPrjHelper.cs: Track api changes.
-
-2009-02-08 Michael Hutchinson <mhutchinson@novell.com>
-
- * prj2make-sharp-lib.csproj: Exorcise more unwanted local
- copy.
-
-2009-02-06 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.mdp:
- * prj2make-sharp-lib.csproj: Migrated to MSBuild file format.
-
-2009-02-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * AssemblyInfo.cs:
- * prj2make-sharp-lib.addin.xml: Bump MD version.
-
-2009-02-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.mdp: Fix target gtk# version.
-
-2009-02-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.mdp: Flush.
-
-2009-01-30 Mike Krüger <mkrueger@novell.com>
-
- * Makefile.am:
- * prj2make-sharp-lib.mdp: Fixed project (didn't compile without
- mono.texteditor reference on my system).
-
-2009-01-26 Michael Hutchinson <mhutchinson@novell.com>
-
- * prj2make-sharp-lib.mdp: Flush project format changes.
-
-2008-12-12 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.mdp: All projects now require fx 3.5.
-
-2008-12-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * VS2003ProjectFileFormat.cs: Track API changes.
-
-2008-12-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.mdp: Don't require a specific version of
- Mono.Addins.
-
-2008-12-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * PrjxInfo.cs:
- * Makefile.am:
- * PrjHelper.cs:
- * MsPrjHelper.cs:
- * MdPrjHelper.cs:
- * sharp_d_prjx.cs:
- * sharp_d_cmbx.cs:
- * prj2make-sharp-lib.mdp:
- * VS2003ProjectFileFormat.cs: Removed a bunch of unused code and fixed
- some issues with the importer. Fixes bug #450209 - Unable to load
- SharpSSH VS 2003 project: "Object reference not set to an instance of
- an object".
-
-2008-12-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am: Make it work for parallel build.
-
-2008-12-02 Michael Hutchinson <mhutchinson@novell.com>
-
- * Makefile.am:
- * AssemblyInfo.cs:
- * AssemblyInfo.cs.in:
- * prj2make-sharp-lib.mdp: Add AssemblyInfo.cs files that are
- autogenerated from the addin manifests.
-
-2008-11-05 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Bump MD version.
-
-2008-10-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am, prj2make-sharp-lib.mdp: Fix build again.
-
-2008-10-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am, prj2make-sharp-lib.mdp: Fix build.
-
-2008-10-01 Michael Hutchinson <mhutchinson@novell.com>
-
- * MsPrjHelper.cs, SilverlightMSBuildProjectExtension.cs,
- MSBuildProjectServiceExtension.cs: Track API.
-
-2008-09-12 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.mdp: Updated generated code.
-
-2008-07-29 Mike Krüger <mkrueger@novell.com>
-
- * prj2make-sharp-lib.mdp: Removed some parts of the documentation
- service.
-
-2008-06-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * MsPrjHelper.cs: Track api changes.
-
-2008-06-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Fix extension paths.
-
-2008-06-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Bump MD version.
-
-2008-05-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * VS2003ProjectFileFormat.cs: Track api changes.
-
-2008-05-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * MSBuildProjectServiceExtension.cs: Replaced
- ICompilerResult/DefaultCompilerResult/CompilerResults by a new
- BuildResult class, which has owner information at error level, so
- it is possible to know which project generated an error when
- building a solution. Updated Task and TaskService to use the new
- owner information.
-
-2008-05-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * PrjHelper.cs, MsPrjHelper.cs, VS2003ProjectFileFormat.cs,
- MSBuildProjectServiceExtension.cs, Makefile.am,
- prj2make-sharp-lib.mdp: New project model changes.
-
-2008-03-04 Mike Krüger <mkrueger@novell.com>
-
- * VS2003SlnFileFormat.cs, VS2003ProjectFileFormat.cs, SlnFileFormat.cs:
- Worked on gnome hig compliant alerts.
-
-2008-01-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Update MD version.
-
-2008-01-24 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs: Simplification, AddExtensionNodeHandler calls
- the handler for all existing extensions. Thanks to lluis.
-
-2008-01-24 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs: Read the full list of extensions only at init
- time and handle ExtensionChange.Add correctly.
-
-2008-01-23 Ankit Jain <jankit@novell.com>
-
- Fix bug#353042.
- * SlnData.cs (HeaderComment): New.
- (VersionString): New.
- * SlnFileFormat.cs: Retain the header comment string and version and use
- that when writing .sln .
-
-2008-01-22 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Updated add-in category and description.
-
-2008-01-22 Ankit Jain <jankit@novell.com>
-
- * MsPrjHelper.cs: Map "Content" to BuildAction.Nothing, better than
- Exclude.
-
-2008-01-22 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs: Add try/catch for event handlers.
-
-2008-01-20 Ankit Jain <jankit@novell.com>
-
- * Change Console.WriteLines to LoggingService calls.
-
-2008-01-19 Ankit Jain <jankit@novell.com>
-
- * MSBuildProjectExtension.cs (IsLanguage): New.
- (LanguageId): New.
- * DefaultMSBuildProjectExtension.cs: Override the language properties.
- * CSharpMSBuildProjectExtension.cs: Likewise.
- * VBNetMSBuildProjectExtension.cs: Likewise.
- * MSBuildFileFormat.cs (ProjectTypeGuids): Rename to ..
- (LanguageTypeGuids): .. this. Fill this from the extensions.
- * SlnFileFormat.cs: Remove hardcoded .csproj/.vbproj.
- * Utils.cs (GetLanguage): Use the extensions for this.
-
-2008-01-14 Ankit Jain <jankit@novell.com>
-
- * VS2003SlnFileFormat.cs: Handle being called in a non-gui mode.
-
-2007-12-21 Miguel de Icaza <miguel@novell.com>
-
- * Utils.cs (MapAndResolvePath): this routine only value add was to
- call Path.GetFullPath, the problem is that the internals of
- SlnMaker.MapPath could be internally broken if not fully formed
- internally (in particular when coping with non-existing
- directories and files).
-
- * MsPrjHelper.cs (SlnMaker.MapPath): a handful of changes to help
- consumers of this class. It now always returns paths that are
- Path.GetFullPath processed first. This just makes the code
- homogenous.
-
- Uses Directory.GetFileSystemEntries instead of trying to be smart
- about Directories and Files and handling them separatedly, as in
- Unix symlinks are not accounted for (which breaks if the full path
- name contains symlinks).
-
- It now also handles "..", which avoids the bug of OutputPath
- entries ending up with "../DIR/../DIR/../DIR" as I reported
- privately to Ankit a few days ago.
-
- This should fix the Paint.NET 3 problems.
-
-2007-12-18 Ankit Jain <jankit@novell.com>
-
- Fix bug #349362
- * CSharpResourceIdBuilder.cs:
- * VBNetResourceIdBuilder.cs: If the source file has no class defined,
- then treat it as if the resource had no dependent source file.
- This also fixes my previous incorrect patch for bug #349099.
-
-2007-12-18 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (LoadNestedProjects): Handle empty section.
-
-2007-12-17 Ankit Jain <jankit@novell.com>
-
- Fix bug #349099.
- * CSharpResourceIdBuilder.cs:
- * VBNetResourceIdBuilder.cs: Allow both class and struct.
-
-2007-12-17 Ankit Jain <jankit@novell.com>
-
- * Minor fixes like use String.Empty instead of "" etc.
-
-2007-12-14 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs: Use monitor's Begin/EndTask.
- * SlnFileFormat.cs: Likewise.
-
-2007-12-13 Lluis Sanchez Gual <lluis@novell.com>
-
- * MdPrjHelper.cs, DefaultMSBuildProjectExtension.cs, MSBuildFileFormat.cs:
- Fix warnings.
-
-2007-12-12 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Bump add-in versions.
-
-2007-12-11 Ankit Jain <jankit@novell.com>
-
- * DefaultMSBuildProjectExtension.cs: Improve error message.
-
-2007-12-11 Ankit Jain <jankit@novell.com>
-
- Fix bug #324333.
- * SlnFileFormat.cs (SolutionFolder): New.
- (LoadSolution): Use the new SolutionFolder class for solution folders.
-
-2007-12-07 Ankit Jain <jankit@novell.com>
-
- Fix bug #341643.
- * DefaultMSBuildProjectExtension.cs: Set DeployProperties.UseProjectRelativePath
- for all deploy files.
- * MSBuildFileFormat.cs (HandleFilePropertyChanged): Set "CopyToOutputDirectory"
- if build action changed to FileCopy.
- * Makefile.am:
- * prj2make-sharp-lib.mdp: Add reference to MonoDevelop.Deployment project.
-
-2007-12-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml, Makefile.am, prj2make-sharp-lib.mdp:
- Directory reorganization.
-
-2007-11-24 David Makovský (Yakeen) <yakeen@sanyas-on.net>
-
- * MSBuildProjectServiceExtension.cs: corected translatable string to
- support plural forms.
-
-2007-11-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * MsPrjHelper.cs: Fix build. EnableViewState is not used anymore.
-
-2007-11-09 Michael Hutchinson <mhutchinson@novell.com>
-
- * DefaultMSBuildProjectExtension.cs, SlnFileFormat.cs, pkgconfiginvoker.cs,
- MSBuildFileFormat.cs: Track LoggingService API changes. Remove some
- Console.WriteLines that were duplicating the logging.
-
-2007-11-02 Lluis Sanchez Gual <lluis@novell.com>
-
- * SlnFileFormat.cs: Use RootCombine instead of CurrentOpenCombine when
- possible.
-
-2007-10-29 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Bump MD version.
-
-2007-10-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.mdp: Project file names updated by change in MD path
- functions.
-
-2007-10-23 Ankit Jain <jankit@novell.com>
-
- * SlnData.cs (Guid): Should have enclosing {}.
-
-2007-10-12 Mike Krüger <mkrueger@novell.com>
-
- * CSharpResourceIdBuilder.cs, VBNetMSBuildProjectExtension.cs,
- CSharpMSBuildProjectExtension.cs, DefaultMSBuildProjectExtension.cs,
- Utils.cs, SlnFileFormat.cs, MSBuildFileFormat.cs: Applied changes that
- were neccassary for to the new FileService.
-
-2007-10-09 Ankit Jain <jankit@novell.com>
-
- * CSharpResourceIdBuilder.cs: Handle localized resources.
- * VBNetResourceIdBuilder.cs: Handle localized resources.
- * Utils.cs (TrySplitResourceName): New.
-
-2007-09-28 Ankit Jain <jankit@novell.com>
-
- * MsPrjHelper.cs (GetContents): Set DependsOn to its absolute path.
-
-2007-09-28 Ankit Jain <jankit@novell.com>
-
- * DefaultMSBuildProjectExtension.cs (FileToXmlElement): Handle existing
- XmlElements. Update LogicalName and DependentUpon correctly.
- * MSBuildFileFormat.cs (WriteFileInternal): Always update XmlElements for
- project files.
- (HandleFileRenamed): Use FileToXmlElement to correctly update the xml
- element.
- * Utils.cs (RemoveChild): New.
-
-2007-09-27 Ankit Jain <jankit@novell.com>
-
- * MSBuildProjectExtension.cs: New.
- * DefaultMSBuildProjectExtension.cs: New.
-
- Move language specific stuff from MSBuildFileFormat into the respective extensions.
- * CSharpMSBuildProjectExtension.cs: New.
- * VBNetMSBuildProjectExtension.cs: New.
- * SilverlightMSBuildProjectExtension.cs: New.
-
- * Utils.cs: New. Move utility methods from MSBuildFileFormat to here.
- * MSBuildData.cs (ExtensionChain): New.
- (FlavorPropertiesParent): New.
- (TypeGuids): New.
-
- * SlnFileFormat.cs: Track api changes.
-
- * Makefile.am: Update.
- * prj2make-sharp-lib.addin.xml: Update. Add new ExtensionPoint for
- MSBuildProjectExtension.
-
-2007-09-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Bump MD version.
-
-2007-09-17 Ankit Jain <jankit@novell.com>
-
- * MSBuildProjectServiceExtension.cs (GetDefaultResourceId): Split into
- this and ...
- (GetDefaultResourceIdInternal): this. static method.
- * MsPrjHelper.cs (SlnMaker.GetContents): Set resource id using vs.net
- rules.
-
-2007-09-17 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (WriteFileInternal): Emit RootNamespace for
- global config element.
-
-2007-09-17 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (WriteFileInternal): Emit RootNamespace for C#
- also. Derived from patch by Eric Butler <eric@extremeboredom.net>
-
-2007-09-15 Ankit Jain <jankit@novell.com>
-
- * MSBuildProject.cs: Remove.
- * MSBuildSolution.cs: Remove.
-
- * MSBuildFileFormat.cs (GetMSBuildData): New.
- Update to track changes.
- * SlnFileFormat.cs (.cctor): Add handler for HandleAddEntry.
- (GetSlnData): New.
- (HandleAddEntry):
- (SetHandlers):
- (HandleCombineEntryAdded):
- (ConvertToMSBuild): Move here from MSBuildSolution.
- Update to track changes.
- * SlnData.cs (ProjectsByGuid): Move here from MSBuildSolution.
- * MSBuildProjectServiceExtension.cs (GetDefaultResourceId): Override.
- Moved from MSBuildProject to here.
-
- * MsPrjHelper.cs: Update to use ProjectService.GetDefaultResourceId .
- * VS2003ProjectFileFormat.cs: Update.
- * VS2003SlnFileFormat.cs: Update.
-
- * Makefile.am: Update.
- * prj2make-sharp-lib.mdp: Update.
-
-2007-09-13 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (ReferenceToXmlElement): Handle invalid assembly
- reference.
-
-2007-09-12 Ankit Jain <jankit@novell.com>
-
- Fix bug#82688.
- * MSBuildFileFormat.cs (ReferenceToXmlElement): Set Name for project
- reference only when creating a new element.
- * SlnFileFormat.cs (LoadSolution): Resolve any unresolved project
- references using the project guids.
-
-2007-09-11 Ankit Jain <jankit@novell.com>
-
- Fix bug#82736.
- * MSBuildFileFormat.cs (ReadConfig): Unescape OutputPath.
-
-2007-08-23 Ankit Jain <jankit@novell.com>
-
- * MSBuildProjectServiceExtension.cs (GenerateXamlPartialClass): Generate
- partial classes with xamlg only if required.
-
-2007-08-22 Ankit Jain <jankit@novell.com>
-
- Fix bug #82517.
- * CsprojInfo.cs (LoadPrjFromFile): Use the 'using' pattern for FileStream.
- (.ctor): Rethrow exception.
- * MsPrjHelper.cs (ParseSolution): Add 'monitor' param. Use monitor for
- reporting errors. We stop trying to load the solution if any of the projects
- fail to load.
- (MsSlnHelper): Add 'monitor' param.
- * PrjHelper.cs (MakerMain): Track changes in api.
-
-2007-08-21 Andrés G. Aragoneses <knocte@gmail.com>
-
- Improve fix for bug #82398.
- * MSBuildProjectServiceExtension.cs (GenerateXamlPartialClass): Use MONO_IOMAP=drive,
- and only on Unix.
-
-2007-08-14 Ankit Jain <jankit@novell.com>
-
- Fix bug #82398.
- * MSBuildProjectServiceExtension.cs (GenerateXamlPartialClass): Run with
- xamlg with MONO_IOMAP=all.
-
-2007-08-14 Lluis Sanchez Gual <lluis@novell.com>
-
- * SlnFileFormat.cs: Small performance improvement in CanReadFile. Added
- missing null checks in GetSlnFileVersion.
-
-2007-08-13 Ankit Jain <jankit@novell.com>
-
- Fix bug #82389
- * MSBuildFileFormat.cs (ReadItemGroups): Handle "CopyToOutputDirectory"
- tag. We support this only for non-build files currently.
- (FileToXmlElement): Emit CopyToOutputDirectory for FileCopy files.
-
-2007-08-13 Ankit Jain <jankit@novell.com>
-
- Fix bug #82343.
- * MSBuildFileFormat.cs (WriteFileInternal): Use "\r\n" as new line chars
- to stay compatible with vs2005 project files.
- * SlnFileFormat.cs (WriteFileInternal): Small compatibility fixes.
-
-2007-08-13 Ankit Jain <jankit@novell.com>
-
- * MSBuildProjectServiceExtension.cs: Add missing copyright/license.
-
-2007-08-13 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs: Small compatibility fixes.
-
-2007-08-10 Ankit Jain <jankit@novell.com>
-
- Fix bug #82394.
- * MSBuildProjectServiceExtension.cs (Build): Abort build if error in
- generating partial classes with xamlg.
- (GenerateXamlPartialClass): Report any errors with CompilerError. Parse
- line/col numbers also.
- (RegexErrorLinePos): New.
-
-2007-08-10 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs: Allow version 10.00 also.
- * MSBuildFileFormat.cs (ReadItemGroup): Handle SilverlightPage
- ItemGroup.
- * MSBuildProjectServiceExtension.cs: New. Handle generation of partial
- classes for SilverlightPages.
- * prj2make-sharp-lib.addin.xml: Add the ProjectServiceExtension.
- * Makefile.am: Update.
- * prj2make-sharp-lib.mdp: Update.
-
-2007-08-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml, Makefile.am, prj2make-sharp-lib.mdp:
- Reorganized the extension point hierarchy. Embedded all add-in manifests
- as resources.
-
-2007-07-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib-Commands.cs: Removed unused file.
-
-2007-07-11 Ankit Jain <jankit@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Update Name, Description and Authors.
-
-2007-07-10 Ankit Jain <jankit@novell.com>
-
- * MsPrjHelper.cs (GetSlnFileVersion): Use static Regex objects -
- SlnFileFormat.SlnVersionRegex and SlnFileFormat.ProjectRegex .
- * VS2003SlnFileFormat (GetSlnFileVersion): Likewise.
- * SlnFileFormat.cs (SlnVersionRegex):
- (ProjectRegex): Make internal.
-
-2007-07-10 Ankit Jain <jankit@novell.com>
-
- * MsPrjHelper.cs (projNameInfo):
- (projGuidInfo): Should not be static.
- (ParseSolution): Use 'using' pattern with the StreamReader.
- (CreatePrjxFromCsproj): Use 'using' pattern with the TextFileReader.
- Set the fileName on the project object after it has been read. This
- ensures that in case of unreadable/non-existant file, user gets a useful
- error.
-
-2007-06-18 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (CanonicalizePath): New. Escapes, normalizes and
- converts '/' to '\\' for a path.
- Update code to use this when emitting paths to the *proj file.
- * SlnFileFormat.cs (WriteProjects): Emit path using windows path
- seperator.
- (LoadSolution): Use SlnMaker.MapPath instead of the local copy.
- (MapPath): Remove, unused now.
-
-2007-06-18 Ankit Jain <jankit@novell.com>
-
- * MSBuildSolution.cs (NeedsReload): Override. Return false for solution
- folders.
-
-2007-06-18 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (FileToXmlElement): Emit a "Link" element for
- files external to the project.
-
-2007-06-07 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (NormalizeRelativePath): Moved to
- Runtime.FileService .
- * SlnFileFormat.cs: Track api change.
- * CSharpResourceIdBuilder.cs: Track api change.
-
-2007-06-05 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (ReferenceToXmlElement): Handle invalid project
- reference.
- (WriteFileInternal): OptionExplicit and OptionStrict values need to be
- written as On/Off.
-
-2007-06-01 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (ReadItemGroups): Don't ignore resources external
- to the project directory. These now get handled by the *ResourceIdBuilder.
- * CSharpResourceIdBuilder.cs: If the file is external to the project,
- then use only the filename.
-
-2007-06-01 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (ReadItemGroups): If reference name cannot be
- resolved, then try to find the correct case for the assembly name.
- (AssemblyNamesTable): New.
-
-2007-05-31 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs: Don't remove './' from the paths. VS2005 is not
- able to handle paths with '/' but no './' prefix.
-
-2007-05-31 Ankit Jain <jankit@novell.com>
-
- Fix #81776.
- * MSBuildFileFormat.cs (Escape): New.
- (Unescape): New.
- MSBuild literals need to be escaped/unescaped.
- Update code to escape/unescape relevant values.
-
-2007-05-29 Ankit Jain <jankit@novell.com>
-
- * MsPrjHelper.cs (MapPath): Small optimization. Return path if it
- exists.
-
-2007-05-24 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs: Remove "./" prefixes from paths before emitting.
- * MSBuildFileFormat.cs: Likewise.
- (NormalizeRelativePath): New. Taken from AutotoolsContext.cs .
-
-2007-05-22 Ankit Jain <jankit@novell.com>
-
- * MsPrjHelper.cs (CreatePrjxFromCsproj): Rethrow the exception.
- (MsSlnToCmbxHelper): Likewise.
-
-2007-05-18 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (FileToXmlElement): Ignore directories for
- BuildAction.Compile, return null.
- Update code to avoid adding nulls to ProjectFileElements.
-
-2007-05-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am, prj2make-sharp-lib.mdp: Updated.
-
-2007-05-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml, Makefile.am: Flush
-
-2007-05-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml, Makefile.am: Migration to Mono.Addins.
-
-2007-05-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * MonoDevelop.Projects/Combine.cs,
- MonoDevelop.Projects/CombineEntryEventArgs.cs,
- MonoDevelop.Projects.Parser/DefaultParserService.cs: Added a
- Reloading property to the argument of the entry add/remove events
- of Combine, which is set to true if the entry is being only
- reloaded, not actually removed/added to the combine.
-
-2007-04-27 Ankit Jain <jankit@novell.com>
-
- * MSBuildSolution.cs (UpdateProjectReferences): Remove.
-
-2007-04-27 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (WriteNestedProjects): Add @root param. Nested
- project info should be emitted wrt @root.
-
-2007-04-26 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (GetExportFiles): Implement.
- * SlnFileFormat.cs (GetExportFiles): Implement.
-
-2007-04-26 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (HandleFilePropertyChanged): ProjectFile.DependsOn can
- be null.
-
-2007-04-26 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (WriteFile): Allow writing for non-root combines
- which don't have a msbuild combine as parent. Convert any non-msbuild
- child projects to msbuild format, and Save all child entries.
- * MSBuildFileFormat.cs (.ctor): Remove .ctor with @language parameter.
- (WriteFileInternal): Always save updated References.
- (ReferenceToXmlElement): Update if element already exists.
- * MSBuildSolution.cs (.cctor): IdeApp.ProjectOperations could be null
- when invoked from command line.
- (HandleAddEntry): Remove call to UpdateProjectReferences.
- (ConvertToMSBuild): Simplify. Change the fileformat, if required, and
- Save.
- * SlnData.cs (.ctor): New constructors for setting the guid.
- * VS2003SlnFileFormat.cs, VS2003ProjectFileFormat.cs: Track api changes.
-
-2007-04-19 Lluis Sanchez Gual <lluis@novell.com>
-
- * VS2003SlnFileFormat.cs, VS2003ProjectFileFormat.cs: Track api
- changes.
- * MSBuildSolution.cs, prj2make-sharp-lib.addin.xml, SlnFileFormat.cs,
- MSBuildFileFormat.cs: Merge the proj and sln file formats in a
- single msbuild file format which can handle both types of files.
- * Makefile.am, prj2make-sharp-lib.mdp: Updated.
-
-2007-03-29 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs: Write out list of files and references in
- WriteFile instead of in SaveProject.
- * MSBuildSolution.cs: Cannot convert a non-dotnet project.
-
-2007-03-29 Lluis Sanchez Gual <lluis@novell.com>
-
- * VS2003SlnFileFormat.cs, VS2003ProjectFileFormat.cs: VS2003 file
- format can't write files.
- * prj2make-sharp-lib.mdp: Disable local-copy references.
-
-2007-02-21 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs: Don't swallow exceptions. Catch specific
- exceptions.
-
-2007-02-20 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs: Avoid issuing duplicate warnings.
-
-2007-02-20 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs: Avoid creating unnecessary guids.
-
-2007-02-20 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs: Don't use the file service for file moves, it might
- have side effects.
- * MSBuildFileFormat.cs: Likwise.
- * VS2003ProjectFileFormat.cs: Add copyright notice.
- * VS2003SlnFileFormat.cs: Likwise.
-
-2007-02-20 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs: Project type guids are per-project type, support
- that.
- (WriteProjects): Add a 'monitor' param.
-
-2007-02-19 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (WriteFile): Use File.Delete for deleting temporary
- files.
- * MSBuildFileFormat.cs (WriteFile): Likewise.
- (CanReadFile): Use XmlReader.MoveToContent to get to the content nodes.
- (LoadProject): Skip non-element (eg. comment) nodes when looking for
- root.
- * VS2003ProjectFileFormat.cs (CanReadFile): Use XmlReader.MoveToContent to
- get to the content nodes.
-
-2007-02-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Change add-in versions to 0.13.
-
-2007-02-15 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.mdp: Updated.
-
-2007-02-13 Ankit Jain <jankit@novell.com>
-
- * VS2003SlnFileFormat.cs: New.
- * VS2003ProjectFileFormat.cs: New.
- * MSBuildProject.cs (GetDefaultResourceIdInternal): Make static.
- * MsPrjHelper.cs (CreatePrjxFromCsproj): Add new overload.
- (MsSlnToCmbxHelper): Likewise.
- Set DefaultNamespace. Set resource id.
- * MSBuildSolution.cs (HandleAddEntry): Handle adding vs2003 sln/project.
- (ConvertToMSBuild): Make internal.
- (UpdateProjectReferences): Likewise.
- * prj2make-sharp-lib.addin.xml: Remove references to importing VS2003 project.
- Add new file formats.
- * SlnFileFormat.cs: Add null check.
- * MSBuildFileFormat.cs (CanReadFile): Check root element of the *proj file.
- Make condition regex static.
- * prj2make-sharp-lib.mdp, Makefile.am: Sync mdp project with makefile.
-
-2007-02-12 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs: Make regex objects static.
-
-2007-02-12 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (CanReadFile): Check sln version.
- (LoadSolution): Likewise. Handle invalid project paths.
- (GetSlnFileVersion): Fix.
- * MSBuildFileFormat.cs (WriteFile): Throw if @node is not a
- DotNetProject.
- (FileToXmlElement): Set DependentUpon only if required.
-
-2007-02-07 Lluis Sanchez Gual <lluis@novell.com>
-
- * MsPrjHelper.cs: Use a TextFileReader to open the VS file, since it
- can auto-detect the file encoding.
- * prj2make-sharp-lib.mdp: Minor update.
-
-2007-02-01 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (ReadItemGroups): Check for invalid paths.
- (GetValidPath): New.
-
-2007-01-27 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (ReferenceToXmlElement): Use System.Reflection to
- get assembly name instead of cecil.
- * Makefile.am: Remove reference to Mono.Cecil .
-
-2007-01-24 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs: Remove use of StreamReader.EndOfStream to be
- compilable with mono 1.1.13.8
-
-2007-01-20 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (HandleCombineEntryAdded):
- (SetHandlers):
- (ConvertToMSBuild):
- (UpdateProjectReferences): Move to ..
- * MSBuildSolution.cs: .. here.
- * MSBuildFileFormat.cs (ReadConfig): Fix a warning.
-
-2007-01-19 Ankit Jain <jankit@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Add dependency on VBBinding.
- Fix bug #80555.
-
-2007-01-18 Marek Sieradzki <marek.sieradzki@gmail.com>
-
- * MsPrjHelper.cs: Remove warning.
-
-2007-01-09 Lluis Sanchez Gual <lluis@novell.com>
-
- * MSBuildSolution.cs, SlnFileFormat.cs: Track api changes.
-
-2006-12-28 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (LoadSolution): Set Version to "0.1". Temporary hack.
- * MSBuildFileFormat.cs (LoadProject): Likewise.
-
-2006-12-27 Ankit Jain <jankit@novell.com>
-
- * SlnData.cs (SectionExtras): New.
- * SlnFileFormat.cs (LoadProjectConfigurationMappings): Preserve lines
- that we cannot parse or correspond to projects that could not load.
- (WriteFileInternal): Write lines that we could not parse when reading.
-
-2006-12-26 Ankit Jain <jankit@novell.com>
-
- * MSBuildSolution.cs (HandleAddEntry): Fix order of arguments to AskQuestion.
-
-2006-12-26 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (LoadProjectConfigurationMappings): Update to
- changes.
- (FindCombineConfigurationEntry): Replace with ...
- (GetConfigEntryForProject): ... this. Create the entries if not found.
- (GetConfigEntry): New.
-
-2006-12-22 Ankit Jain <jankit@novell.com>
-
- * MSBuildSolution.cs:
- * SlnFileFormat.cs:
- * MSBuildFileFormat.cs:
- Use GettextCatalog.GetString for all user visibile strings, except debug
- output.
-
-2006-12-22 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (LoadSolution): Preserve the project's sln lines
- if the project loading fails.
-
-2006-12-21 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (SetForNullCondition): New.
- (CheckNullCondition): New.
- New methods to get default values for config and platform.
- (ReadConfig): Add 'default_platform' param.
- (ParseCondition): Left side of the condition decides the number of
- elements returned.
- (SaveProject): Emit elements for default Configuration and Platform,
- set to "Debug" and "AnyCPU".
-
-2006-12-19 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (WriteFileInternal): Fix typo in writing default
- Platform.
-
-2006-12-18 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (LoadSolution): Don't overwrite the project name.
- * MSBuildFileFormat.cs (SetupHandlers): Re-enable NameChanged event
- handler.
- (HandleRename): Ignore if the project is not part of a combine.
-
-2006-12-18 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (LoadProjectConfigurationMappings): Config name can
- have a '.' in it, handle that.
-
-2006-12-18 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (WriteProjectConfigurations): Temporary workaround
- to allow importing of projects/solutions into a msbuild solution to work.
- Minor refactoring.
- Line numbers are 1-based.
-
-2006-12-18 Ankit Jain <jankit@novell.com>
-
- * MSBuildSolution.cs (ProjectsByGuid): New.
- * SlnFileFormat.cs: Treat config names like 'Debug|Any CPU' as the
- config name for md, i.e., don't split. Generate ProjectConfigurationPlatforms
- in the .sln file.
- (WriteFileInternal): Generate SolutionConfigurationPlatforms and
- ProjectConfigurationPlatforms.
- (WriteProjectConfigurations): New.
- (HandleCombineEntryAdded): Add projects from the new combine to the root
- combine's ProjectsByGuid table.
- (LoadSolution): Add project to the guid table. Emit exception message,
- and ReportWarning. Load ProjectConfigurationPlatforms.
- (LoadProjectConfigurationMappings): New.
- (FindCombineConfigurationEntry): New.
- (LoadConfigurations): Rename to ..
- (LoadSolutionConfigurations): .. this.
-
- * MSBuildFileFormat.cs: Treat 'Debug|Any CPU' as config name, but write
- back correctly to the *proj file.
- (GetConfigName): New.
- (GetConfigPlatform): New.
-
-2006-12-17 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.mdp: Added missing files.
- * SlnFileFormat.cs, MSBuildFileFormat.cs: Track changes in the
- FileService class.
-
-2006-12-15 Ankit Jain <jankit@novell.com>
-
- * IResourceIdBuilder.cs: New.
- * CSharpResourceIdBuilder.cs: New.
- * VBNetResourceIdBuilder.cs: New.
-
- * MSBuildFileFormat.cs: Move MSBuildData and MSBuildProject classes to ..
- * MSBuildData.cs: .. this and ..
- * MSBuildProject.cs: .. this.
-
- * SlnFileFormat.cs: Move SlnData and MSBuildSolution classes to ..
- * SlnData.cs: .. this and ..
- * MSBuildSolution.cs : .. this.
-
- * Makefile.am: Add new files.
-
-2006-12-15 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (GetDefaultResourceIdInternal): Return null if
- no class name is found.
-
-2006-12-15 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (ReadItemGroups): Add a 'monitor' param.
- Resource file cannot be outside the project directory.
- DependentUpon is relative to the directory of the embedded resource.
- (FileToXmlElement): Write DependentUpon info.
- (HandleFilePropertyChanged): Likewise.
-
- (MSBuildProject.GetDefaultResourceIdInternal): Build embedded resource
- id when the file depends on a cs file.
- (GetNextCSToken): Very Simple tokenizer for c# files.
-
-2006-12-13 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (ReadConfig): Read Win32Resource.
- (WriteFileInternal): Write Win32Resource.
- (ReadItemGroups): Emit a warning if Include attribute is not found.
-
-2006-12-12 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (SlnFileFormat.WriteFile): Write to a temporary file
- and if successful, then rename to the intended file.
- Split into this and ..
- (SlnFileFormat.WriteFileInternal): .. this. Preserve text corresponding
- to projects that we could not load.
- (SlnFileFormat.LoadSolution): Use MSBuildSolution instead of Combine.
- (SlnFileFormat.HandleCombineEntryAdded): Move code for updating project
- references to ..
- (SlnFileFormat.UpdateProjectReferences): .. here.
- (SlnFileFormat.ConvertToMSBuild): Return CombineEntry. Set file name for solution folder.
-
- (SlnFileFormat.Section): Make it top level class.
- (SlnData): New class.
- (MSBuildSolution): New class.
-
- * MSBuildFileFormat.cs (MSBuildFileFormat.WriteFile): Write to a temporary file
- and if successful, then rename to the intended file.
- (MSBuildFileFormat.ReadConfig): Read ApplicationIcon also.
- (MSBuildFileFormat.SaveProject): Remove @file param.
- (MSBuildFileFormat.LoadProject): Set project's DefaultNamespace. Use
- MSBuildProject instead of DotNetProject.
- (MSBuildFileFormat.ReferenceToXmlElement): Set the correct guid for a
- project reference.
- (MSBuildFileFormat.FileToXmlElement): For EmbedAsResource, set the
- LogicalName if required (see the comment in the code).
- (MSBuildFileFormat.ReadItemGroups): Add "Content".
- For EmbeddedResource, use LogicalName if available.
-
- (MSBuildFileFormat.MSBuildProject): New.
-
-2006-12-08 Ankit Jain <jankit@novell.com>
-
- * MSBuildFileFormat.cs (WriteFileInternal): Trimming '{', '}' not
- required for new guids.
- Use MSBuildData.Guid for project references.
-
-2006-12-08 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs: Move extra .sln specific info from
- ExtendedProperties to SlnData and store that in the ExtendedProperties.
- * MSBuildFileFormat.cs: Likewise, move to MSBuildData.
-
-2006-12-03 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (WriteProjects): Add 'baseDirectory' param.
- Path should be relative to solution file's directory.
- (HandleCombineEntryAdded): Emit 'guid' with the project reference.
- Path should be relative to the project's base directory.
- * MSBuildFileFormat.cs (AppendChild): Make internal.
-
-2006-12-03 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (HandleCombineEntryAdded): Update project references
- after conversion.
-
-2006-12-02 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (SetHandlers): Add a 'setEntries' param. Setting
- handlers on entries is required when loading from a file.
-
-2006-12-02 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs (SetHandlers): Don't set handlers on contained
- combines. Set *Added handler instead of *Modified.
- (HandleCombineEntryModified): Remove.
- (HandleCombineEntryAdded): New.
- (ConvertToMSBuild): New. Convert a Mds/Mdp based project to msbuild
- format (if required).
- * MSBuildFileFormat.cs (WriteFile): Split into this and ..
- (WriteFileInternal): .. this. Create a new XmlDocument if required.
- (SaveProject): Save a DotNetProject to the corresponding .*proj .
- (LoadProject): Set handlers.
- (SetupHandlers): New.
- (ReferenceToXmlNode): New.
- (FileToXmlNode): New.
- (HandleFileRenamed): New.
-
-2006-11-29 Ankit Jain <jankit@novell.com>
-
- * SlnFileFormat.cs: Add basic write/save support.
- * MSBuildFileFormat.cs (WriteFile): OutputPath should be relative.
- (ParseProject): Rename to ..
- (LoadProject): .. this. Set default name of the project.
- Create new config only if it doesn't already exist.
- (HandleRename): Change the name of the project file when the project is
- renamed.
-
-2006-11-20 Ankit Jain <jankit@novell.com>
-
- * MsPrjHelper.cs (MapPath): Make "internal static". Change "\" to "/" only
- if required.
- * prj2make-sharp-lib.add.in.xml: Add extensions for ProjectFileFormats
- and FileFilter.
- * Makefile.am: Add references to MonoDevelop.Components and Mono.Cecil .
- Add MSBuildFileFormat.cs and SlnFileFormat.cs
-
- * SlnFileFormat.cs: VS2005 solution file support.
- * MSBuildFileFormat.cs: MSBuild project file support.
- Initial commit for support of vs2005 solutions/projects.
-
-2006-11-11 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.mdp: Build the project using the 2.0 profile.
-
-2006-09-19 Jacob Ilsø Christensen <jacobilsoe@gmail.com>
-
- * .: Added svn:ignore for prj2make-sharp-lib.pidb
-
-2006-09-07 Andrés G. Aragoneses <knocte@gmail.com>
-
- * prj2make-sharp-lib.addin.xml: Added '2003' version to label so as not to
- confuse newcomers who may think VS2005 is supported. Of course, this should be
- removed when 2005 support is added.
-
-2006-07-03 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Updated versions.
-
-2006-05-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Updated versions.
- * prj2make-sharp-lib.mdp: Updated.
-
-2006-03-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Updated references.
-
-2006-03-24 Lluis Sanchez Gual <lluis@novell.com>
-
- * Makefile.am: Use an unified format. Patch by Matze Braun.
- * prj2make-sharp-lib.addin.xml: Updated add-in versions.
-
-2006-03-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib/MsPrjHelper.cs: Track api changes.
-
-2006-02-19 Andrés G. Aragoneses <knocte@gmail.com>
-
- * prj2make-sharp-lib.addin.xml: Improved a label string.
-
-2006-01-04 Alexandre Miguel Pedro Gomes <alexmipego@gmail.com>
-
- * prj2make-sharp-lib.addin.xml: Added icon to "Import VS Solution"
- option.
-
-2005-11-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * MsPrjHelper.cs: Factorized code from getting the location of a package
- in a method. Take into account that the package may not be installed.
- * pkgconfiginvoker.cs: Don't crash if pkg-config returns an error.
-
-2005-11-18 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Fixed command placement in menu.
-
-2005-11-10 Lluis Sanchez Gual <lluis@novell.com>
-
- * csproj_ver2003.cs: Fixed some fields (patch by Jim Albert).
- * PrjHelper.cs:
- * prj2make-sharp-lib-Commands.cs: Show a progress monitor while importing.
- Other minor fixes.
- * MsPrjHelper.cs: Use the MonoDevelop.Projects api to generate the projects.
- Many other bug fixes.
- * prj2make-sharp-lib.addin.xml: Added new dependency.
- * Makefile.am: Added new assembly references.
-
-2005-10-10 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Fixed addin header information.
- Use "id" attribuet instead of "name" to identify addins.
-
-2005-10-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml: Added addin dependencies.
-
-2005-06-28 Raja R Harinath <rharinath@novell.com>
-
- * Makefile.am (FILES): Move AssemblyInfo.cs ...
- (GENERATED_FILES): ... here.
-
-2005-04-25 Lluis Sanchez Gual <lluis@novell.com>
-
- * prj2make-sharp-lib.addin.xml:
- * prj2make-sharp-lib-Commands.cs: Use the new syntax for defining
- commands and implementing commands.
-
-2005-04-17 John Luke <john.luke@gmail.com>
-
- * Makefile.am: fix distcheck
-
-2005-03-18 Francisco "Paco" Martinez <paco@mfcon.com>
- * MsPrjHelpe.cs:
- Mono 2.0 has been commented out until further notice.
- Gtk# 2.0 is searched first for a match otherwise it goes to Gtk# 1.0
- Added Gecko# 2.0 (0.7) is searched first for a match otherwise it goes to Gecko# 1.0 (0.6)
-
- * MsPrjHelper.cs and MdPrjHelper.cs:
- I also included the changes inside the patch in http://bugzilla.ximian.com/show_bug.cgi?id=73705.
-
-2004-08-07 Todd Berman <tberman@off.net>
-
- * AssemblyInfo.cs.in: Use new ASSEMBLY_VERSION variable.
-
-2004-06-17 John Luke <jluke@cfl.rr.com>
-
- * Makefile.am: add reference to MonoDevelop.Gui.Widgets
- * *.Makefile: remove generated makefile from svn
- * prj2make-sharp-Commands.cs : use MonoDevelop.Gui.Widgets.FileSelector
- instead of Gtk.FileSelection
-
-2004-06-14 Francisco "Paco" Martinez <paco@mfcon.com>
-
- Changes to correctly specify GAC type references on imported projects from VS .NET csproj files
-
- Files changed
- * MdPrjHelper.cs
- * MsPrjHelper.cs
- * Prj2MakeSharp.prjx -- modernized the GAC references
- * PrjxInfo.cs
- * Makefile.am -- include the added pkgconfiginvoker.cs file to the compilation
-
- Files added
- * pkgconfiginvoker.cs -- This should be removed or depracated in future releases to avoid duplicity of
- functionality
-
-2004-05-31 Francisco "Paco" Martinez <paco@mfcon.com>
-
- * src/Addin/prj2make-sharp-lib/MsPrjHelper.cs: corrects problems with
- the import of items flag as content so it will not try to build those
-
-2004-05-17 Todd Berman <tberman@sevenl.net>
-
- * prj2make-sharp-lib-Commands.cs: use HOME instead of Personal
-
-2004-04-25 Francisco "Paco" Martinez <paco@mfcon.com>
- Files removed
- * AssemblyInfo.cs -- This file is now generated in the build by
- AssemblyInfo.cs.in
-
-2004-04-25 Francisco "Paco" Martinez <paco@mfcon.com>
-
- Files changed
- * ChangeLog -- Edited to better reflect the files included in the original import into the repository.
-
- Files added
- * AssemblyInfo.cs
- * AssemblyInfo.cs.in
- * CsprojInfo.cs
- * csproj_ver2003.cs
- * Makefile.am
- * MdPrjHelper.cs
- * MsPrjHelper.cs
- * prj2make-sharp-lib.addin.xml
- * prj2make-sharp-lib.cmbx
- * prj2make-sharp-lib-Commands.cs
- * prj2make-sharp-lib.prjx
- * PrjHelper.cs
- * PrjxInfo.cs
- * sharp_d_cmbx.cs
- * sharp_d_prjx.cs
diff --git a/main/src/addins/prj2make-sharp-lib/CsprojInfo.cs b/main/src/addins/prj2make-sharp-lib/CsprojInfo.cs
deleted file mode 100644
index 3b965fba9f..0000000000
--- a/main/src/addins/prj2make-sharp-lib/CsprojInfo.cs
+++ /dev/null
@@ -1,175 +0,0 @@
-using System;
-using System.Collections;
-using System.IO;
-using System.Text;
-using System.Text.RegularExpressions;
-using System.Xml;
-using System.Xml.Serialization;
-using MonoDevelop.Projects;
-
-namespace MonoDevelop.Prj2Make
-{
- class CsprojInfo
- {
- public readonly string name;
- public readonly string guid;
- public readonly string csprojpath;
- public string makename;
- public string makename_ext;
- public string assembly_name;
- public string res;
- public string src;
- private bool m_bAllowUnsafeCode;
- private MonoDevelop.Prj2Make.Schema.Csproj.VisualStudioProject m_projObject;
- public bool NeedsConversion = true;
-
- public string ext_refs = "";
- public string switches = "";
-
- public bool AllowUnsafeCode
- {
- get { return m_bAllowUnsafeCode; }
- }
-
- public MonoDevelop.Prj2Make.Schema.Csproj.VisualStudioProject Proyecto
- {
- get { return m_projObject; }
- }
-
- // Project desirialization
- protected MonoDevelop.Prj2Make.Schema.Csproj.VisualStudioProject LoadPrjFromFile (string strIn)
- {
- using (FileStream fs = new FileStream (strIn, FileMode.Open)) {
-
- XmlSerializer xmlSer = new XmlSerializer (typeof(MonoDevelop.Prj2Make.Schema.Csproj.VisualStudioProject));
- MonoDevelop.Prj2Make.Schema.Csproj.VisualStudioProject prjObj = (MonoDevelop.Prj2Make.Schema.Csproj.VisualStudioProject) xmlSer.Deserialize (fs);
- fs.Close();
- return (prjObj);
- }
- }
-
- public CsprojInfo(bool isUnixMode, bool isMcsMode, string name, string guid, string csprojpath)
- {
- this.name = name;
- this.guid = guid;
- this.csprojpath = csprojpath;
-
- makename = name.Replace('.','_').ToUpper();
- makename_ext = makename + "_EXT";
- m_bAllowUnsafeCode = false;
-
- // convert backslashes to slashes
- csprojpath = csprojpath.Replace("\\", "/");
-
- // loads the file in order to deserialize and
- // build the object graph
- try
- {
- FileFormat format = Services.ProjectService.FileFormats.GetFileFormatForFile (csprojpath, typeof(SolutionEntityItem));
- if (format != null && format.Id != "VS2003ProjectFileFormat") {
- NeedsConversion = false;
- return;
- }
-
- m_projObject = LoadPrjFromFile (csprojpath);
- }
- catch (Exception exc)
- {
- Console.WriteLine (
- String.Format ("Could not load the file {0}\nException: {1}",
- csprojpath,
- exc.ToString ())
- );
- throw;
- }
-
- // Establish if the allow unsafe code flag is true
- foreach (MonoDevelop.Prj2Make.Schema.Csproj.Config cf in m_projObject.CSHARP.Build.Settings.Config)
- {
- if(cf.AllowUnsafeBlocks == true)
- m_bAllowUnsafeCode = true;
- }
-
- switch (m_projObject.CSHARP.Build.Settings.OutputType)
- {
- case "Library":
- makename_ext = makename + "_DLL";
- assembly_name = m_projObject.CSHARP.Build.Settings.AssemblyName + ".dll";
- switches += " -target:library";
- break;
-
- case "Exe":
- makename_ext = makename + "_EXE";
- assembly_name = m_projObject.CSHARP.Build.Settings.AssemblyName + ".exe";
- switches += " -target:exe";
- break;
-
- case "WinExe":
- makename_ext = makename + "_EXE";
- assembly_name = m_projObject.CSHARP.Build.Settings.AssemblyName + ".exe";
- switches += " -target:winexe";
- break;
-
- default:
- throw new NotSupportedException("Unsupported OutputType: " + m_projObject.CSHARP.Build.Settings.OutputType);
-
- }
-
- src = "";
- string basePath = Path.GetDirectoryName(csprojpath);
- string s;
-
- foreach (MonoDevelop.Prj2Make.Schema.Csproj.File fl in m_projObject.CSHARP.Files.Include)
- {
- if(fl.BuildAction == MonoDevelop.Prj2Make.Schema.Csproj.FileBuildAction.Compile)
- {
- if (src != "")
- {
- src += " \\\n\t";
- }
-
- s = System.IO.Path.Combine(basePath, fl.RelPath);
- s = s.Replace("\\", "/");
- if (SlnMaker.slash != "/")
- s = s.Replace("/", SlnMaker.slash);
-
- // Test for spaces
- if (isUnixMode == false) {
- // We are in win32 using a cmd.exe or other
- // DOS shell
- if(s.IndexOf(' ') > -1) {
- src += String.Format("\"{0}\"", s);
- } else {
- src += s;
- }
- } else {
- // We are in *NIX or some other
- // GNU like shell
- src += s.Replace(" ", "\\ ");
- }
- }
- }
-
- res = "";
- string rootNS = m_projObject.CSHARP.Build.Settings.RootNamespace;
- string relPath;
- foreach (MonoDevelop.Prj2Make.Schema.Csproj.File fl in m_projObject.CSHARP.Files.Include)
- {
- if(fl.BuildAction == MonoDevelop.Prj2Make.Schema.Csproj.FileBuildAction.EmbeddedResource)
- {
- if (res != "") {
- res += " \\\n\t";
- }
-
- relPath = fl.RelPath.Replace("\\", "/");
- s = System.IO.Path.Combine(basePath, relPath);
- s = String.Format("-resource:{0},{1}", s, rootNS + "." + relPath.Replace("/", "."));
- s = s.Replace("\\", "/");
- if (SlnMaker.slash != "/")
- s = s.Replace("/", SlnMaker.slash);
- res += s;
- }
- }
- }
- }
-}
diff --git a/main/src/addins/prj2make-sharp-lib/Makefile.am b/main/src/addins/prj2make-sharp-lib/Makefile.am
deleted file mode 100644
index deb0ebdaf3..0000000000
--- a/main/src/addins/prj2make-sharp-lib/Makefile.am
+++ /dev/null
@@ -1 +0,0 @@
-include $(top_srcdir)/xbuild.include \ No newline at end of file
diff --git a/main/src/addins/prj2make-sharp-lib/MsPrjHelper.cs b/main/src/addins/prj2make-sharp-lib/MsPrjHelper.cs
deleted file mode 100644
index 2d8d41c259..0000000000
--- a/main/src/addins/prj2make-sharp-lib/MsPrjHelper.cs
+++ /dev/null
@@ -1,578 +0,0 @@
-using System;
-using System.Collections;
-using System.IO;
-using System.Text;
-using System.Text.RegularExpressions;
-using System.Xml;
-using System.Xml.Serialization;
-
-using MonoDevelop.Prj2Make.Schema.Csproj;
-using MonoDevelop.Projects;
-using MonoDevelop.Projects.Text;
-using MonoDevelop.Core;
-using MonoDevelop.Ide.Gui;
-
-using MonoDevelop.Core.Assemblies;
-using MonoDevelop.CSharp.Project;
-
-
-namespace MonoDevelop.Prj2Make
-{
- public class SlnMaker
- {
- public static string slash;
- Hashtable projNameInfo = new Hashtable();
- Hashtable projGuidInfo = new Hashtable();
- private string prjxFileName;
- private string m_strSlnVer;
- private string m_strCsprojVer;
- private bool m_bIsUnix;
- private bool m_bIsMcs;
- private bool m_bIsUsingLib;
-
- TargetFramework fx = Runtime.SystemAssemblyService.GetTargetFramework (TargetFrameworkMoniker.NET_1_1);
-
- // Flag use to determine if the LIB variable will be used in
- // the Makefile that prj2make generates
- public bool IsUsingLib
- {
- get{ return m_bIsUsingLib; }
- set{ m_bIsUsingLib = value; }
- }
-
-
- // Determines if the makefile is intended for nmake or gmake for urposes of path separator character
- public bool IsUnix
- {
- get{ return m_bIsUnix; }
- set{ m_bIsUnix = value; }
- }
-
- // Determines if using MCS or CSC
- public bool IsMcs
- {
- get{ return m_bIsMcs; }
- set{ m_bIsMcs = value; }
- }
-
- public string SlnVersion
- {
- get { return m_strSlnVer; }
- set { m_strSlnVer = value; }
- }
-
- public string CsprojVersion
- {
- get { return m_strCsprojVer; }
- set { m_strCsprojVer = value; }
- }
-
- // Shuld contain the file name
- // of the most resent prjx generation
- public string PrjxFileName {
- get { return prjxFileName; }
- }
-
- // Default constructor
- public SlnMaker()
- {
- m_bIsUnix = false;
- m_bIsMcs = false;
- m_bIsUsingLib = false;
- }
-
- // Utility function to determine the sln file version
- protected string GetSlnFileVersion(string strInSlnFile)
- {
- string strVersion = null;
- string strInput = null;
- Match match;
- FileStream fis = new FileStream(strInSlnFile, FileMode.Open, FileAccess.Read, FileShare.Read);
- StreamReader reader = new StreamReader(fis);
- strInput = reader.ReadLine();
-
- match = SlnVersionRegex.Match(strInput);
- if (match.Success)
- {
- strVersion = match.Groups[1].Value;
- }
-
- // Close the stream
- reader.Close();
-
- // Close the File Stream
- fis.Close();
-
- return strVersion;
- }
-
- // Utility function to determine the csproj file version
- protected string GetCsprojFileVersion(string strInCsprojFile)
- {
- string strRetVal = null;
- XmlDocument xmlDoc = new XmlDocument();
-
- xmlDoc.Load(strInCsprojFile);
- strRetVal = xmlDoc.SelectSingleNode("/VisualStudioProject/CSHARP/@ProductVersion").Value;
-
- return strRetVal;
- }
-
- protected void ParseMsCsProj(string fname)
- {
- string projectName = System.IO.Path.GetFileNameWithoutExtension (fname);
- string csprojPath = System.IO.Path.GetFileName (fname);
- string projectGuid = "";
-
- CsprojInfo pi = new CsprojInfo (m_bIsUnix, m_bIsMcs, projectName, projectGuid, csprojPath);
-
- projNameInfo[projectName] = pi;
- projGuidInfo[projectGuid] = pi;
- }
-
- protected void ParseSolution(string fname, IProgressMonitor monitor)
- {
- FileStream fis = new FileStream(fname,FileMode.Open, FileAccess.Read, FileShare.Read);
- using (StreamReader reader = new StreamReader(fis)) {
- while (true)
- {
- string s = reader.ReadLine();
- Match match;
-
- match = ProjectRegex.Match(s);
- if (match.Success)
- {
- string projectName = match.Groups[2].Value;
- string csprojPath = match.Groups[3].Value;
- string projectGuid = match.Groups[4].Value;
-
- try {
- if (csprojPath.EndsWith (".csproj") && !csprojPath.StartsWith("http://"))
- {
- csprojPath = MapPath (Path.GetDirectoryName (fname), csprojPath);
- CsprojInfo pi = new CsprojInfo (m_bIsUnix, m_bIsMcs, projectName, projectGuid, csprojPath);
- projNameInfo[projectName] = pi;
- projGuidInfo[projectGuid] = pi;
- }
- } catch (Exception ex) {
- Console.WriteLine (GettextCatalog.GetString ("Could not import project:") + csprojPath);
- Console.WriteLine (ex.ToString ());
- monitor.ReportError (GettextCatalog.GetString ("Could not import project:") + csprojPath, ex);
- throw;
- }
- }
-
- if (s.StartsWith("Global"))
- {
- break;
- }
- }
- }
- }
-
- public SolutionEntityItem CreatePrjxFromCsproj (string csprojFileName, IProgressMonitor monitor)
- {
- try {
- FileFormat format = Services.ProjectService.FileFormats.GetFileFormatForFile (csprojFileName, typeof(SolutionEntityItem));
- if (format != null && format.Id != "VS2003ProjectFileFormat")
- return (SolutionEntityItem) Services.ProjectService.ReadSolutionItem (monitor, csprojFileName);
-
- MonoDevelop.Prj2Make.Schema.Csproj.VisualStudioProject csprojObj = null;
-
- monitor.BeginTask (GettextCatalog.GetString ("Importing project: ") + csprojFileName, 4);
-
- DotNetAssemblyProject prjxObj = new DotNetAssemblyProject ("C#", null, null);
-
- prjxFileName = String.Format ("{0}.mdp",
- Path.Combine (Path.GetDirectoryName (csprojFileName),
- Path.GetFileNameWithoutExtension (csprojFileName))
- );
-
- // Load the csproj
- using (TextFileReader fsIn = new TextFileReader (csprojFileName)) {
- XmlSerializer xmlDeSer = new XmlSerializer (typeof(VisualStudioProject));
- csprojObj = (VisualStudioProject) xmlDeSer.Deserialize (fsIn);
- }
-
- monitor.Step (1);
-
- // Begin prjxObj population
- prjxObj.FileName = prjxFileName;
- prjxObj.Name = Path.GetFileNameWithoutExtension(csprojFileName);
- prjxObj.Description = "";
- prjxObj.NewFileSearch = NewFileSearch.None;
- prjxObj.DefaultNamespace = csprojObj.CSHARP.Build.Settings.RootNamespace;
-
- GetContents (prjxObj, csprojObj.CSHARP.Files.Include, prjxObj.Files, monitor);
- monitor.Step (1);
-
- GetReferences (prjxObj, csprojObj.CSHARP.Build.References, prjxObj.References, monitor);
- monitor.Step (1);
-
- prjxObj.Configurations.Clear ();
- foreach (Config cblock in csprojObj.CSHARP.Build.Settings.Config)
- {
- prjxObj.Configurations.Add (CreateConfigurationBlock (
- prjxObj,
- cblock,
- csprojObj.CSHARP.Build.Settings.AssemblyName,
- csprojObj.CSHARP.Build.Settings.OutputType,
- monitor
- ));
- }
- monitor.Step (1);
- return prjxObj;
-
- } catch (Exception ex) {
- monitor.ReportError (GettextCatalog.GetString ("Could not import project:") + csprojFileName, ex);
- throw;
- } finally {
- monitor.EndTask ();
- }
- }
-
- public Solution MsSlnToCmbxHelper (string slnFileName, IProgressMonitor monitor)
- {
- Solution solution = new Solution();
-
- monitor.BeginTask (GettextCatalog.GetString ("Importing solution"), 2);
- try
- {
- // We invoke the ParseSolution
- // by passing the file obtained
- ParseSolution (slnFileName, monitor);
-
- // Create all of the prjx files form the csproj files
- monitor.BeginTask (null, projNameInfo.Values.Count * 2);
-
- foreach (CsprojInfo pi in projNameInfo.Values) {
- string mappedPath = MapPath (Path.GetDirectoryName (slnFileName), pi.csprojpath);
- if (mappedPath == null) {
- monitor.Step (2);
- monitor.ReportWarning (GettextCatalog.GetString ("Project file not found: ") + pi.csprojpath);
- continue;
- }
- SolutionEntityItem prj;
- if (pi.NeedsConversion)
- prj = CreatePrjxFromCsproj (mappedPath, monitor);
- else
- prj = (DotNetProject) Services.ProjectService.ReadSolutionItem (monitor, mappedPath);
-
- if (prj == null)
- return null;
-
- monitor.Step (1);
- solution.RootFolder.Items.Add (prj);
- foreach (ItemConfiguration conf in prj.Configurations) {
- if (!solution.GetConfigurations ().Contains (conf.Id))
- solution.AddConfiguration (conf.Id, false);
- }
- monitor.Step (1);
- }
-
- monitor.EndTask ();
- monitor.Step (1);
-
- solution.SetLocation (Path.GetDirectoryName (slnFileName), Path.GetFileNameWithoutExtension(slnFileName));
-
- monitor.Step (1);
- return solution;
- }
- catch (Exception e)
- {
- monitor.ReportError (GettextCatalog.GetString ("The solution could not be imported."), e);
- throw;
- }
- finally
- {
- monitor.EndTask ();
- }
- }
-
- protected void GetReferences (Project project, MonoDevelop.Prj2Make.Schema.Csproj.Reference[] References, ProjectReferenceCollection references, IProgressMonitor monitor)
- {
- if (References == null || References.Length == 0)
- return;
-
- monitor.BeginTask (null, 5 + References.Length);
-
- try {
- // Get the GAC path
- string strBasePathMono1_0 = GetPackageDirectory ("mono", "mono/1.0");
-
- monitor.Step (1);
-
- string strBasePathGtkSharp = GetPackageDirectory ("gtk-sharp", "mono/gtk-sharp");
-
- monitor.Step (1);
-
- string strBasePathGtkSharp2_0 = GetPackageDirectory ("gtk-sharp-2.0", "mono/gtk-sharp-2.0");
-
- monitor.Step (1);
-
- string strBasePathGeckoSharp = GetPackageDirectory ("gecko-sharp", "mono/gecko-sharp");
-
- monitor.Step (1);
-
- string strBasePathGeckoSharp2_0 = GetPackageDirectory ("gecko-sharp-2.0", "mono/gecko-sharp-2.0");
-
- string[] monoLibs = new string [] {
- strBasePathMono1_0,
- strBasePathGtkSharp2_0,
- strBasePathGtkSharp,
- strBasePathGeckoSharp2_0,
- strBasePathGeckoSharp
- };
-
- // Iterate through the reference collection of the csproj file
- foreach (MonoDevelop.Prj2Make.Schema.Csproj.Reference rf in References)
- {
- monitor.Step (1);
-
- ProjectReference rfOut = null;
-
- if (rf.Package != null && rf.Package.Length != 0)
- {
- rfOut = new ProjectReference (MonoDevelop.Projects.ReferenceType.Project, Path.GetFileName (rf.Name));
- rfOut.LocalCopy = true;
- references.Add (rfOut);
- }
- else if (rf.AssemblyName != null)
- {
- string rname = rf.AssemblyName;
- if (rname == "System.XML")
- rname = "System.Xml";
-
- string oref = Runtime.SystemAssemblyService.DefaultAssemblyContext.GetAssemblyFullName (rname, fx);
- if (oref == null) {
- if (rf.HintPath != null) {
- string asm = MapPath (project.ItemDirectory, rf.HintPath);
- if (!System.IO.File.Exists (asm))
- monitor.ReportWarning (GettextCatalog.GetString ("Referenced assembly not found: ") + asm);
- ProjectReference aref = new ProjectReference (MonoDevelop.Projects.ReferenceType.Assembly, asm);
- references.Add (aref);
- continue;
- }
- monitor.ReportWarning (GettextCatalog.GetString ("Assembly reference could not be imported: ") + rf.AssemblyName);
- continue;
- }
- rfOut = new ProjectReference (MonoDevelop.Projects.ReferenceType.Package, oref);
- rfOut.LocalCopy = true;
- references.Add (rfOut);
- }
- else if (rf.HintPath != null)
- {
- // HACK - under Unix filenames are case sensitive
- // Under Windows there's no agreement on Xml vs XML ;-)
- if (Path.GetFileName (rf.HintPath) == "System.XML.dll")
- {
- ProjectReference pref = GetMonoReferece (strBasePathMono1_0, "System.Xml.dll");
- if (pref != null) {
- references.Add (pref);
- continue;
- }
- } else {
- foreach (string libDir in monoLibs) {
- if (libDir == null) continue;
- if (rf.HintPath == null)
- continue;
- rfOut = GetMonoReferece (libDir, rf.HintPath);
- if (rfOut != null)
- break;
- }
-
- if (rfOut == null) {
- rfOut = new ProjectReference (MonoDevelop.Projects.ReferenceType.Package, Path.GetFileName (rf.HintPath));
- rfOut.LocalCopy = true;
- }
- references.Add (rfOut);
- }
- }
- else {
- monitor.ReportWarning (GettextCatalog.GetString ("Assembly reference could not be imported: ") + rf.Name);
- }
- }
- } finally {
- monitor.EndTask ();
- }
- }
-
- string GetPackageDirectory (string package, string subdir)
- {
- string dir = MonoDevelop.Prj2Make.PkgConfigInvoker.GetPkgVariableValue (package, "libdir");
- return dir != null ? Path.Combine (dir.TrimEnd(), subdir) : null;
- }
-
- ProjectReference GetMonoReferece (string libPath, string reference)
- {
- string strRefFileName = Path.Combine (libPath, Path.GetFileName (reference));
-
- // Test to see if file exist in GAC location
- if (System.IO.File.Exists (strRefFileName)) {
- ProjectReference rfOut = new ProjectReference (MonoDevelop.Projects.ReferenceType.Package, Runtime.SystemAssemblyService.DefaultAssemblyContext.GetAssemblyFullName (strRefFileName, fx));
- rfOut.LocalCopy = true;
- return rfOut;
- }
- return null;
- }
-
- protected void GetContents (MonoDevelop.Projects.Project project, MonoDevelop.Prj2Make.Schema.Csproj.File[] Include, ProjectFileCollection files, IProgressMonitor monitor)
- {
- if (Include == null || Include.Length == 0)
- return;
-
- // Iterate through the file collection of the csproj file
- foreach(MonoDevelop.Prj2Make.Schema.Csproj.File fl in Include)
- {
- ProjectFile flOut = new ProjectFile ();
-
- string name;
- if ((fl.Link == null) || (fl.Link.Length == 0)) {
- name = MapPath (project.BaseDirectory, fl.RelPath);
- } else {
- name = MapPath (null, fl.Link);
- }
-
- if (name == null) {
- monitor.ReportWarning (GettextCatalog.GetString ("Can't import file: ") + fl.RelPath);
- continue;
- }
- flOut.Name = name;
- // Adding here as GetDefaultResourceIdInternal needs flOut.Project
- files.Add (flOut);
-
- switch (fl.SubType)
- {
- case "Code":
- flOut.Subtype = Subtype.Code;
- break;
- }
-
- switch (fl.BuildAction)
- {
- case MonoDevelop.Prj2Make.Schema.Csproj.FileBuildAction.Compile:
- flOut.BuildAction = BuildAction.Compile;
- break;
- case MonoDevelop.Prj2Make.Schema.Csproj.FileBuildAction.Content:
- flOut.BuildAction = BuildAction.Content;
- break;
- case MonoDevelop.Prj2Make.Schema.Csproj.FileBuildAction.EmbeddedResource:
- flOut.BuildAction = BuildAction.EmbeddedResource;
- break;
- case MonoDevelop.Prj2Make.Schema.Csproj.FileBuildAction.None:
- flOut.BuildAction = BuildAction.None;
- break;
- }
- // DependentUpon is relative to flOut
- flOut.DependsOn = MapPath (Path.GetDirectoryName (flOut.Name), fl.DependentUpon);
- flOut.Data = "";
- }
- }
-
- protected SolutionItemConfiguration CreateConfigurationBlock (MonoDevelop.Projects.DotNetProject project, Config ConfigBlock, string AssemblyName, string OuputType, IProgressMonitor monitor)
- {
- DotNetProjectConfiguration confObj = project.CreateConfiguration (ConfigBlock.Name) as DotNetProjectConfiguration;
-
- confObj.RunWithWarnings = false;
- confObj.DebugMode = ConfigBlock.DebugSymbols;
- project.CompileTarget = (CompileTarget) Enum.Parse (typeof(CompileTarget), OuputType, true);
-
- string dir = MapPath (project.BaseDirectory, ConfigBlock.OutputPath);
- if (dir == null) {
- dir = Path.Combine ("bin", ConfigBlock.Name);
- monitor.ReportWarning (string.Format (GettextCatalog.GetString ("Output directory '{0}' can't be mapped to a local directory. The directory '{1}' will be used instead"), ConfigBlock.OutputPath, dir));
- }
- confObj.OutputDirectory = dir;
- confObj.OutputAssembly = AssemblyName;
-
- CSharpCompilerParameters compilerParams = new CSharpCompilerParameters ();
- compilerParams.WarningLevel = ConfigBlock.WarningLevel;
- compilerParams.NoWarnings = "";
- compilerParams.Optimize = ConfigBlock.Optimize;
- compilerParams.DefineSymbols = ConfigBlock.DefineConstants;
- compilerParams.UnsafeCode = ConfigBlock.AllowUnsafeBlocks;
- compilerParams.GenerateOverflowChecks = ConfigBlock.CheckForOverflowUnderflow;
-
- return confObj;
- }
-
- internal static string MapPath (string basePath, string relPath)
- {
- if (relPath == null || relPath.Length == 0)
- return null;
-
- string path = relPath;
- if (Path.DirectorySeparatorChar != '\\')
- path = path.Replace ("\\", "/");
-
- if (char.IsLetter (path [0]) && path.Length > 1 && path[1] == ':')
- return null;
-
- if (basePath != null)
- path = Path.Combine (basePath, path);
-
- if (System.IO.File.Exists (path)){
- return Path.GetFullPath (path);
- }
-
- if (Path.IsPathRooted (path)) {
-
- // Windows paths are case-insensitive. When mapping an absolute path
- // we can try to find the correct case for the path.
-
- string[] names = path.Substring (1).Split ('/');
- string part = "/";
-
- for (int n=0; n<names.Length; n++) {
- string[] entries;
-
- if (names [n] == ".."){
- part = Path.GetFullPath (part + "/..");
- continue;
- }
-
- entries = Directory.GetFileSystemEntries (part);
-
- string fpath = null;
- foreach (string e in entries) {
- if (string.Compare (Path.GetFileName (e), names[n], true) == 0) {
- fpath = e;
- break;
- }
- }
- if (fpath == null) {
- // Part of the path does not exist. Can't do any more checking.
- part = Path.GetFullPath (part);
- for (; n < names.Length; n++)
- part += "/" + names[n];
- return part;
- }
-
- part = fpath;
- }
- return Path.GetFullPath (part);
- } else {
- return Path.GetFullPath (path);
- }
- }
-
- // static regexes
- static Regex projectRegex = null;
- internal static Regex ProjectRegex {
- get {
- if (projectRegex == null)
- projectRegex = new Regex(@"Project\(""(\{[^}]*\})""\) = ""(.*)"", ""(.*)"", ""(\{[^{]*\})""");
- return projectRegex;
- }
- }
-
- static Regex slnVersionRegex = null;
- internal static Regex SlnVersionRegex {
- get {
- if (slnVersionRegex == null)
- slnVersionRegex = new Regex (@"Microsoft Visual Studio Solution File, Format Version (\d?\d.\d\d)");
- return slnVersionRegex;
- }
- }
- }
-}
diff --git a/main/src/addins/prj2make-sharp-lib/VS2003ProjectFileFormat.cs b/main/src/addins/prj2make-sharp-lib/VS2003ProjectFileFormat.cs
deleted file mode 100644
index 192a90f3a9..0000000000
--- a/main/src/addins/prj2make-sharp-lib/VS2003ProjectFileFormat.cs
+++ /dev/null
@@ -1,275 +0,0 @@
-//
-// VS2003ProjectFileFormat.cs
-//
-// Author:
-// Ankit Jain <jankit@novell.com>
-//
-// Copyright (C) 2007 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using MonoDevelop.Core;
-using MonoDevelop.Core.ProgressMonitoring;
-using MonoDevelop.Ide.Gui;
-using MonoDevelop.Projects;
-
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Text.RegularExpressions;
-using System.Xml;
-using MonoDevelop.Projects.Extensions;
-using MonoDevelop.Ide;
-
-namespace MonoDevelop.Prj2Make
-{
- public class VS2003ProjectFileFormat : IFileFormat
- {
- GuiHelper helper;
-
- public VS2003ProjectFileFormat ()
- {
- }
-
- public string Name {
- get { return "Visual Studio 2003"; }
- }
-
- GuiHelper GuiHelper {
- get {
- if (helper == null)
- helper = new GuiHelper ();
- return helper;
- }
- }
-
- public FilePath GetValidFormatName (object obj, FilePath fileName)
- {
- return fileName;
- }
-
- public bool CanReadFile (FilePath file, Type expectedObjectType)
- {
- if (expectedObjectType.IsAssignableFrom (typeof(Solution)) && String.Compare (file.Extension, ".sln", true) == 0) {
- string ver = GetSlnFileVersion (file);
- if (ver == "7.00" || ver == "8.00")
- return true;
- }
-
- if (!expectedObjectType.IsAssignableFrom (typeof(DotNetProject)))
- return false;
-
- if (String.Compare (file.Extension, ".csproj", true) != 0 &&
- String.Compare (file.Extension, ".vbproj", true) != 0)
- return false;
-
- try {
- using (XmlReader xr = XmlReader.Create (file)) {
- xr.MoveToContent ();
- if (xr.NodeType == XmlNodeType.Element && String.Compare (xr.LocalName, "VisualStudioProject") == 0)
- return true;
- }
- } catch {
- return false;
- }
-
- return false;
- }
-
- public bool CanWriteFile (object obj)
- {
- return false;
- }
-
- public void WriteFile (FilePath file, object node, IProgressMonitor monitor)
- {
- }
-
- public object ReadFile (FilePath file, Type expectedType, IProgressMonitor monitor)
- {
- if (expectedType.IsAssignableFrom (typeof(DotNetProject)))
- return ReadProjectFile (file, monitor);
- else
- return ReadSolutionFile (file, monitor);
- }
-
- public object ReadProjectFile (FilePath fileName, IProgressMonitor monitor)
- {
- if (IdeApp.IsInitialized) {
- TargetConvert choice = GuiHelper.QueryProjectConversion (fileName);
- if (choice == TargetConvert.None)
- throw new InvalidOperationException ("VS2003 projects are not supported natively.");
-
- SolutionEntityItem project = ImportCsproj (fileName);
- project.FileName = fileName;
-
- if (choice == TargetConvert.MonoDevelop) {
- project.FileFormat = IdeApp.Services.ProjectService.FileFormats.GetFileFormat ("MD1");
- } else if (choice == TargetConvert.VisualStudio) {
- project.FileFormat = IdeApp.Services.ProjectService.FileFormats.GetFileFormat ("MSBuild05");
- }
-
- project.Save (monitor);
- return project;
- }
- else {
- SolutionEntityItem project = ImportCsproj (fileName);
- project.FileName = fileName;
- return project;
- }
- }
-
- public object ReadSolutionFile (FilePath fileName, IProgressMonitor monitor)
- {
- if (IdeApp.IsInitialized) {
- TargetConvert choice = GuiHelper.QuerySolutionConversion (fileName);
- if (choice == TargetConvert.None)
- throw new InvalidOperationException ("VS2003 solutions are not supported natively.");
-
- Solution solution = ImportSln (fileName);
-
- if (choice == TargetConvert.MonoDevelop) {
- solution.ConvertToFormat (IdeApp.Services.ProjectService.FileFormats.GetFileFormat ("MD1"), true);
- } else if (choice == TargetConvert.VisualStudio) {
- solution.ConvertToFormat (IdeApp.Services.ProjectService.FileFormats.GetFileFormat ("MSBuild05"), true);
- }
-
- solution.Save (monitor);
- return solution;
- }
- else
- return ImportSln (fileName);
- }
-
- internal SolutionEntityItem ImportCsproj (FilePath fileName)
- {
- SolutionEntityItem project = null;
- SlnMaker slnmaker = new SlnMaker ();
- try {
- IProgressMonitor m = IdeApp.IsInitialized ? GuiHelper.CreateProgressMonitor () : new ConsoleProgressMonitor ();
- using (m) {
- project = slnmaker.CreatePrjxFromCsproj (fileName, m);
- }
- } catch (Exception e) {
- LoggingService.LogError ("exception while converting: " + e.ToString ());
- throw;
- }
-
- return project;
- }
-
- public void ConvertToFormat (object obj)
- {
- }
-
- public List<FilePath> GetItemFiles (object obj)
- {
- return new List<FilePath> ();
- }
-
- // Converts a vs2003 solution to a Combine object
- internal Solution ImportSln (FilePath fileName)
- {
- SlnMaker slnmaker = new SlnMaker ();
- Solution solution = null;
- IProgressMonitor m = IdeApp.IsInitialized ? GuiHelper.CreateProgressMonitor () : new ConsoleProgressMonitor ();
-
- try {
- solution = slnmaker.MsSlnToCmbxHelper (fileName, m);
- } catch (Exception e) {
- LoggingService.LogError ("exception while converting : " + e.ToString ());
- throw;
- } finally {
- if (m != null)
- m.Dispose ();
- }
-
- return solution;
- }
-
- // Utility function to determine the sln file version
- string GetSlnFileVersion(string strInSlnFile)
- {
- using (var stream = File.OpenText (strInSlnFile)) {
- // ReadLine returns null at EOF which makes the regex throw an ArgNull exception
- var match = SlnMaker.SlnVersionRegex.Match (stream.ReadLine () ?? "");
- if (!match.Success)
- match = SlnMaker.SlnVersionRegex.Match (stream.ReadLine () ?? "");
-
- return match.Success ? match.Groups[1].Value : null;
- }
- }
-
- public bool SupportsMixedFormats {
- get { return false; }
- }
-
- public IEnumerable<string> GetCompatibilityWarnings (object obj)
- {
- yield break;
- }
-
- public bool SupportsFramework (MonoDevelop.Core.Assemblies.TargetFramework framework)
- {
- return framework.Id == MonoDevelop.Core.Assemblies.TargetFrameworkMoniker.NET_1_1;
- }
- }
-
- enum TargetConvert
- {
- None,
- VisualStudio,
- MonoDevelop
- }
-
- class GuiHelper: GuiSyncObject
- {
- TargetConvert QueryConversion (string text)
- {
- AlertButton vs2005 = new AlertButton (GettextCatalog.GetString ("Convert to MSBuild"));
-
- AlertButton choice = MessageService.AskQuestion (text,
- GettextCatalog.GetString ("Converting to MSBuild format will overwrite existing files."),
- AlertButton.Cancel, vs2005);
- if (choice == vs2005)
- return TargetConvert.VisualStudio;
- else
- return TargetConvert.None;
- }
-
- public TargetConvert QueryProjectConversion (string file)
- {
- string text = GettextCatalog.GetString ("The project file {0} is a Visual Studio 2003 project. It must be converted to a MSBuild project.", file);
- return QueryConversion (text);
- }
-
- public TargetConvert QuerySolutionConversion (string file)
- {
- string text = GettextCatalog.GetString ("The solution file {0} is a Visual Studio 2003 solution. It must be converted to a MSBuild project.", file);
- return QueryConversion (text);
- }
-
- public IProgressMonitor CreateProgressMonitor ()
- {
- return new MonoDevelop.Ide.ProgressMonitoring.MessageDialogProgressMonitor (true, false, true, false);
- }
- }
-}
diff --git a/main/src/addins/prj2make-sharp-lib/csproj_ver2003.cs b/main/src/addins/prj2make-sharp-lib/csproj_ver2003.cs
deleted file mode 100644
index e4891f8a5e..0000000000
--- a/main/src/addins/prj2make-sharp-lib/csproj_ver2003.cs
+++ /dev/null
@@ -1,285 +0,0 @@
-namespace MonoDevelop.Prj2Make.Schema.Csproj {
- using System.Xml.Serialization;
-
-
- /// <remarks/>
- [System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
- public class Build {
-
- /// <remarks/>
- public Settings Settings;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
- public Reference[] References;
- }
-
- /// <remarks/>
- [System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
- public class Settings {
-
- /// <remarks/>
- [System.Xml.Serialization.XmlElementAttribute("Config")]
- public Config[] Config;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string ApplicationIcon;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string AssemblyKeyContainerName;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string AssemblyName;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string AssemblyOriginatorKeyFile;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string DefaultClientScript;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string DefaultHTMLPageLayout;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string DefaultTargetSchema;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public bool DelaySign;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string OutputType;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string PreBuildEvent;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string PostBuildEvent;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string RootNamespace;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string RunPostBuildEvent;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string StartupObject;
- }
-
- /// <remarks/>
- [System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
- public class Config {
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string Name;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public bool AllowUnsafeBlocks;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public long BaseAddress;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public bool CheckForOverflowUnderflow;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string ConfigurationOverrideFile;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string DefineConstants;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string DocumentationFile;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public bool DebugSymbols;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public short FileAlignment;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public bool IncrementalBuild;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public bool NoStdLib;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string NoWarn;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public bool Optimize;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string OutputPath;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public bool RegisterForComInterop;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public bool RemoveIntegerChecks;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public bool TreatWarningsAsErrors;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public System.SByte WarningLevel;
- }
-
- /// <remarks/>
- [System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
- public class Reference {
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string Name;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string AssemblyName;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string HintPath;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string Project;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string Package;
- }
-
- /// <remarks/>
- [System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
- public class CSHARP {
-
- /// <remarks/>
- public Build Build;
-
- /// <remarks/>
- public Files Files;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string ProjectType;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string ProductVersion;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public System.Decimal SchemaVersion;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string ProjectGuid;
- }
-
- /// <remarks/>
- [System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
- public class Files {
-
- /// <remarks/>
- [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
- public File[] Include;
- }
-
- /// <remarks/>
- [System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
- public class File {
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string RelPath;
-
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string Link;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public FileBuildAction BuildAction;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string SubType;
-
- /// <remarks/>
- [System.Xml.Serialization.XmlAttributeAttribute()]
- public string DependentUpon;
- }
-
- /// <remarks/>
- public enum FileBuildAction {
-
- /// <remarks/>
- Compile,
-
- /// <remarks/>
- Content,
-
- /// <remarks/>
- EmbeddedResource,
-
- /// <remarks/>
- None,
- }
-
- /// <remarks/>
- [System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
- public class Include {
-
- /// <remarks/>
- [System.Xml.Serialization.XmlElementAttribute("File")]
- public File[] File;
- }
-
- /// <remarks/>
- [System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
- public class References {
-
- /// <remarks/>
- [System.Xml.Serialization.XmlElementAttribute("Reference")]
- public Reference[] Reference;
- }
-
- /// <remarks/>
- [System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
- public class VisualStudioProject {
-
- /// <remarks/>
- public CSHARP CSHARP;
- }
-}
diff --git a/main/src/addins/prj2make-sharp-lib/pkgconfiginvoker.cs b/main/src/addins/prj2make-sharp-lib/pkgconfiginvoker.cs
deleted file mode 100644
index cac7091556..0000000000
--- a/main/src/addins/prj2make-sharp-lib/pkgconfiginvoker.cs
+++ /dev/null
@@ -1,98 +0,0 @@
-// created on 6/8/2004 at 5:44 AM
-using System;
-using System.Diagnostics;
-using MonoDevelop.Core;
-
-namespace MonoDevelop.Prj2Make
-{
- public sealed class PkgConfigInvoker
- {
-
- public static string GetPkgConfigVersion()
- {
- string pkgout = null;
-
- pkgout = RunPkgConfig("--version");
-
- if(pkgout != null)
- {
- return pkgout;
- }
-
- return null;
- }
-
- public static string GetPkgVariableValue(string strPkg, string strVarName)
- {
- string pkgout = null;
-
- pkgout = RunPkgConfig(String.Format("--variable={0} {1}",
- strVarName, strPkg));
-
- if(pkgout != null)
- {
- return pkgout;
- }
-
- return null;
- }
-
- public static string GetPkgConfigModuleVersion(string strPkg)
- {
- string pkgout = null;
-
- pkgout = RunPkgConfig(String.Format("--modversion {0}", strPkg));
-
- if(pkgout != null)
- {
- return pkgout;
- }
-
- return null;
- }
-
- public static string RunPkgConfig(string strArgLine)
- {
- string pkgout;
-
- ProcessStartInfo pi = new ProcessStartInfo ();
- pi.FileName = "pkg-config";
- pi.RedirectStandardOutput = true;
- pi.UseShellExecute = false;
- pi.Arguments = strArgLine;
- Process p = null;
- try
- {
- p = Process.Start (pi);
- }
- catch (Exception e)
- {
- Console.WriteLine("Couldn't run pkg-config: " + e.Message);
- Environment.Exit (1);
- }
-
- if (p.StandardOutput == null)
- {
- LoggingService.LogDebug ("Specified package did not return any information");
- }
-
- pkgout = p.StandardOutput.ReadToEnd ();
- p.WaitForExit ();
- if (p.ExitCode != 0)
- {
- LoggingService.LogDebug ("pkg-config command failed: pkg-config " + strArgLine);
- return null;
- }
-
- if (pkgout != null)
- {
- p.Close ();
- return pkgout;
- }
-
- p.Close ();
-
- return null;
- }
- }
-}
diff --git a/main/src/addins/prj2make-sharp-lib/prj2make-sharp-lib.addin.xml b/main/src/addins/prj2make-sharp-lib/prj2make-sharp-lib.addin.xml
deleted file mode 100644
index a5b241702a..0000000000
--- a/main/src/addins/prj2make-sharp-lib/prj2make-sharp-lib.addin.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<ExtensionModel>
- <Extension path = "/MonoDevelop/ProjectModel/FileFormats">
- <FileFormat id="VS2003ProjectFileFormat"
- class="MonoDevelop.Prj2Make.VS2003ProjectFileFormat"/>
- </Extension>
-</ExtensionModel>
-
diff --git a/main/src/addins/prj2make-sharp-lib/prj2make-sharp-lib.csproj b/main/src/addins/prj2make-sharp-lib/prj2make-sharp-lib.csproj
deleted file mode 100644
index 75bfc07c7e..0000000000
--- a/main/src/addins/prj2make-sharp-lib/prj2make-sharp-lib.csproj
+++ /dev/null
@@ -1,118 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
- <PropertyGroup>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <ProductVersion>9.0.21022</ProductVersion>
- <SchemaVersion>2.0</SchemaVersion>
- <ProjectGuid>{0F57E572-2359-4BAF-B302-6478C2E42FA2}</ProjectGuid>
- <OutputType>Library</OutputType>
- <RootNamespace>prj2makesharplib</RootNamespace>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <DebugSymbols>True</DebugSymbols>
- <DebugType>full</DebugType>
- <Optimize>False</Optimize>
- <OutputPath>..\..\..\build\AddIns\MonoDevelop.MsVisualStudio</OutputPath>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <AssemblyName>MonoDevelop.MsVisualStudio</AssemblyName>
- <Execution>
- <Execution clr-version="Net_2_0" />
- </Execution>
- <DefineConstants>DEBUG</DefineConstants>
- <GenerateDocumentation>true</GenerateDocumentation>
- <NoWarn>1591;1573</NoWarn>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <DebugType>pdbonly</DebugType>
- <Optimize>True</Optimize>
- <OutputPath>..\..\..\build\AddIns\MonoDevelop.MsVisualStudio</OutputPath>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- <AssemblyName>prj2make-sharp-lib</AssemblyName>
- <Execution>
- <Execution clr-version="Net_2_0" />
- </Execution>
- <DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
- <NoWarn>1591;1573</NoWarn>
- </PropertyGroup>
- <ItemGroup>
- <Reference Include="System" />
- <Reference Include="System.Xml" />
- <Reference Include="Mono.Posix" />
- <Reference Include="pango-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="atk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="gdk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- <Reference Include="gtk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
- <SpecificVersion>False</SpecificVersion>
- </Reference>
- </ItemGroup>
- <ItemGroup>
- <ProjectReference Include="..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
- <Project>{7525BB88-6142-4A26-93B9-A30C6983390A}</Project>
- <Name>MonoDevelop.Core</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\core\MonoDevelop.Ide\MonoDevelop.Ide.csproj">
- <Project>{27096E7F-C91C-4AC6-B289-6897A701DF21}</Project>
- <Name>MonoDevelop.Ide</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\Deployment\MonoDevelop.Deployment\MonoDevelop.Deployment.csproj">
- <Project>{9BC670A8-1851-40EC-9685-279F4C98433D}</Project>
- <Name>MonoDevelop.Deployment</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\VBNetBinding\VBNetBinding.csproj">
- <Project>{EF91D0B8-53F6-4622-9F26-3ED27815878A}</Project>
- <Name>VBNetBinding</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\CSharpBinding\CSharpBinding.csproj">
- <Project>{07CC7654-27D6-421D-A64C-0FFA40456FA2}</Project>
- <Name>CSharpBinding</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\core\Mono.Texteditor\Mono.TextEditor.csproj">
- <Project>{A2329308-3751-4DBD-9A75-5F7B8B024625}</Project>
- <Name>Mono.TextEditor</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\MonoDevelop.Refactoring\MonoDevelop.Refactoring.csproj">
- <Project>{100568FC-F4E8-439B-94AD-41D11724E45B}</Project>
- <Name>MonoDevelop.Refactoring</Name>
- <Private>False</Private>
- </ProjectReference>
- <ProjectReference Include="..\..\..\external\mono-addins\Mono.Addins\Mono.Addins.csproj">
- <Project>{91DD5A2D-9FE3-4C3C-9253-876141874DAD}</Project>
- <Name>Mono.Addins</Name>
- <Private>False</Private>
- </ProjectReference>
- </ItemGroup>
- <ItemGroup>
- <Compile Include="MsPrjHelper.cs" />
- <Compile Include="CsprojInfo.cs" />
- <Compile Include="pkgconfiginvoker.cs" />
- <Compile Include="csproj_ver2003.cs" />
- <Compile Include="VS2003ProjectFileFormat.cs" />
- <Compile Include="AssemblyInfo.cs" />
- <Compile Include="AddinInfo.cs" />
- </ItemGroup>
- <ItemGroup>
- <EmbeddedResource Include="prj2make-sharp-lib.addin.xml">
- <LogicalName>prj2make-sharp-lib.addin.xml</LogicalName>
- </EmbeddedResource>
- </ItemGroup>
- <ItemGroup>
- <None Include="Makefile.am" />
- </ItemGroup>
- <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
-</Project>
diff --git a/main/src/core/Mono.Texteditor/Mono.TextEditor.csproj b/main/src/core/Mono.Texteditor/Mono.TextEditor.csproj
index c4a25405cd..298f69e863 100644
--- a/main/src/core/Mono.Texteditor/Mono.TextEditor.csproj
+++ b/main/src/core/Mono.Texteditor/Mono.TextEditor.csproj
@@ -21,9 +21,9 @@
<Execution clr-version="Net_2_0" />
</Execution>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
- <GenerateDocumentation>true</GenerateDocumentation>
<DefineConstants>DEBUG</DefineConstants>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\Mono.TextEditor.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -36,8 +36,8 @@
</Execution>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\Mono.TextEditor.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Standalone|AnyCPU' ">
<DebugType>none</DebugType>
@@ -48,7 +48,7 @@
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<NoWarn>1591;1573</NoWarn>
- <GenerateDocumentation>true</GenerateDocumentation>
+ <DocumentationFile>bin\Standalone\Mono.TextEditor.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="Mono.Posix" />
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Core.addin.xml b/main/src/core/MonoDevelop.Core/MonoDevelop.Core.addin.xml
index ef77b844a5..fc7f55be6f 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Core.addin.xml
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Core.addin.xml
@@ -129,11 +129,6 @@
<ExtensionNode name="DotNetProject" type="MonoDevelop.Projects.Extensions.DotNetProjectNode"/>
<ExtensionNode name="DotNetProjectSubtype" type="MonoDevelop.Projects.Extensions.DotNetProjectSubtypeNode"/>
</ExtensionPoint>
-
- <ExtensionPoint path = "/MonoDevelop/ProjectModel/MD1SerializationMaps">
- <Description>Serialization maps for the MonoDevelop 1.0 file format</Description>
- <ExtensionNode name="SerializationMap" type="MonoDevelop.Projects.Extensions.SerializationMapNode"/>
- </ExtensionPoint>
<ExtensionPoint path = "/MonoDevelop/ProjectModel/PolicyTypes" name = "Policy types">
<Description>Types for per-project policies language binding. These types must be serializable.</Description>
@@ -260,10 +255,6 @@
<Class id="FinalStep" class = "MonoDevelop.Core.FileSystem.DummyFileSystemExtension" />
</Extension>
- <Extension path = "/MonoDevelop/ProjectModel/MD1SerializationMaps">
- <SerializationMap resource="md1format.xml" />
- </Extension>
-
<Extension path = "/MonoDevelop/ProjectModel/PolicySets" >
<PolicySet id="Mono" _name="Mono" allowDiffSerialize="true">
<!-- <Policies resource="" /> -->
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Core.csproj b/main/src/core/MonoDevelop.Core/MonoDevelop.Core.csproj
index 5df3f874c1..aa86b3bf5c 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Core.csproj
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Core.csproj
@@ -51,8 +51,8 @@
</Execution>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<DefineConstants>DEBUG</DefineConstants>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\MonoDevelop.Core.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -65,8 +65,8 @@
</Execution>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\MonoDevelop.Core.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition="'$(BUILD_REVISION)' != ''">
<DefineConstants>$(DefineConstants);ENABLE_RAYGUN</DefineConstants>
@@ -332,19 +332,10 @@
<Compile Include="MonoDevelop.Projects.Extensions\IResourceHandler.cs" />
<Compile Include="MonoDevelop.Projects.Extensions\IPathHandler.cs" />
<Compile Include="MonoDevelop.Projects.Extensions\IAssemblyReferenceHandler.cs" />
- <Compile Include="MonoDevelop.Projects.Formats.MD1\MD1CustomDataItem.cs" />
<Compile Include="MonoDevelop.Projects.Formats.MD1\MD1DotNetProjectHandler.cs" />
<Compile Include="MonoDevelop.Projects.Formats.MD1\MD1FileFormat.cs" />
- <Compile Include="MonoDevelop.Projects.Formats.MD1\MD1ProjectService.cs" />
<Compile Include="MonoDevelop.Projects.Formats.MD1\MD1SolutionEntityItemHandler.cs" />
- <Compile Include="MonoDevelop.Projects.Formats.MD1\CombineConfiguration.cs" />
- <Compile Include="MonoDevelop.Projects.Formats.MD1\CombineConfigurationEntry.cs" />
- <Compile Include="MonoDevelop.Projects.Formats.MD1\CmbxFileFormat.cs" />
- <Compile Include="MonoDevelop.Projects.Formats.MD1\PrjxFileFormat.cs" />
- <Compile Include="MonoDevelop.Projects.Formats.MD1\CombineConfigurationSet.cs" />
- <Compile Include="MonoDevelop.Projects.Formats.MD1\CombineStartupMode.cs" />
<Compile Include="MonoDevelop.Projects.Formats.MD1\MD1SolutionItemHandler.cs" />
- <Compile Include="MonoDevelop.Projects.Formats.MD1\BuildActionDataType.cs" />
<Compile Include="MonoDevelop.Projects.Formats.MSBuild\MSBuildFileFormat.cs" />
<Compile Include="MonoDevelop.Projects.Formats.MSBuild\MSBuildProjectHandler.cs" />
<Compile Include="MonoDevelop.Projects.Formats.MSBuild\SlnFileFormat.cs" />
@@ -463,6 +454,7 @@
<Compile Include="MonoDevelop.Core.Web\CredentialProviderExtensions.cs" />
<Compile Include="MonoDevelop.Core.Web\WebService.cs" />
<Compile Include="MonoDevelop.Core.Logging\AssertLoggingTraceListener.cs" />
+ <Compile Include="MonoDevelop.Projects.Formats.MD1\MD1ProjectService.cs" />
</ItemGroup>
<ItemGroup>
<None Include="Makefile.am" />
@@ -489,9 +481,6 @@
<EmbeddedResource Include="frameworks\framework_NET_4_0.xml">
<LogicalName>framework_NET_4_0.xml</LogicalName>
</EmbeddedResource>
- <EmbeddedResource Include="md1format.xml">
- <LogicalName>md1format.xml</LogicalName>
- </EmbeddedResource>
<EmbeddedResource Include="frameworks\framework_NET_4_5.xml">
<LogicalName>framework_NET_4_5.xml</LogicalName>
</EmbeddedResource>
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/BuildActionDataType.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/BuildActionDataType.cs
deleted file mode 100644
index 459982a708..0000000000
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/BuildActionDataType.cs
+++ /dev/null
@@ -1,84 +0,0 @@
-//
-// BuildActionDataType.cs
-//
-// Author:
-// Michael Hutchinson <mhutchinson@novell.com>
-//
-// Copyright (C) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using MonoDevelop.Core.Serialization;
-using MonoDevelop.Core;
-
-namespace MonoDevelop.Projects.Formats.MD1
-{
-
- /// <summary>
- /// Maps some build action names between the MD1 format and the standard MSBuild equivalents
- /// </summary>
- class BuildActionDataType : PrimitiveDataType
- {
- string EmbedAsResource = "EmbedAsResource";
- string Nothing = "Nothing";
- string Exclude = "Exclude";
-
- public BuildActionDataType (Type type): base (type)
- {
- }
-
- internal protected override DataNode OnSerialize (SerializationContext serCtx, object mapData, object value)
- {
- string str = value as string;
- switch (str) {
- case "None":
- str = Nothing;
- break;
- case "EmbeddedResource":
- str = EmbedAsResource;
- break;
- case "Content":
- str = Exclude;
- break;
- }
- return new DataValue (Name, str);
- }
-
- internal protected override object OnDeserialize (SerializationContext serCtx, object mapData, DataNode data)
- {
- string str = ((DataValue)data).Value;
- switch (str) {
- case "Nothing":
- str = BuildAction.None;
- break;
- case "EmbedAsResource":
- str = BuildAction.EmbeddedResource;
- break;
- case "FileCopy":
- case "Exclude":
- str = BuildAction.Content;
- break;
- }
- return str;
- }
- }
-}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CmbxFileFormat.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CmbxFileFormat.cs
deleted file mode 100644
index 4284513e97..0000000000
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CmbxFileFormat.cs
+++ /dev/null
@@ -1,485 +0,0 @@
-//
-// CmbxFileFormat.cs
-//
-// Author:
-// Lluis Sanchez Gual
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.Collections.Specialized;
-using System.IO;
-using System.Xml;
-using MonoDevelop.Core;
-using MonoDevelop.Projects;
-using MonoDevelop.Core.Serialization;
-
-namespace MonoDevelop.Projects.Formats.MD1
-{
- interface ICombineReader {
- object ReadCombine (XmlReader reader);
- }
-
- class CombineReaderV2: XmlConfigurationReader, ICombineReader
- {
- DataSerializer serializer;
- ArrayList entries = new ArrayList ();
- IProgressMonitor monitor;
- Type objectType;
- string baseFile;
-
- public CombineReaderV2 (DataSerializer serializer, IProgressMonitor monitor, Type objectType)
- {
- this.serializer = serializer;
- this.objectType = objectType;
- baseFile = serializer.SerializationContext.BaseFile;
- this.monitor = monitor;
- }
-
- public object ReadCombine (XmlReader reader)
- {
- DataItem data = (DataItem) Read (reader);
-
- // Both combine and SolutionFolder use the same element name, but the types are different
- if (data.Name == "Combine" && objectType == typeof(SolutionFolder))
- data.Name = "SolutionFolder";
-
- SolutionFolder folder;
- IExtendedDataItem obj = (IExtendedDataItem) serializer.CreateInstance (objectType, data);
- Solution sol = obj as Solution;
- if (sol != null) {
- folder = sol.RootFolder;
- sol.ConvertToFormat (MD1ProjectService.FileFormat, false);
- sol.FileName = serializer.SerializationContext.BaseFile;
- folder.ExtendedProperties ["FileName"] = serializer.SerializationContext.BaseFile;
- }
- else {
- folder = (SolutionFolder) obj;
- obj.ExtendedProperties ["FileName"] = serializer.SerializationContext.BaseFile;
- }
-
- // The folder entries must be added before deserializing the folder
- // since other folder members depend on it
-
- foreach (SolutionItem ce in entries)
- folder.Items.Add (ce);
-
- serializer.Deserialize (obj, data);
-
- if (sol != null) {
- CreateSolutionConfigurations (sol);
- LoadStartupMode (sol);
- }
-
-
- return obj;
- }
-
- protected override DataNode ReadChild (XmlReader reader, DataItem parent)
- {
- if (reader.LocalName == "Entries") {
- if (reader.IsEmptyElement) { reader.Skip(); return null; }
- string basePath = Path.GetDirectoryName (baseFile);
- reader.ReadStartElement ();
-
- ArrayList files = new ArrayList ();
- while (MoveToNextElement (reader)) {
- string nodefile = reader.GetAttribute ("filename");
- nodefile = FileService.RelativeToAbsolutePath (basePath, nodefile);
- files.Add (nodefile);
- reader.Skip ();
- }
-
- monitor.BeginTask (GettextCatalog.GetString ("Loading solution: {0}", baseFile), files.Count);
- try {
- foreach (string nodefile in files) {
- try {
- if (Path.GetExtension (nodefile).ToLower () == ".mds") {
- entries.Add (ReadSolutionFolder (nodefile, monitor));
- }
- else {
- SolutionEntityItem entry = (SolutionEntityItem) Services.ProjectService.ReadSolutionItem (monitor, nodefile);
- entries.Add (entry);
- }
- } catch (Exception ex) {
- UnknownSolutionItem entry = new UnknownSolutionItem ();
- entry.FileName = nodefile;
- entry.LoadError = ex.Message;
- entries.Add (entry);
- monitor.ReportError (GettextCatalog.GetString ("Could not load item: {0}", nodefile), ex);
- }
- monitor.Step (1);
- }
- } finally {
- monitor.EndTask ();
- }
-
- reader.ReadEndElement ();
- return null;
- }
-
- return base.ReadChild (reader, parent);
- }
-
- void CreateSolutionConfigurations (Solution sol)
- {
- CombineConfigurationSet configs = (CombineConfigurationSet) sol.ExtendedProperties ["Configurations"];
- foreach (CombineConfiguration config in configs.Configurations) {
- SolutionConfiguration sconf = config.SolutionConfiguration ?? new SolutionConfiguration (config.Name);
- sol.Configurations.Add (sconf);
- }
-
- foreach (SolutionEntityItem item in sol.GetAllSolutionItems<SolutionEntityItem> ()) {
-
- List<IExtendedDataItem> chain = new List<IExtendedDataItem> ();
- SolutionItem it = item;
- while (it != null) {
- chain.Insert (0, it);
- it = it.ParentFolder;
- }
- chain [0] = sol;
-
- foreach (SolutionConfiguration sconfig in sol.Configurations) {
- SolutionConfigurationEntry se = sconfig.AddItem (item);
- string itemConfig = FindItemConfiguration (chain, sconfig.Id);
- if (itemConfig != null) {
- se.Build = true;
- se.ItemConfiguration = itemConfig;
- }
- else
- se.Build = false;
- }
- }
-
- sol.DefaultConfigurationId = configs.Active;
- }
-
- void LoadStartupMode (Solution sol)
- {
- // Recursively look for startup items. If there is more than one,
- // it means it is a multi startup solution.
- List<SolutionEntityItem> items = new List<SolutionEntityItem> ();
- FindStartupItems (sol, sol.RootFolder, items);
-
- if (items.Count == 1) {
- sol.SingleStartup = true;
- sol.StartupItem = items [0];
- } else if (items.Count > 1) {
- sol.SingleStartup = false;
- sol.MultiStartupItems.AddRange (items);
- }
- }
-
- void FindStartupItems (Solution sol, SolutionFolder folder, List<SolutionEntityItem> items)
- {
- CombineStartupMode startupMode = (CombineStartupMode) folder.ExtendedProperties ["StartMode"];
- if (startupMode != null) {
- if (startupMode.SingleStartup) {
- SolutionItem it = FindItemByName (folder, startupMode.StartEntryName);
- if (it is SolutionFolder)
- FindStartupItems (sol, (SolutionFolder)it, items);
- else if (it is SolutionEntityItem)
- items.Add ((SolutionEntityItem) it);
- return;
- } else {
- foreach (CombineStartupEntry cse in startupMode.Entries) {
- if (cse.Type == "Execute") {
- SolutionItem it = FindItemByName (folder, cse.Entry);
- if (it is SolutionFolder)
- FindStartupItems (sol, (SolutionFolder)it, items);
- else if (it is SolutionEntityItem)
- items.Add ((SolutionEntityItem) it);
- }
- }
- }
- }
- }
-
- SolutionItem FindItemByName (SolutionFolder folder, string name)
- {
- foreach (SolutionItem it in folder.Items)
- if (it.Name == name)
- return it;
- return null;
- }
-
- string FindItemConfiguration (List<IExtendedDataItem> chain, string configId)
- {
- for (int n=0; n < chain.Count - 1; n++) {
- CombineConfigurationSet configs = (CombineConfigurationSet) chain[n].ExtendedProperties ["Configurations"];
- if (configs == null)
- return null;
- SolutionItem item = (SolutionItem) chain [n+1];
- CombineConfiguration combineConfig = configs.GetConfig (configId);
- if (combineConfig == null) {
- monitor.ReportWarning ("Configuration '" + configId + "' not found in solution item '" + item.Name + "'.");
- return null;
- }
- string mappedConfigId = combineConfig.GetMappedConfig (item.Name);
- if (mappedConfigId == null)
- return null;
- if (mappedConfigId != string.Empty)
- configId = mappedConfigId;
- }
- return configId;
- }
-
- object ReadSolutionFolder (string file, IProgressMonitor monitor)
- {
- XmlTextReader reader = new XmlTextReader (new StreamReader (file));
- reader.MoveToContent ();
-
- string version = reader.GetAttribute ("version");
- if (version == null)
- version = reader.GetAttribute ("fileversion");
-
- DataSerializer serializer = new DataSerializer (MD1ProjectService.DataContext, file);
-
- try {
- if (version != "2.0")
- throw new MD1UnknownProjectVersion (file, version);
- ICombineReader combineReader = new CombineReaderV2 (serializer, monitor, typeof(SolutionFolder));
- return combineReader.ReadCombine (reader);
- } catch (Exception ex) {
- monitor.ReportError (GettextCatalog.GetString ("Could not load solution: {0}", file), ex);
- throw;
- } finally {
- reader.Close ();
- }
- }
-
- protected override XmlConfigurationReader GetChildReader (MonoDevelop.Core.Serialization.DataItem parent)
- {
- // Don't reuse this serializer for children, since it has solution-specific serialization code
- return XmlConfigurationReader.DefaultReader;
- }
-
- }
-
- class CombineWriterV2: XmlConfigurationWriter
- {
- SolutionFolder folder;
- DataSerializer serializer;
- IProgressMonitor monitor;
- Type objectType;
-
- public CombineWriterV2 (DataSerializer serializer, IProgressMonitor monitor, Type objectType)
- {
- this.serializer = serializer;
- this.monitor = monitor;
- this.objectType = objectType;
- }
-
- public void WriteCombine (XmlWriter writer, object item)
- {
- if (item is Solution) {
- Solution sol = (Solution) item;
- folder = sol.RootFolder;
- CreateCombineConfigurations (sol.RootFolder);
- CreateStartupModes (sol);
- }
- else
- folder = (SolutionFolder) item;
-
- DataItem data = (DataItem) serializer.Serialize (item, objectType);
-
- // Both combine and SolutionFolder use the same element name, but the types are different
- if (data.Name == "SolutionFolder" && objectType == typeof(SolutionFolder))
- data.Name = "Combine";
-
- Write (writer, data);
- }
-
- void CreateStartupModes (Solution sol)
- {
- // Initialize the startup modes
- ReadOnlyCollection<SolutionFolder> folders = sol.GetAllSolutionItems<SolutionFolder> ();
- foreach (SolutionFolder folder in folders) {
- CombineStartupMode startupMode = new CombineStartupMode ();
- startupMode.SingleStartup = true;
- startupMode.StartEntryName = null;
- foreach (SolutionItem it in folder.Items)
- startupMode.AddEntry (it.Name);
- folder.ExtendedProperties ["StartMode"] = startupMode;
- }
-
- // Get the list of startup items
- IEnumerable<SolutionEntityItem> items;
- if (sol.SingleStartup)
- items = new SolutionEntityItem [] { sol.StartupItem };
- else
- items = sol.MultiStartupItems;
-
- // Setup the startup modes
- foreach (SolutionEntityItem it in items) {
- if (it == null)
- continue;
- SolutionFolder folder = it.ParentFolder;
- SolutionItem prevItem = it;
- while (folder != null) {
- CombineStartupMode startupMode = (CombineStartupMode) folder.ExtendedProperties ["StartMode"];
- if (startupMode.SingleStartup) {
- // If a start entry is already set, convert to multi startup mode
- if (startupMode.StartEntryName == null)
- startupMode.StartEntryName = prevItem.Name;
- else if (startupMode.StartEntryName != prevItem.Name) {
- startupMode.SingleStartup = false;
- startupMode.MakeExecutable (startupMode.StartEntryName);
- startupMode.MakeExecutable (prevItem.Name);
- }
- } else {
- // Already multi startup, just add the new item
- startupMode.MakeExecutable (prevItem.Name);
- }
- prevItem = folder;
- folder = folder.ParentFolder;
- }
- }
-
- // Set the startup item for folders which don't have one
- foreach (SolutionFolder folder in folders) {
- CombineStartupMode startupMode = (CombineStartupMode) folder.ExtendedProperties ["StartMode"];
- if (startupMode.SingleStartup && startupMode.StartEntryName == null) {
- if (folder.Items.Count > 0)
- startupMode.StartEntryName = folder.Items [0].Name;
- }
- }
- }
-
- void CreateCombineConfigurations (SolutionFolder folder)
- {
- IDictionary extendedProperties = folder.ExtendedProperties;
-
- CombineConfigurationSet configs = CreateCombineConfigurationSet (folder.ParentSolution, folder.IsRoot);
- configs.Active = folder.ParentSolution.DefaultConfigurationId;
-
- extendedProperties ["Configurations"] = configs;
-
- foreach (SolutionItem it in folder.Items) {
-
- if (it is SolutionFolder) {
- foreach (SolutionConfiguration conf in folder.ParentSolution.Configurations) {
- CombineConfiguration cc = configs.GetConfig (conf.Id);
- CombineConfigurationEntry ce = new CombineConfigurationEntry (it.Name, true, conf.Id);
- cc.Entries.Add (ce);
- }
- CreateCombineConfigurations ((SolutionFolder) it);
- }
- else if (it is SolutionEntityItem) {
- SolutionEntityItem sit = (SolutionEntityItem) it;
- foreach (SolutionConfiguration conf in folder.ParentSolution.Configurations) {
- CombineConfiguration cc = configs.GetConfig (conf.Id);
- SolutionConfigurationEntry sce = conf.GetEntryForItem (sit);
- CombineConfigurationEntry ce = null;
- if (sce == null)
- ce = new CombineConfigurationEntry (it.Name, true, conf.Id);
- else
- ce = new CombineConfigurationEntry (it.Name, sce.Build, sce.ItemConfiguration);
- cc.Entries.Add (ce);
- }
- }
- }
- }
-
- CombineConfigurationSet CreateCombineConfigurationSet (Solution sol, bool isRoot)
- {
- CombineConfigurationSet cset = new CombineConfigurationSet ();
- foreach (SolutionConfiguration conf in sol.Configurations) {
- CombineConfiguration cc = new CombineConfiguration ();
- cc.Name = conf.Id;
- if (isRoot)
- cc.SolutionConfiguration = conf;
- cset.Configurations.Add (cc);
- }
- return cset;
- }
-
- protected override void WriteChildren (XmlWriter writer, DataItem item)
- {
- base.WriteChildren (writer, item);
-
- writer.WriteStartElement ("Entries");
- foreach (SolutionItem entry in folder.Items) {
- writer.WriteStartElement ("Entry");
-
- string baseDir = Path.GetDirectoryName (serializer.SerializationContext.BaseFile);
- string fname = null;
-
- if (entry is SolutionFolder) {
- SolutionFolder cfolder = (SolutionFolder) entry;
- fname = cfolder.ExtendedProperties ["FileName"] as string;
- if (fname == null) {
- // Guess a good file name for the mds file.
- if (Directory.Exists (Path.Combine (baseDir, cfolder.Name)))
- fname = Path.Combine (Path.Combine (baseDir, cfolder.Name), cfolder.Name + ".mds");
- else
- fname = Path.Combine (baseDir, cfolder.Name + ".mds");
- }
- }
- else if (entry is SolutionEntityItem) {
- fname = ((SolutionEntityItem)entry).FileName;
- }
- if (fname == null)
- throw new InvalidOperationException ("Don't know how to save item of type " + entry.GetType ());
-
- string relfname = FileService.AbsoluteToRelativePath (baseDir, fname);
- writer.WriteAttributeString ("filename", relfname);
- writer.WriteEndElement ();
- if (entry is SolutionEntityItem)
- ((SolutionEntityItem)entry).Save (monitor);
- else
- WriteSolutionFolder ((SolutionFolder) entry, fname, monitor);
- }
- writer.WriteEndElement ();
- }
-
- void WriteSolutionFolder (SolutionFolder folder, string file, IProgressMonitor monitor)
- {
- StreamWriter sw = new StreamWriter (file);
- try {
- monitor.BeginTask (GettextCatalog.GetString ("Saving solution: {0}", file), 1);
- XmlTextWriter tw = new XmlTextWriter (sw);
- tw.Formatting = Formatting.Indented;
- DataSerializer serializer = new DataSerializer (MD1ProjectService.DataContext, file);
- CombineWriterV2 combineWriter = new CombineWriterV2 (serializer, monitor, typeof(SolutionFolder));
- combineWriter.WriteCombine (tw, folder);
- } catch (Exception ex) {
- monitor.ReportError (GettextCatalog.GetString ("Could not save solution: {0}", file), ex);
- throw;
- } finally {
- monitor.EndTask ();
- sw.Close ();
- }
- }
-
- protected override XmlConfigurationWriter GetChildWriter (MonoDevelop.Core.Serialization.DataNode data)
- {
- // Don't reuse this serializer for children, since it has solution-specific serialization code
- return XmlConfigurationWriter.DefaultWriter;
- }
-
- }
-}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineConfiguration.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineConfiguration.cs
deleted file mode 100644
index 326f1f20f9..0000000000
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineConfiguration.cs
+++ /dev/null
@@ -1,115 +0,0 @@
-// CombineConfiguration.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using System.Collections.Generic;
-using MonoDevelop.Core.Serialization;
-using MonoDevelop.Projects;
-
-namespace MonoDevelop.Projects.Formats.MD1
-{
- class CombineConfiguration: ICustomDataItem
- {
- [ItemProperty]
- string name;
-
- [ExpandedCollection]
- [ItemProperty ("Entry", ValueType=typeof(CombineConfigurationEntry))]
- List<CombineConfigurationEntry> entries = new List<CombineConfigurationEntry> ();
-
- SolutionConfiguration solutionConfiguration;
-
- public string Name {
- get {
- return name;
- }
- set {
- name = value;
- }
- }
-
- public List<CombineConfigurationEntry> Entries {
- get {
- return entries;
- }
- set {
- entries = value;
- }
- }
-
- public SolutionConfiguration SolutionConfiguration {
- get {
- return solutionConfiguration;
- }
- set {
- solutionConfiguration = value;
- }
- }
-
- public string GetMappedConfig (string itemName)
- {
- foreach (CombineConfigurationEntry ce in entries) {
- if (ce.Name == itemName) {
- if (ce.Build)
- return ce.Configuration;
- else
- return null;
- }
- }
- return null;
- }
-
- public DataCollection Serialize (ITypeSerializer handler)
- {
- DataCollection col = handler.Serialize (this);
- if (solutionConfiguration != null) {
- DataItem it = (DataItem) handler.SerializationContext.Serializer.Serialize (solutionConfiguration);
- col.Merge (it.ItemData);
- }
- return col;
- }
-
- public void Deserialize (ITypeSerializer handler, DataCollection data)
- {
- DataItem item = new DataItem ();
- item.Name = "SolutionConfiguration";
- DataCollection col = item.ItemData;
-
- foreach (DataNode val in data) {
- if (val.Name != "name" && val.Name != "ctype" && val.Name != "Entry")
- col.Add (val);
- }
-
- handler.Deserialize (this, data);
-
- if (data.Count > 0) {
- solutionConfiguration = new SolutionConfiguration (name);
- handler.SerializationContext.Serializer.Deserialize (solutionConfiguration, item);
- }
- }
- }
-}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineConfigurationEntry.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineConfigurationEntry.cs
deleted file mode 100644
index df3eb28de5..0000000000
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineConfigurationEntry.cs
+++ /dev/null
@@ -1,82 +0,0 @@
-// CombineConfigurationEntry.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using MonoDevelop.Core.Serialization;
-
-namespace MonoDevelop.Projects.Formats.MD1
-{
- class CombineConfigurationEntry
- {
- [ItemProperty]
- bool build;
-
- [ItemProperty]
- string name;
-
- [ItemProperty]
- string configuration;
-
- public CombineConfigurationEntry ()
- {
- }
-
- public CombineConfigurationEntry (string name, bool build, string configuration)
- {
- this.name = name;
- this.build = build;
- this.configuration = configuration;
- }
-
- public bool Build {
- get {
- return build;
- }
- set {
- build = value;
- }
- }
-
- public string Name {
- get {
- return name;
- }
- set {
- name = value;
- }
- }
-
- public string Configuration {
- get {
- return configuration;
- }
- set {
- configuration = value;
- }
- }
- }
-}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineStartupMode.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineStartupMode.cs
deleted file mode 100644
index 21c7a6d3d5..0000000000
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineStartupMode.cs
+++ /dev/null
@@ -1,77 +0,0 @@
-// CombineStartupMode.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using System.Collections.Generic;
-using MonoDevelop.Projects;
-using MonoDevelop.Core.Serialization;
-
-namespace MonoDevelop.Projects.Formats.MD1
-{
- class CombineStartupMode
- {
- [ItemProperty ("startupentry")]
- public string StartEntryName;
-
- [ItemProperty ("single")]
- public bool SingleStartup = true;
-
- [ExpandedCollection]
- [ItemProperty ("Execute", ValueType=typeof(CombineStartupEntry))]
- public List<CombineStartupEntry> Entries = new List<CombineStartupEntry> ();
-
- public void AddEntry (string name)
- {
- CombineStartupEntry e = new CombineStartupEntry ();
- e.Entry = name;
- e.Type = "None";
- Entries.Add (e);
- }
-
- public CombineStartupEntry FindEntry (string name)
- {
- foreach (CombineStartupEntry cse in Entries)
- if (cse.Entry == name)
- return cse;
- return null;
- }
-
- public void MakeExecutable (string name)
- {
- FindEntry (name).Type = "Execute";
- }
- }
-
- class CombineStartupEntry
- {
- [ItemProperty ("type")]
- public string Type;
-
- [ItemProperty ("entry")]
- public string Entry;
- }
-}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1CustomDataItem.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1CustomDataItem.cs
deleted file mode 100644
index d5464056c9..0000000000
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1CustomDataItem.cs
+++ /dev/null
@@ -1,193 +0,0 @@
-// MD1CustomDataItem.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using System.IO;
-using MonoDevelop.Core;
-using MonoDevelop.Core.Serialization;
-using MonoDevelop.Core.Assemblies;
-
-namespace MonoDevelop.Projects.Formats.MD1
-{
- public class MD1CustomDataItem: ICustomDataItemHandler
- {
- public virtual DataCollection Serialize (object obj, ITypeSerializer handler)
- {
- if (obj is ProjectFile) {
- ProjectFile pf = (ProjectFile) obj;
- DataCollection data = handler.Serialize (obj);
-
- //Map the Content build action to the old FileCopy action if CopyToOutputDirectory is set
- if (pf.BuildAction == BuildAction.Content && pf.CopyToOutputDirectory != FileCopyMode.None) {
- DataValue value = data ["buildaction"] as DataValue;
- if (value != null) {
- data.Remove (value);
- data.Add (new DataValue ("buildaction", "FileCopy"));
- data.Extract ("copyToOutputDirectory");
- }
- }
- // Don't store the resource id if it matches the default.
- if (pf.BuildAction == BuildAction.EmbeddedResource && pf.ResourceId != Path.GetFileName (pf.FilePath))
- data.Add (new DataValue ("resource_id", pf.ResourceId));
- return data;
- }
- else if (obj is SolutionEntityItem) {
- DotNetProject project = obj as DotNetProject;
- if (project != null) {
- foreach (DotNetProjectConfiguration config in project.Configurations)
- config.ExtendedProperties ["Build/target"] = project.CompileTarget.ToString ();
- }
- DataCollection data = handler.Serialize (obj);
- SolutionEntityItem item = (SolutionEntityItem) obj;
- if (item.DefaultConfiguration != null) {
- DataItem confItem = data ["Configurations"] as DataItem;
- if (confItem != null) {
- confItem.UniqueNames = true;
- if (item.ParentSolution != null)
- confItem.ItemData.Add (new DataValue ("active", item.ParentSolution.DefaultConfigurationId));
- }
- }
- if (project != null) {
- data.Extract ("targetFramework");
- data.Add (new DataValue ("targetFramework", project.TargetFramework.Id.ToLegacyIdString ()));
- }
- WriteItems (handler, (SolutionEntityItem) obj, data);
- return data;
- }
- else if (obj is ProjectReference) {
- ProjectReference pref = (ProjectReference) obj;
- DataCollection data = handler.Serialize (obj);
- string refto = pref.Reference;
- if (pref.ReferenceType == ReferenceType.Assembly) {
- string basePath = Path.GetDirectoryName (handler.SerializationContext.BaseFile);
- refto = FileService.AbsoluteToRelativePath (basePath, refto);
- } else if (pref.ReferenceType == ReferenceType.Package && pref.LoadedReference != null)
- refto = pref.LoadedReference;
-
- data.Add (new DataValue ("refto", refto));
- return data;
- }
- return handler.Serialize (obj);
- }
-
- void WriteItems (ITypeSerializer handler, SolutionEntityItem item, DataCollection data)
- {
- DataItem items = new DataItem ();
- items.Name = "Items";
- foreach (object it in item.Items) {
- if (it is ProjectFile || it is ProjectReference)
- continue; // Already handled by serializer
- DataNode node = handler.SerializationContext.Serializer.Serialize (it, it.GetType ());
- items.ItemData.Add (node);
- }
- if (items.HasItemData)
- data.Add (items);
- }
-
- public virtual void Deserialize (object obj, ITypeSerializer handler, DataCollection data)
- {
- if (obj is ProjectFile) {
- ProjectFile pf = (ProjectFile) obj;
-
- //Map the old FileCopy action to the Content BuildAction with CopyToOutputDirectory set to "always"
- //BuildActionDataType handles mapping the BuildAction to "Content"
- DataValue value = data ["buildaction"] as DataValue;
- bool isFileCopy = value != null && value.Value == "FileCopy";
-
- DataValue resourceId = data.Extract ("resource_id") as DataValue;
-
- handler.Deserialize (obj, data);
- if (isFileCopy)
- pf.CopyToOutputDirectory = FileCopyMode.Always;
-
- if (resourceId != null)
- pf.ResourceId = resourceId.Value;
- }
- else if (obj is SolutionEntityItem) {
- DataValue ac = null;
- DataItem confItem = data ["Configurations"] as DataItem;
- if (confItem != null)
- ac = (DataValue) confItem.ItemData.Extract ("active");
-
- DataItem items = data.Extract ("Items") as DataItem;
- if (items != null)
- ReadItems (handler, (SolutionEntityItem)obj, items);
-
- handler.Deserialize (obj, data);
- if (ac != null) {
- SolutionEntityItem item = (SolutionEntityItem) obj;
- item.DefaultConfigurationId = ac.Value;
- }
- DotNetProject np = obj as DotNetProject;
- if (np != null) {
- // Import the framework version
- TargetFrameworkMoniker fx = null;
- DataValue vfx = data["targetFramework"] as DataValue;
- if (vfx != null)
- fx = TargetFrameworkMoniker.Parse (vfx.Value);
- else {
- vfx = data ["clr-version"] as DataValue;
- if (vfx != null && vfx.Value == "Net_2_0")
- fx = TargetFrameworkMoniker.NET_2_0;
- else if (vfx != null && vfx.Value == "Net_1_1")
- fx = TargetFrameworkMoniker.NET_1_1;
- }
- if (fx != null)
- np.TargetFramework = Runtime.SystemAssemblyService.GetTargetFramework (fx);
-
- // Get the compile target from one of the configurations
- if (np.Configurations.Count > 0)
- np.CompileTarget = (CompileTarget) Enum.Parse (typeof(CompileTarget), (string) np.Configurations [0].ExtendedProperties ["Build/target"]);
- }
- }
- else if (obj is ProjectReference) {
- ProjectReference pref = (ProjectReference) obj;
- DataValue refto = data.Extract ("refto") as DataValue;
- handler.Deserialize (obj, data);
- if (refto != null) {
- pref.Reference = refto.Value;
- if (pref.ReferenceType == ReferenceType.Assembly) {
- string basePath = Path.GetDirectoryName (handler.SerializationContext.BaseFile);
- pref.Reference = FileService.RelativeToAbsolutePath (basePath, pref.Reference);
- }
- }
- } else
- handler.Deserialize (obj, data);
- }
-
- void ReadItems (ITypeSerializer handler, SolutionEntityItem item, DataItem items)
- {
- foreach (DataNode node in items.ItemData) {
- DataType dtype = handler.SerializationContext.Serializer.DataContext.GetConfigurationDataType (node.Name);
- if (dtype != null && typeof(ProjectItem).IsAssignableFrom (dtype.ValueType)) {
- ProjectItem it = (ProjectItem) handler.SerializationContext.Serializer.Deserialize (dtype.ValueType, node);
- item.Items.Add (it);
- }
- }
- }
- }
-}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1DotNetProjectHandler.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1DotNetProjectHandler.cs
index becbcb3938..c370403ffa 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1DotNetProjectHandler.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1DotNetProjectHandler.cs
@@ -28,16 +28,12 @@
using System;
using System.IO;
using System.Diagnostics;
-using System.Globalization;
using System.Collections.Generic;
using System.CodeDom.Compiler;
using System.Text.RegularExpressions;
-using System.Xml;
using MonoDevelop.Core;
-using MonoDevelop.Core.Assemblies;
using MonoDevelop.Core.Execution;
using MonoDevelop.Projects.Extensions;
-using MonoDevelop.Projects.Formats.MSBuild;
using Microsoft.Build.BuildEngine;
namespace MonoDevelop.Projects.Formats.MD1
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1FileFormat.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1FileFormat.cs
index e71ed434ef..669a0e92c7 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1FileFormat.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1FileFormat.cs
@@ -36,15 +36,7 @@ using MonoDevelop.Core;
namespace MonoDevelop.Projects.Formats.MD1
{
- class MD1UnknownProjectVersion : Exception
- {
- public MD1UnknownProjectVersion (string filename, string unsupportedVersion)
- : base (GettextCatalog.GetString ("The file '{0}' has an unknown format version (version '{1}')'.", filename, unsupportedVersion))
- {
- }
- }
-
- internal class MD1FileFormat: IFileFormat
+ class MD1FileFormat: IFileFormat
{
public bool SupportsMixedFormats {
get { return true; }
@@ -52,47 +44,25 @@ namespace MonoDevelop.Projects.Formats.MD1
public FilePath GetValidFormatName (object obj, FilePath fileName)
{
- if (obj is Project)
- return Path.ChangeExtension (fileName, ".mdp");
- else if (obj is Solution)
- return Path.ChangeExtension (fileName, ".mds");
- else if (obj is WorkspaceItem)
+ if (obj is WorkspaceItem && !(obj is Solution))
return Path.ChangeExtension (fileName, ".mdw");
- else
- return Path.ChangeExtension (fileName, ".mdse");
+ throw new InvalidOperationException ();
}
public bool CanReadFile (FilePath file, Type expectedType)
{
string ext = Path.GetExtension (file).ToLower ();
-
- if (ext == ".mds" && expectedType.IsAssignableFrom (typeof(Solution)))
- return true;
- else if (ext == ".mdp" && expectedType.IsAssignableFrom (typeof(Project)))
- return true;
- else if (ext == ".mdw" && expectedType.IsAssignableFrom (typeof(WorkspaceItem)))
- return true;
- return ext == ".mdse" && expectedType.IsAssignableFrom (typeof(SolutionEntityItem));
+ return ext == ".mdw" && expectedType.IsAssignableFrom (typeof(WorkspaceItem));
}
public bool CanWriteFile (object obj)
{
- return (obj is SolutionEntityItem) || (obj is WorkspaceItem);
+ return (obj is WorkspaceItem && !(obj is Solution));
}
public List<FilePath> GetItemFiles (object obj)
{
- List<FilePath> list = new List<FilePath> ();
- if (obj is Solution) {
- Solution sol = (Solution) obj;
- list.Add (sol.FileName);
- foreach (SolutionFolder f in sol.GetAllSolutionItems<SolutionFolder> ()) {
- string fn = f.ExtendedProperties ["FileName"] as string;
- if (!string.IsNullOrEmpty (fn))
- list.Add (fn);
- }
- }
- return list;
+ return new List<FilePath> ();
}
public void WriteFile (FilePath file, object node, IProgressMonitor monitor)
@@ -121,56 +91,8 @@ namespace MonoDevelop.Projects.Formats.MD1
void WriteFileInternal (FilePath actualFile, FilePath outFile, object node, IProgressMonitor monitor)
{
- if (node is Project) {
- WriteProject (actualFile, outFile, (Project) node, monitor);
- }
- else if (node is Solution) {
- WriteSolution (actualFile, outFile, (Solution) node, monitor);
- }
- else if (node is WorkspaceItem) {
- WriteWorkspaceItem (actualFile, outFile, (WorkspaceItem) node, monitor);
- }
- else {
- WriteSolutionEntityItem (actualFile, outFile, node, monitor);
- }
- }
-
- void WriteProject (FilePath actualFile, FilePath outFile, Project project, IProgressMonitor monitor)
- {
- StreamWriter sw = new StreamWriter (outFile);
- try {
- monitor.BeginTask (GettextCatalog.GetString("Saving project: {0}", actualFile), 1);
- XmlDataSerializer ser = new XmlDataSerializer (MD1ProjectService.DataContext);
- ser.SerializationContext.BaseFile = actualFile;
- ser.SerializationContext.ProgressMonitor = monitor;
- ser.Serialize (sw, project, typeof(Project));
- } catch (Exception ex) {
- monitor.ReportError (GettextCatalog.GetString ("Could not save project: {0}", actualFile), ex);
- throw;
- } finally {
- monitor.EndTask ();
- sw.Close ();
- }
- }
-
- void WriteSolution (FilePath actualFile, FilePath outFile, Solution solution, IProgressMonitor monitor)
- {
- StreamWriter sw = new StreamWriter (outFile);
- try {
- monitor.BeginTask (GettextCatalog.GetString ("Saving solution: {0}", actualFile), 1);
- XmlTextWriter tw = new XmlTextWriter (sw);
- tw.Formatting = Formatting.Indented;
- DataSerializer serializer = new DataSerializer (MD1ProjectService.DataContext, actualFile);
- CombineWriterV2 combineWriter = new CombineWriterV2 (serializer, monitor, typeof(Solution));
- combineWriter.WriteCombine (tw, solution);
- } catch (Exception ex) {
- monitor.ReportError (GettextCatalog.GetString ("Could not save solution: {0}", actualFile), ex);
- throw;
- } finally {
- monitor.EndTask ();
- sw.Close ();
- }
- }
+ WriteWorkspaceItem (actualFile, outFile, (WorkspaceItem) node, monitor);
+ }
void WriteWorkspaceItem (FilePath actualFile, FilePath outFile, WorkspaceItem item, IProgressMonitor monitor)
{
@@ -205,65 +127,17 @@ namespace MonoDevelop.Projects.Formats.MD1
}
}
- void WriteSolutionEntityItem (FilePath actualFile, FilePath outFile, object node, IProgressMonitor monitor)
- {
- StreamWriter sw = new StreamWriter (outFile);
- try {
- monitor.BeginTask (string.Format (GettextCatalog.GetString("Saving solution item: {0}"), actualFile), 1);
- XmlDataSerializer ser = new XmlDataSerializer (MD1ProjectService.DataContext);
- ser.SerializationContext.BaseFile = actualFile;
- ser.SerializationContext.ProgressMonitor = monitor;
- ser.Serialize (sw, node, typeof(SolutionEntityItem));
- } catch (Exception ex) {
- monitor.ReportError (string.Format (GettextCatalog.GetString ("Could not save solution item: {0}"), actualFile), ex);
- } finally {
- monitor.EndTask ();
- sw.Close ();
- }
- }
-
public object ReadFile (FilePath fileName, Type expectedType, IProgressMonitor monitor)
{
+ string ext = Path.GetExtension (fileName).ToLower ();
+ if (ext != ".mdw")
+ throw new ArgumentException ();
+
object readObject = null;
-
+
ProjectExtensionUtil.BeginLoadOperation ();
try {
- string ext = Path.GetExtension (fileName).ToLower ();
-
- if (ext == ".mdp") {
- object project = ReadProjectFile (fileName, monitor);
- if (project is DotNetProject)
- ((DotNetProject)project).SetItemHandler (new MD1DotNetProjectHandler ((DotNetProject) project));
- readObject = project;
- }
- else if (ext == ".mds") {
- readObject = ReadCombineFile (fileName, monitor);
- }
- else if (ext == ".mdw") {
- readObject = ReadWorkspaceItemFile (fileName, monitor);
- }
- else {
- XmlTextReader reader = new XmlTextReader (new StreamReader (fileName));
- try {
- monitor.BeginTask (string.Format (GettextCatalog.GetString ("Loading solution item: {0}"), fileName), 1);
- reader.MoveToContent ();
- XmlDataSerializer ser = new XmlDataSerializer (MD1ProjectService.DataContext);
- ser.SerializationContext.BaseFile = fileName;
- ser.SerializationContext.ProgressMonitor = monitor;
- SolutionEntityItem entry = (SolutionEntityItem) ser.Deserialize (reader, typeof(SolutionEntityItem));
- entry.FileName = fileName;
- MD1ProjectService.InitializeHandler (entry);
- readObject = entry;
- }
- catch (Exception ex) {
- monitor.ReportError (string.Format (GettextCatalog.GetString ("Could not load solution item: {0}"), fileName), ex);
- throw;
- }
- finally {
- monitor.EndTask ();
- reader.Close ();
- }
- }
+ readObject = ReadWorkspaceItemFile (fileName, monitor);
} finally {
ProjectExtensionUtil.EndLoadOperation ();
}
@@ -274,64 +148,6 @@ namespace MonoDevelop.Projects.Formats.MD1
return readObject;
}
- object ReadCombineFile (FilePath file, IProgressMonitor monitor)
- {
- XmlTextReader reader = new XmlTextReader (new StreamReader (file));
- reader.MoveToContent ();
-
- string version = reader.GetAttribute ("version");
- if (version == null) version = reader.GetAttribute ("fileversion");
-
- DataSerializer serializer = new DataSerializer (MD1ProjectService.DataContext, file);
- ICombineReader combineReader = null;
-
- if (version == "2.0" || version == "2.1")
- combineReader = new CombineReaderV2 (serializer, monitor, typeof(Solution));
-
- try {
- if (combineReader != null)
- return combineReader.ReadCombine (reader);
- else
- throw new MD1UnknownProjectVersion (file, version);
- } catch (Exception ex) {
- monitor.ReportError (GettextCatalog.GetString ("Could not load solution: {0}", file), ex);
- throw;
- } finally {
- reader.Close ();
- }
- }
-
- object ReadProjectFile (FilePath fileName, IProgressMonitor monitor)
- {
- XmlTextReader reader = null;
- try {
- reader = new XmlTextReader (new StreamReader (fileName));
- reader.MoveToContent ();
-
- string version = reader.GetAttribute ("version");
- if (version == null) version = reader.GetAttribute ("fileversion");
-
- DataSerializer serializer = new DataSerializer (MD1ProjectService.DataContext, fileName);
- IProjectReader projectReader = null;
-
- monitor.BeginTask (GettextCatalog.GetString ("Loading project: {0}", fileName), 1);
-
- if (version == "2.0" || version == "2.1") {
- projectReader = new ProjectReaderV2 (serializer);
- return projectReader.ReadProject (reader);
- }
- else
- throw new MD1UnknownProjectVersion (fileName, version);
- } catch (Exception ex) {
- monitor.ReportError (GettextCatalog.GetString ("Could not load project: {0}", fileName), ex);
- throw;
- } finally {
- monitor.EndTask ();
- if (reader != null)
- reader.Close ();
- }
- }
-
object ReadWorkspaceItemFile (FilePath fileName, IProgressMonitor monitor)
{
XmlTextReader reader = new XmlTextReader (new StreamReader (fileName));
@@ -358,9 +174,6 @@ namespace MonoDevelop.Projects.Formats.MD1
public void ConvertToFormat (object obj)
{
- SolutionItem item = obj as SolutionItem;
- if (item != null)
- MD1ProjectService.InitializeHandler (item);
}
public IEnumerable<string> GetCompatibilityWarnings (object obj)
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1ProjectService.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1ProjectService.cs
index 68c57e7630..250404fc5d 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1ProjectService.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/MD1ProjectService.cs
@@ -25,94 +25,29 @@
//
//
-using System;
-using Mono.Addins;
-using MonoDevelop.Core;
using MonoDevelop.Projects;
using MonoDevelop.Core.Serialization;
-using MonoDevelop.Projects.Extensions;
namespace MonoDevelop.Projects.Formats.MD1
{
- public class MD1ProjectService
+ static class MD1ProjectService
{
static DataContext dataContext;
- static XmlMapAttributeProvider attributeProvider;
-
- const string MD1SerializationMapsExtensionPath = "/MonoDevelop/ProjectModel/MD1SerializationMaps";
-
+
public static DataContext DataContext {
get {
if (dataContext == null) {
- dataContext = new DataContext (attributeProvider);
+ dataContext = new DataContext ();
Services.ProjectService.InitializeDataContext (dataContext);
}
return dataContext;
}
}
- static MD1ProjectService ()
- {
- attributeProvider = new XmlMapAttributeProvider ();
- AddinManager.AddExtensionNodeHandler (MD1SerializationMapsExtensionPath, OnMapsChanged);
-
- Services.ProjectService.DataContextChanged += delegate {
- // Regenerate the data context
- dataContext = null;
- };
- }
-
- static void OnMapsChanged (object s, ExtensionNodeEventArgs args)
- {
- if (args.Change == ExtensionChange.Add) {
- SerializationMapNode node = (SerializationMapNode) args.ExtensionNode;
- attributeProvider.AddMap (node.Addin, node.FileContent, node.FileId);
- }
- else {
- SerializationMapNode node = (SerializationMapNode) args.ExtensionNode;
- attributeProvider.RemoveMap (node.FileId);
- }
-
- // Regenerate the data context
- dataContext = null;
- }
-
public static FileFormat FileFormat {
get {
return Services.ProjectService.FileFormats.GetFileFormat ("MD1");
}
}
-
- public static string GetItemFileName (SolutionItem item)
- {
- if (item is SolutionEntityItem)
- return ((SolutionEntityItem)item).FileName;
- return (string) item.ExtendedProperties ["FileName"];
- }
-
- public static void SetItemFileName (SolutionItem item, string fileName)
- {
- if (item is SolutionEntityItem)
- ((SolutionEntityItem)item).FileName = fileName;
- else
- item.ExtendedProperties ["FileName"] = fileName;
- }
-
- public static void InitializeHandler (SolutionItem item)
- {
- if (item is DotNetProject) {
- DotNetProject p = (DotNetProject) item;
- item.SetItemHandler (new MD1DotNetProjectHandler (p));
- p.FileName = FileFormat.GetValidFileName (p, p.FileName);
- }
- else if (item is SolutionEntityItem) {
- SolutionEntityItem it = (SolutionEntityItem) item;
- item.SetItemHandler (new MD1SolutionEntityItemHandler (it));
- it.FileName = FileFormat.GetValidFileName (it, it.FileName);
- }
- else {
- item.SetItemHandler (new MD1SolutionItemHandler (item));
- }
- }
}
}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/PrjxFileFormat.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/PrjxFileFormat.cs
deleted file mode 100644
index 21a81916fb..0000000000
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/PrjxFileFormat.cs
+++ /dev/null
@@ -1,59 +0,0 @@
-//
-// FileFormatManager.cs
-//
-// Author:
-// Lluis Sanchez Gual
-//
-// Copyright (C) 2005 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
-using System;
-using System.IO;
-using System.Xml;
-using MonoDevelop.Core.Serialization;
-using MonoDevelop.Core;
-
-namespace MonoDevelop.Projects.Formats.MD1
-{
- interface IProjectReader {
- Project ReadProject (XmlReader reader);
- }
-
- class ProjectReaderV2: XmlConfigurationReader, IProjectReader
- {
- DataSerializer serializer;
-
- public ProjectReaderV2 (DataSerializer serializer)
- {
- this.serializer = serializer;
- }
-
- public Project ReadProject (XmlReader reader)
- {
- DataNode data = Read (reader);
- Project project = (Project) serializer.Deserialize (typeof(Project), data);
- project.FileFormat = MD1ProjectService.FileFormat;
- project.FileName = serializer.SerializationContext.BaseFile;
- return project;
- }
- }
-}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProject.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProject.cs
index af2dde2803..b5cb33b05b 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProject.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProject.cs
@@ -769,6 +769,11 @@ namespace MonoDevelop.Projects.Formats.MSBuild
return EvaluatedElement [name, MSBuildProject.Schema] != null;
}
+ public void SetMetadata (string name, bool value)
+ {
+ SetMetadata (name, value ? "True" : "False");
+ }
+
public void SetMetadata (string name, string value, bool isXml = false)
{
// Don't overwrite the metadata value if the new value is the same as the old
@@ -806,6 +811,16 @@ namespace MonoDevelop.Projects.Formats.MSBuild
return null;
}
+ public bool? GetBoolMetadata (string name)
+ {
+ var val = GetMetadata (name);
+ if (String.Equals (val, "False", StringComparison.OrdinalIgnoreCase))
+ return false;
+ if (String.Equals (val, "True", StringComparison.OrdinalIgnoreCase))
+ return true;
+ return null;
+ }
+
public bool GetMetadataIsFalse (string name)
{
return String.Compare (GetMetadata (name), "False", StringComparison.OrdinalIgnoreCase) == 0;
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs
index 36a1815e27..1ad48eda05 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs
@@ -866,7 +866,6 @@ namespace MonoDevelop.Projects.Formats.MSBuild
pref = new ProjectReference (ReferenceType.Package, buildItem.Include);
pref.ExtendedProperties ["_OriginalMSBuildReferenceHintPath"] = hintPath;
}
- pref.LocalCopy = !buildItem.GetMetadataIsFalse ("Private");
} else {
string asm = buildItem.Include;
// This is a workaround for a VS bug. Looks like it is writing this assembly incorrectly
@@ -877,8 +876,11 @@ namespace MonoDevelop.Projects.Formats.MSBuild
else if (asm == "system")
asm = "System";
pref = new ProjectReference (ReferenceType.Package, asm);
- pref.LocalCopy = !buildItem.GetMetadataIsFalse ("Private");
}
+ var privateCopy = buildItem.GetBoolMetadata ("Private");
+ if (privateCopy != null)
+ pref.LocalCopy = privateCopy.Value;
+
pref.Condition = buildItem.Condition;
string specificVersion = buildItem.GetMetadata ("SpecificVersion");
if (string.IsNullOrWhiteSpace (specificVersion)) {
@@ -898,8 +900,10 @@ namespace MonoDevelop.Projects.Formats.MSBuild
string path = MSBuildProjectService.FromMSBuildPath (project.ItemDirectory, buildItem.Include);
string name = Path.GetFileNameWithoutExtension (path);
ProjectReference pref = new ProjectReference (ReferenceType.Project, name);
- pref.LocalCopy = !buildItem.GetMetadataIsFalse ("Private");
pref.Condition = buildItem.Condition;
+ var privateCopy = buildItem.GetBoolMetadata ("Private");
+ if (privateCopy != null)
+ pref.LocalCopy = privateCopy.Value;
return pref;
}
else if (dt == null && !string.IsNullOrEmpty (buildItem.Include)) {
@@ -1456,11 +1460,6 @@ namespace MonoDevelop.Projects.Formats.MSBuild
}
buildItem.SetMetadata ("HintPath", hintPath);
-
- if (!pref.LocalCopy && pref.CanSetLocalCopy)
- buildItem.SetMetadata ("Private", "False");
- else
- buildItem.UnsetMetadata ("Private");
}
else if (pref.ReferenceType == ReferenceType.Package) {
string include = pref.StoredReference;
@@ -1495,11 +1494,6 @@ namespace MonoDevelop.Projects.Formats.MSBuild
buildItem.SetMetadata ("HintPath", hintPath);
else
buildItem.UnsetMetadata ("HintPath");
-
- if (!pref.LocalCopy && pref.CanSetLocalCopy)
- buildItem.SetMetadata ("Private", "False");
- else
- buildItem.UnsetMetadata ("Private");
}
else if (pref.ReferenceType == ReferenceType.Project) {
Project refProj = Item.ParentSolution.FindProjectByName (pref.Reference);
@@ -1511,10 +1505,6 @@ namespace MonoDevelop.Projects.Formats.MSBuild
else
buildItem.UnsetMetadata ("Project");
buildItem.SetMetadata ("Name", refProj.Name);
- if (!pref.LocalCopy)
- buildItem.SetMetadata ("Private", "False");
- else
- buildItem.UnsetMetadata ("Private");
} else {
monitor.ReportWarning (GettextCatalog.GetString ("Reference to unknown project '{0}' ignored.", pref.Reference));
return;
@@ -1525,6 +1515,12 @@ namespace MonoDevelop.Projects.Formats.MSBuild
DataType dt = ser.DataContext.GetConfigurationDataType (pref.GetType ());
buildItem = AddOrGetBuildItem (msproject, oldItems, dt.Name, pref.Reference);
}
+
+ if (pref.LocalCopy != pref.DefaultLocalCopy)
+ buildItem.SetMetadata ("Private", pref.LocalCopy);
+ else
+ buildItem.UnsetMetadata ("Private");
+
WriteBuildItemMetadata (ser, buildItem, pref, oldItems);
buildItem.Condition = pref.Condition;
}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/DotNetProject.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/DotNetProject.cs
index cfe91f42e8..97af70a4bc 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/DotNetProject.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/DotNetProject.cs
@@ -570,7 +570,7 @@ namespace MonoDevelop.Projects
list.Add (mdbFile, copyIfNewer);
}
}
- else if (projectReference.ReferenceType == ReferenceType.Custom) {
+ else {
foreach (string refFile in projectReference.GetReferencedFileNames (configuration))
list.Add (refFile);
}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectReference.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectReference.cs
index ed206d469e..70fde81873 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectReference.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectReference.cs
@@ -58,7 +58,7 @@ namespace MonoDevelop.Projects
ReferenceType referenceType = ReferenceType.Custom;
DotNetProject ownerProject;
string reference = String.Empty;
- bool localCopy = true;
+ bool? localCopy;
// A project may reference assemblies which are not available
// in the system where it is opened. For example, opening
@@ -117,14 +117,13 @@ namespace MonoDevelop.Projects
{
referenceType = ReferenceType.Project;
reference = referencedProject.Name;
- specificVersion = localCopy = true;
+ specificVersion = true;
}
public ProjectReference (SystemAssembly asm)
{
referenceType = ReferenceType.Package;
reference = asm.FullName;
- localCopy = false;
if (asm.Package.IsFrameworkPackage)
specificVersion = false;
if (!asm.Package.IsGacPackage)
@@ -184,16 +183,30 @@ namespace MonoDevelop.Projects
public bool LocalCopy {
get {
- return localCopy;
+ // When not explicitly set, the default value of LocalCopy depends on the type of reference.
+ // For project and file references the default is true. For framework and package assemblies
+ // (including GAC) the default is false
+
+ if (localCopy.HasValue)
+ return localCopy.Value;
+ return DefaultLocalCopy;
}
set {
localCopy = value;
+ if (ownerProject != null)
+ ownerProject.NotifyModified (null);
}
}
+ internal bool DefaultLocalCopy {
+ get {
+ return referenceType != ReferenceType.Package;
+ }
+ }
+
public bool CanSetLocalCopy {
get {
- return cachedPackage == null || !cachedPackage.IsFrameworkPackage;
+ return true;
}
}
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectService.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectService.cs
index 1bedba3038..6117019232 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectService.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/ProjectService.cs
@@ -502,22 +502,19 @@ namespace MonoDevelop.Projects
}
throw new InvalidOperationException ("Project type '" + type + "' not found");
}
-
+
+ //TODO: find solution that contains the project if possible
public Solution GetWrapperSolution (IProgressMonitor monitor, string filename)
{
// First of all, check if a solution with the same name already exists
FileFormat[] formats = Services.ProjectService.FileFormats.GetFileFormats (filename, typeof(SolutionEntityItem));
if (formats.Length == 0)
- formats = new FileFormat [] { DefaultFileFormat };
+ formats = new [] { DefaultFileFormat };
Solution tempSolution = new Solution ();
- FileFormat solutionFileFormat;
- if (formats [0].CanWrite (tempSolution))
- solutionFileFormat = formats [0];
- else
- solutionFileFormat = MonoDevelop.Projects.Formats.MD1.MD1ProjectService.FileFormat;
+ FileFormat solutionFileFormat = formats.FirstOrDefault (f => f.CanWrite (tempSolution)) ?? DefaultFileFormat;
string solFileName = solutionFileFormat.GetValidFileName (tempSolution, filename);
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/SolutionItem.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/SolutionItem.cs
index 0675689fa3..488dd2d19d 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/SolutionItem.cs
+++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/SolutionItem.cs
@@ -898,7 +898,7 @@ namespace MonoDevelop.Projects
/// <param name='hint'>
/// Hint about which part of the solution item has been modified. This will typically be the property name.
/// </param>
- protected void NotifyModified (string hint)
+ internal protected void NotifyModified (string hint)
{
if (!Loading)
ItemHandler.OnModified (hint);
diff --git a/main/src/core/MonoDevelop.Core/md1format.xml b/main/src/core/MonoDevelop.Core/md1format.xml
deleted file mode 100644
index f92a445415..0000000000
--- a/main/src/core/MonoDevelop.Core/md1format.xml
+++ /dev/null
@@ -1,91 +0,0 @@
-<SerializationMap>
- <DataItem class = "MonoDevelop.Projects.Solution" name="Combine">
- <LiteralProperty name="fileversion" value="2.0" />
- <ItemProperty member="description" defaultValue="" />
- <ItemProperty member="version" defaultValue="0.1"/>
- <ItemProperty member="outputdir" name="outputpath" serializationDataType="MonoDevelop.Projects.PathDataType" />
- <ItemMember name="CombineConfigurations" type="MonoDevelop.Projects.Formats.MD1.CombineConfigurationSet"/>
- <ItemProperty member="CombineConfigurations" name="Configurations" />
- <ItemMember name="StartMode" type="MonoDevelop.Projects.Formats.MD1.CombineStartupMode"/>
- <ItemProperty member="StartMode" name="StartMode" />
- <ItemProperty member="Policies" skipEmpty="true" />
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.SolutionFolder" name="SolutionFolder">
- <ItemProperty member="name" />
- <LiteralProperty name="fileversion" value="2.0" />
- <ItemMember name="CombineConfigurations" type="MonoDevelop.Projects.Formats.MD1.CombineConfigurationSet"/>
- <ItemProperty member="CombineConfigurations" name="Configurations" />
- <ItemMember name="StartMode" type="MonoDevelop.Projects.Formats.MD1.CombineStartupMode"/>
- <ItemProperty member="StartMode" name="StartMode" />
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.SolutionItem">
- <ItemProperty member="Policies" skipEmpty="true" />
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.SolutionEntityItem" name="CombineEntry" fallbackType="MonoDevelop.Projects.UnknownSolutionItem" customDataItem="MonoDevelop.Projects.Formats.MD1.MD1CustomDataItem">
- <ItemProperty member="releaseVersion" name = "releaseVersion" defaultValue="0.1"/>
- <ItemProperty member="syncReleaseVersion" name = "syncReleaseVersion" defaultValue="true"/>
- <ItemProperty member="Name" name="name"/>
- <LiteralProperty name="fileversion" value="2.0" />
- <ItemProperty member="Configurations"/>
- <ItemProperty member="Configurations" scope="*" name="Configuration" valueType="MonoDevelop.Projects.SolutionItemConfiguration"/>
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.Project" fallbackType="MonoDevelop.Projects.UnknownProject">
- <ItemProperty member="description" defaultValue=""/>
- <ItemProperty member="newFileSearch" name="newfilesearch" defaultValue="None" />
- <ItemProperty member="Files" name="Contents" />
- <ItemProperty member="Files" scope="*" name="File" />
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.DotNetProject" name="AbstractDotNetProject">
- <ItemProperty member="languageName" name="language"/>
- <ItemProperty member="UsePartialTypes" defaultValue="true"/>
- <ItemProperty member="defaultNamespace" name="DefaultNamespace" defaultValue="" />
- <ItemProperty member="References" name="References" />
- <ItemProperty member="LanguageParameters" skipEmpty="true" />
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.DotNetAssemblyProject" name="DotNetProject">
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.DotNetProjectConfiguration">
- <ItemProperty member="assembly" name="Output/assembly"/>
- <ItemProperty member="signAssembly" name="Output/signAssembly" defaultValue="false" />
- <ItemProperty member="delaySign" name="Output/delaySign" defaultValue="false" />
- <ItemProperty member="assemblyKeyFile" name="Output/assemblyKeyFile" defaultValue="" />
- <LiteralProperty name="Execution/runtime" value="MsNet" />
- <ItemMember name="md1_CompileTarget" type="System.String"/>
- <ItemProperty member="md1_CompileTarget" name="Build/target"/>
- <ItemProperty member="CompilationParameters" name="CodeGeneration" fallbackType="MonoDevelop.Projects.UnknownCompilationParameters"/>
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.ItemConfiguration">
- <ItemProperty member="Id" name="name" />
- <ItemProperty member="customCommands" name="CustomCommands" />
- <ItemProperty member="customCommands" name="Command" scope="*" />
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.ProjectConfiguration">
- <ItemProperty member="outputDirectory" name="Output/directory" serializationDataType="MonoDevelop.Projects.PathDataType"/>
- <ItemProperty member="debugMode" name="Build/debugmode" />
- <ItemProperty member="runWithWarnings" name="Execution/runwithwarnings" />
- <ItemProperty member="commandLineParameters" name="Execution/commandlineparameters" defaultValue =""/>
- <ItemProperty member="externalConsole" name="Execution/externalconsole" defaultValue="false" />
- <ItemProperty member="pauseConsoleOutput" name="Execution/consolepause" />
- <ItemProperty member="environmentVariables" name="EnvironmentVariables" skipEmpty="true" />
- <ItemProperty member="environmentVariables" name="Variable" scope="item"/>
- <ItemProperty member="environmentVariables" name="name" scope="key"/>
- <ItemProperty member="environmentVariables" name="value" scope="value"/>
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.ProjectFile" customDataItem="MonoDevelop.Projects.Formats.MD1.MD1CustomDataItem">
- <ItemProperty member="filename" name="name" serializationDataType="MonoDevelop.Projects.PathDataType"/>
- <ItemProperty member="subtype" name="subtype"/>
- <ItemProperty member="buildaction" name="buildaction" serializationDataType="MonoDevelop.Projects.Formats.MD1.BuildActionDataType" />
- <ItemProperty member="dependsOn" name="dependson" defaultValue=""/>
- <ItemProperty member="copyToOutputDirectory" name="copyToOutputDirectory" defaultValue="None"/>
- <ItemProperty member="visible" name="visible" defaultValue="true"/>
- <ItemProperty member="contentType" name="contentType" defaultValue=""/>
- <ItemProperty member="generator" name="generator" defaultValue=""/>
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.ProjectReference" fallbackType="MonoDevelop.Projects.UnknownProjectReference" customDataItem="MonoDevelop.Projects.Formats.MD1.MD1CustomDataItem">
- <ItemProperty member="internalReferenceType" name="type" />
- <ItemProperty member="localCopy" name="localcopy" />
- <ItemProperty member="SpecificVersion" name="specificVersion" defaultValue="True"/>
- </DataItem>
- <DataItem class = "MonoDevelop.Projects.SolutionConfiguration">
- </DataItem>
-</SerializationMap>
diff --git a/main/src/core/MonoDevelop.Ide/ExtensionModel/ItemOptionPanels.addin.xml b/main/src/core/MonoDevelop.Ide/ExtensionModel/ItemOptionPanels.addin.xml
index 63d186f6ff..680d22099a 100644
--- a/main/src/core/MonoDevelop.Ide/ExtensionModel/ItemOptionPanels.addin.xml
+++ b/main/src/core/MonoDevelop.Ide/ExtensionModel/ItemOptionPanels.addin.xml
@@ -44,6 +44,9 @@
<Condition id="ItemType" value="Solution">
<Panel id = "SolutionGeneral" _label = "Build" class = "MonoDevelop.Ide.Projects.OptionPanels.CombineBuildOptions"/>
</Condition>
+ <Condition id="ItemType" value="DotNetProject">
+ <Panel id = "MSBuildOptionsPanel" _label = "Build" class = "MonoDevelop.Ide.Projects.OptionPanels.CombineMSBuildOptions"/>
+ </Condition>
</Section>
<Condition id="ItemType" value="SolutionEntityItem">
<Section id = "CustomCommands" _label = "Custom Commands" icon="md-custom-commands" fill = "true" class = "MonoDevelop.Ide.Projects.OptionPanels.BuildCustomCommandPanel"/>
diff --git a/main/src/core/MonoDevelop.Ide/ExtensionModel/MonoDevelop.Ide.addin.xml b/main/src/core/MonoDevelop.Ide/ExtensionModel/MonoDevelop.Ide.addin.xml
index 2e98914e99..0c0b9c2284 100644
--- a/main/src/core/MonoDevelop.Ide/ExtensionModel/MonoDevelop.Ide.addin.xml
+++ b/main/src/core/MonoDevelop.Ide/ExtensionModel/MonoDevelop.Ide.addin.xml
@@ -222,12 +222,6 @@
<FileFilter id = "MSBuildProject"
_label = "Project Files"
extensions = "*.*proj"/>
- <FileFilter id = "Combine"
- _label = "MD 1.0 Solution Files"
- extensions = "*.mds"/>
- <FileFilter id = "Project"
- _label = "MD 1.0 Project Files"
- extensions = "*.mdp"/>
<FileFilter id = "Workbench"
_label = "MD Workbench"
extensions = "*.mdw"/>
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.Docking/DockBarItem.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.Docking/DockBarItem.cs
index 74b27c00c8..a9e983fe75 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.Docking/DockBarItem.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.Docking/DockBarItem.cs
@@ -83,8 +83,8 @@ namespace MonoDevelop.Components.Docking
{
base.OnSizeRequested (ref requisition);
- requisition.Width += (int) primary.Width;
- requisition.Height += (int) primary.Height;
+ requisition.Width = (int) primary.Width;
+ requisition.Height = (int) primary.Height;
}
protected override bool OnExposeEvent (Gdk.EventExpose evnt)
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.PropertyGrid/PropertyGridTable.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.PropertyGrid/PropertyGridTable.cs
index b8928e061f..0f57c06beb 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.PropertyGrid/PropertyGridTable.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components.PropertyGrid/PropertyGridTable.cs
@@ -31,6 +31,7 @@ using System.Collections.Generic;
using Cairo;
using System.Linq;
using Mono.TextEditor;
+using MonoDevelop.Core;
namespace MonoDevelop.Components.PropertyGrid
{
@@ -251,8 +252,13 @@ namespace MonoDevelop.Components.PropertyGrid
protected override void ForAll (bool includeInternals, Gtk.Callback callback)
{
base.ForAll (includeInternals, callback);
- foreach (var c in children.Keys.ToArray ())
+ foreach (var c in children.Keys.ToArray ()) {
+ if (c.Parent == null) {
+ LoggingService.LogError ("Error found unparented child in property grid:" + c.GetType ());
+ continue;
+ }
callback (c);
+ }
}
protected override void OnSizeRequested (ref Requisition requisition)
@@ -274,7 +280,7 @@ namespace MonoDevelop.Components.PropertyGrid
base.OnSizeAllocated (allocation);
int y = 0;
MeasureHeight (rows, ref y);
- if (currentEditor != null && currentEditorRow != null)
+ if (currentEditor != null && currentEditorRow != null && children.ContainsKey (currentEditor))
children [currentEditor] = currentEditorRow.EditorBounds;
foreach (var cr in children) {
var r = cr.Value;
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformationWindow.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformationWindow.cs
index 17262d5f33..0605c7a7ab 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformationWindow.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CodeCompletion/TooltipInformationWindow.cs
@@ -37,15 +37,15 @@ namespace MonoDevelop.Ide.CodeCompletion
public class TooltipInformationWindow : PopoverWindow
{
- List<TooltipInformation> overloads = new List<TooltipInformation> ();
+ readonly List<TooltipInformation> overloads = new List<TooltipInformation> ();
int current_overload;
public int CurrentOverload {
get {
- return this.current_overload;
+ return current_overload;
}
set {
- this.current_overload = value;
+ current_overload = value;
ShowOverload ();
}
}
@@ -56,7 +56,7 @@ namespace MonoDevelop.Ide.CodeCompletion
}
}
- MonoDevelop.Components.FixedWidthWrapLabel headlabel;
+ readonly FixedWidthWrapLabel headlabel;
public bool Multiple{
get {
return overloads.Count > 1;
@@ -128,11 +128,11 @@ namespace MonoDevelop.Ide.CodeCompletion
}
if (!string.IsNullOrEmpty (o.FooterMarkup)) {
- var contentLabel = new MonoDevelop.Components.FixedWidthWrapLabel ();
+ var contentLabel = new FixedWidthWrapLabel ();
contentLabel.Wrap = Pango.WrapMode.WordChar;
- contentLabel.BreakOnCamelCasing = true;
+ contentLabel.BreakOnCamelCasing = false;
+ contentLabel.BreakOnPunctuation = false;
contentLabel.MaxWidth = 400;
- contentLabel.BreakOnPunctuation = true;
contentLabel.Markup = o.FooterMarkup.Trim ();
contentLabel.ModifyFg (StateType.Normal, (HslColor)foreColor);
@@ -188,14 +188,15 @@ namespace MonoDevelop.Ide.CodeCompletion
headlabel.Markup = "";
current_overload = 0;
}
-
+
+ [Obsolete("Will get removed in later versions.")]
public void SetFixedWidth (int w)
{
- if (w != -1) {
+ /* if (w != -1) {
headlabel.MaxWidth = w;
} else {
headlabel.MaxWidth = -1;
- }
+ }*/
QueueResize ();
}
@@ -205,17 +206,17 @@ namespace MonoDevelop.Ide.CodeCompletion
vbox.Spacing = 2;
- var catLabel = new MonoDevelop.Components.FixedWidthWrapLabel ();
+ var catLabel = new FixedWidthWrapLabel ();
catLabel.Text = categoryName;
catLabel.ModifyFg (StateType.Normal, (HslColor)foreColor);
vbox.PackStart (catLabel, false, true, 0);
- var contentLabel = new MonoDevelop.Components.FixedWidthWrapLabel ();
+ var contentLabel = new FixedWidthWrapLabel ();
contentLabel.Wrap = Pango.WrapMode.WordChar;
- contentLabel.BreakOnCamelCasing = true;
+ contentLabel.BreakOnCamelCasing = false;
+ contentLabel.BreakOnPunctuation = false;
contentLabel.MaxWidth = 400;
- contentLabel.BreakOnPunctuation = true;
contentLabel.Markup = categoryContentMarkup.Trim ();
contentLabel.ModifyFg (StateType.Normal, (HslColor)foreColor);
@@ -224,9 +225,9 @@ namespace MonoDevelop.Ide.CodeCompletion
return vbox;
}
- VBox descriptionBox = new VBox (false, 0);
- VBox vb2 = new VBox (false, 0);
- Cairo.Color foreColor;
+ readonly VBox descriptionBox = new VBox (false, 0);
+ readonly VBox vb2 = new VBox (false, 0);
+ readonly Cairo.Color foreColor;
public TooltipInformationWindow () : base ()
{
TypeHint = Gdk.WindowTypeHint.Tooltip;
@@ -240,15 +241,15 @@ namespace MonoDevelop.Ide.CodeCompletion
this.CanDefault = false;
this.Events |= Gdk.EventMask.EnterNotifyMask;
- headlabel = new MonoDevelop.Components.FixedWidthWrapLabel ();
+ headlabel = new FixedWidthWrapLabel ();
headlabel.Indent = -20;
var des = FontService.GetFontDescription ("Editor").Copy ();
des.Size = des.Size * 9 / 10;
headlabel.FontDescription = des;
// headlabel.MaxWidth = 400;
headlabel.Wrap = Pango.WrapMode.WordChar;
- headlabel.BreakOnCamelCasing = true;
-// headlabel.BreakOnPunctuation = true;
+ headlabel.BreakOnCamelCasing = false;
+ headlabel.BreakOnPunctuation = false;
descriptionBox.Spacing = 4;
VBox vb = new VBox (false, 8);
vb.PackStart (headlabel, true, true, 0);
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Commands/FileCommands.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Commands/FileCommands.cs
index 3dd61d9caa..dd359726ee 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Commands/FileCommands.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Commands/FileCommands.cs
@@ -228,7 +228,12 @@ namespace MonoDevelop.Ide.Commands
{
protected override void Run ()
{
- IdeApp.Workbench.ActiveDocument.GetContent<IPrintable> ().PrintPreviewDocument (PrintingSettings.Instance);
+ try {
+ IdeApp.Workbench.ActiveDocument.GetContent<IPrintable> ().PrintPreviewDocument (PrintingSettings.Instance);
+ } catch (Exception e) {
+ LoggingService.LogError ("Error while generating the print preview", e);
+ MessageService.ShowError (GettextCatalog.GetString ("Error while generating the print preview"), e.Message);
+ }
}
protected override void Update (CommandInfo info)
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/CustomToolService.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/CustomToolService.cs
index 4ce5b97135..d55dd91fa6 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/CustomToolService.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.CustomTools/CustomToolService.cs
@@ -62,6 +62,10 @@ namespace MonoDevelop.Ide.CustomTools
break;
}
});
+ IdeApp.Workspace.FileAddedToProject += delegate (object sender, ProjectFileEventArgs args) {
+ foreach (ProjectFileEventInfo e in args)
+ Update (e.ProjectFile, false);
+ };
IdeApp.Workspace.FileChangedInProject += delegate (object sender, ProjectFileEventArgs args) {
foreach (ProjectFileEventInfo e in args)
Update (e.ProjectFile, false);
@@ -70,6 +74,16 @@ namespace MonoDevelop.Ide.CustomTools
foreach (ProjectFileEventInfo e in args)
Update (e.ProjectFile, false);
};
+ IdeApp.Workspace.SolutionLoaded += delegate (object sender, SolutionEventArgs args) {
+ if (IdeApp.Workspace.IsReloading || !args.Solution.UserProperties.IsEmpty)
+ return;
+
+ foreach (Project p in args.Solution.GetAllProjects ()) {
+ foreach (ProjectFile i in p.Files) {
+ Update (i, false);
+ }
+ }
+ };
//FIXME: handle the rename
//MonoDevelop.Ide.Gui.IdeApp.Workspace.FileRenamedInProject
}
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/CompletionTextEditorExtension.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/CompletionTextEditorExtension.cs
index d75369dabb..87562cd44b 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/CompletionTextEditorExtension.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Content/CompletionTextEditorExtension.cs
@@ -266,13 +266,17 @@ namespace MonoDevelop.Ide.Gui.Content
cpos = Editor.Caret.Offset;
wlen = 0;
}
-
- var ctx = CompletionWidget.CreateCodeCompletionContext (cpos);
- ctx.TriggerWordLength = wlen;
- completionList = Document.Editor.IsSomethingSelected ? ShowCodeSurroundingsCommand (ctx) : ShowCodeTemplatesCommand (ctx);
+ try {
+ var ctx = CompletionWidget.CreateCodeCompletionContext (cpos);
+ ctx.TriggerWordLength = wlen;
+ completionList = Document.Editor.IsSomethingSelected ? ShowCodeSurroundingsCommand (ctx) : ShowCodeTemplatesCommand (ctx);
- info.Bypass = completionList == null;
- info.Text = Document.Editor.IsSomethingSelected ? GettextCatalog.GetString ("_Surround With...") : GettextCatalog.GetString ("I_nsert Template...");
+ info.Bypass = completionList == null;
+ info.Text = Document.Editor.IsSomethingSelected ? GettextCatalog.GetString ("_Surround With...") : GettextCatalog.GetString ("I_nsert Template...");
+ } catch (Exception e) {
+ LoggingService.LogError ("Error while update show code templates window", e);
+ info.Bypass = true;
+ }
}
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectFileNodeBuilder.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectFileNodeBuilder.cs
index b4c0392ce0..2afaf0d95f 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectFileNodeBuilder.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui.Pads.ProjectPad/ProjectFileNodeBuilder.cs
@@ -437,13 +437,7 @@ namespace MonoDevelop.Ide.Gui.Pads.ProjectPad
[AllowMultiSelection]
public void OnShowProperties ()
{
- foreach (Pad pad in IdeApp.Workbench.Pads) {
- if (pad.Id == "MonoDevelop.DesignerSupport.PropertyPad") {
- pad.Visible = true;
- pad.BringToFront (true);
- return;
- }
- }
+ IdeApp.Workbench.Pads.PropertyPad.BringToFront (true);
}
//NOTE: This command is slightly odd, as it operates on a tri-state value,
diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineConfigurationSet.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/PadCollection.cs
index 8cec06a5ec..87899c04c5 100644
--- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects.Formats.MD1/CombineConfigurationSet.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/PadCollection.cs
@@ -1,9 +1,10 @@
-// CombineConfigurationSet.cs
+//
+// PadCollection.cs
//
// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
+// Lluis Sanchez <lluis@xamarin.com>
//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
+// Copyright (c) 2013 Xamarin Inc.
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
@@ -22,49 +23,52 @@
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
-//
-//
using System;
+using System.Linq;
+using MonoDevelop.Ide.Gui.Pads.ProjectPad;
+using MonoDevelop.Ide.Gui.Pads;
+using System.Collections.ObjectModel;
using System.Collections.Generic;
-using MonoDevelop.Core.Serialization;
-namespace MonoDevelop.Projects.Formats.MD1
+namespace MonoDevelop.Ide.Gui
{
- [DataInclude (typeof(CombineConfiguration))]
- class CombineConfigurationSet
+ // TODO: convert to ReadOnlyCollection
+ public class PadCollection: List<Pad>
{
- [ItemProperty]
- string active;
-
- [ExpandedCollection]
- [ItemProperty ("Configuration", ValueType=typeof(object))]
- List<CombineConfiguration> configurations = new List<CombineConfiguration> ();
-
- public string Active {
+ internal PadCollection ()
+ {
+ }
+
+ public Pad PropertyPad {
get {
- return active;
+ return IdeApp.Workbench.Pads.FirstOrDefault (p => p.Id == "MonoDevelop.DesignerSupport.PropertyPad");
}
- set {
- active = value;
+ }
+
+ public Pad DocumentOutlinePad {
+ get {
+ return IdeApp.Workbench.Pads.FirstOrDefault (p => p.Id == "MonoDevelop.DesignerSupport.DocumentOutlinePad");
}
}
- public List<CombineConfiguration> Configurations {
+ public Pad ToolboxPad {
get {
- return configurations;
+ return IdeApp.Workbench.Pads.FirstOrDefault (p => p.Id == "MonoDevelop.DesignerSupport.ToolboxPad");
}
- set {
- configurations = value;
+ }
+
+ public Pad SolutionPad {
+ get {
+ return IdeApp.Workbench.GetPad<ProjectSolutionPad> ();
}
}
-
- public CombineConfiguration GetConfig (string configId)
- {
- foreach (CombineConfiguration c in configurations)
- if (c.Name == configId)
- return c;
- return null;
+
+ public Pad ErrorsPad {
+ get {
+ return IdeApp.Workbench.GetPad<ErrorListPad> ();
+ }
}
}
}
+
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/Workbench.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/Workbench.cs
index 71b31f45cf..598bafc985 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/Workbench.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/Workbench.cs
@@ -59,10 +59,10 @@ namespace MonoDevelop.Ide.Gui
public sealed class Workbench
{
List<Document> documents = new List<Document> ();
- List<Pad> pads;
+ PadCollection pads;
ProgressMonitorManager monitors = new ProgressMonitorManager ();
DefaultWorkbench workbench;
-
+
public event EventHandler ActiveDocumentChanged;
public event EventHandler LayoutChanged;
public event EventHandler GuiLocked;
@@ -151,19 +151,18 @@ namespace MonoDevelop.Ide.Gui
}
return null;
}
-
- public List<Pad> Pads {
+
+ public PadCollection Pads {
get {
if (pads == null) {
- pads = new List<Pad> ();
+ pads = new PadCollection ();
foreach (PadCodon pc in workbench.PadContentCollection)
WrapPad (pc);
}
return pads;
}
}
-
-
+
public WorkbenchWindow RootWindow {
get { return workbench; }
}
@@ -478,7 +477,9 @@ namespace MonoDevelop.Ide.Gui
}
Counters.OpenDocumentTimer.Trace ("Initializing monitor");
IProgressMonitor pm = ProgressMonitors.GetStatusProgressMonitor (
- GettextCatalog.GetString ("Opening {0}", info.FileName),
+ GettextCatalog.GetString ("Opening {0}", info.Project != null ?
+ info.FileName.ToRelative (info.Project.ParentSolution.BaseDirectory) :
+ info.FileName),
Stock.StatusWorking,
true
);
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/CombineMSBuildOptions.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/CombineMSBuildOptions.cs
new file mode 100644
index 0000000000..8b446f6410
--- /dev/null
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/CombineMSBuildOptions.cs
@@ -0,0 +1,84 @@
+//
+// CombineMSBuildWidget.cs
+//
+// Author:
+// Marius Ungureanu <marius.ungureanu@xamarin.com>
+//
+// Copyright (c) 2013 Marius Ungureanu
+//
+// Permission is hereby granted, free of charge, to any person obtaining a copy
+// of this software and associated documentation files (the "Software"), to deal
+// in the Software without restriction, including without limitation the rights
+// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the Software is
+// furnished to do so, subject to the following conditions:
+//
+// The above copyright notice and this permission notice shall be included in
+// all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+// THE SOFTWARE.
+using System;
+using MonoDevelop.Ide.Gui.Dialogs;
+using MonoDevelop.Projects.Formats.MSBuild;
+using MonoDevelop.Core;
+using MonoDevelop.Components;
+
+namespace MonoDevelop.Ide.Projects.OptionPanels
+{
+ class CombineMSBuildOptions : ItemOptionsPanel
+ {
+ Xwt.CheckBox checkMSBuild;
+
+ public override Gtk.Widget CreatePanelWidget ()
+ {
+ var box = new Xwt.VBox ();
+ box.Spacing = 6;
+ box.Margin = 12;
+
+ bool byDefault, require;
+ MSBuildProjectService.CheckHandlerUsesMSBuildEngine (ConfiguredProject, out byDefault, out require);
+ if (require) {
+ box.Visible = false;
+ return box.ToGtkWidget ();
+ }
+
+ box.PackStart (new Xwt.Label {
+ Markup = "<b>Build Engine</b>"
+ });
+
+ checkMSBuild = new Xwt.CheckBox (byDefault ?
+ GettextCatalog.GetString ("Use MSBuild build engine (recommended for this project type)") :
+ GettextCatalog.GetString ("Use MSBuild build engine (unsupported for this project type)")) {
+ Active = ConfiguredProject.UseMSBuildEngine ?? byDefault
+ };
+ var hbox = new Xwt.HBox {
+ MarginLeft = 18,
+ Spacing = 6
+ };
+ hbox.PackStart (checkMSBuild);
+ box.PackStart (hbox);
+ box.Show ();
+ return box.ToGtkWidget ();
+ }
+
+ public override void ApplyChanges ()
+ {
+ bool byDefault, require;
+ MSBuildProjectService.CheckHandlerUsesMSBuildEngine (ConfiguredProject, out byDefault, out require);
+ if (!require) {
+ var active = checkMSBuild.Active;
+ if (active == byDefault)
+ ConfiguredProject.UseMSBuildEngine = null;
+ else
+ ConfiguredProject.UseMSBuildEngine = active;
+ }
+ }
+ }
+}
+
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/GeneralProjectOptions.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/GeneralProjectOptions.cs
index 1a289fa5b1..39d1c9e07b 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/GeneralProjectOptions.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/GeneralProjectOptions.cs
@@ -28,9 +28,6 @@ using MonoDevelop.Ide.Gui.Dialogs;
using Gtk;
using MonoDevelop.Projects;
-using System.Runtime.InteropServices;
-using MonoDevelop.Projects.Formats.MSBuild;
-using MonoDevelop.Core;
namespace MonoDevelop.Ide.Projects.OptionPanels
{
@@ -67,29 +64,12 @@ namespace MonoDevelop.Ide.Projects.OptionPanels
projectNameEntry.Text = project.Name;
projectDescriptionTextView.Buffer.Text = project.Description;
-
- // TODO msbuild Move to build panel?
+
if (project is DotNetProject) {
projectDefaultNamespaceEntry.Text = ((DotNetProject)project).DefaultNamespace;
-
- bool byDefault, require;
- MSBuildProjectService.CheckHandlerUsesMSBuildEngine (project, out byDefault, out require);
- if (require) {
- this.msbuildOptionsSection.Visible = false;
- this.msbuildHeaderLabel.Visible = false;
- } else {
- this.msbuildCheck.Active = project.UseMSBuildEngine ?? byDefault;
- if (byDefault) {
- msbuildCheck.Label = GettextCatalog.GetString ("Use MSBuild build engine (recommended for this project type)");
- } else {
- msbuildCheck.Label = GettextCatalog.GetString ("Use MSBuild build engine (unsupported for this project type)");
- }
- }
} else {
defaultNamespaceLabel.Visible = false;
projectDefaultNamespaceEntry.Visible = false;
- this.msbuildOptionsSection.Visible = false;
- this.msbuildHeaderLabel.Visible = false;
}
switch (project.NewFileSearch)
@@ -134,17 +114,6 @@ namespace MonoDevelop.Ide.Projects.OptionPanels
project.Description = projectDescriptionTextView.Buffer.Text;
if (project is DotNetProject) {
((DotNetProject)project).DefaultNamespace = projectDefaultNamespaceEntry.Text;
-
- bool byDefault, require;
- MSBuildProjectService.CheckHandlerUsesMSBuildEngine (project, out byDefault, out require);
- if (!require) {
- var active = msbuildCheck.Active;
- if (active == byDefault) {
- project.UseMSBuildEngine = null;
- } else {
- project.UseMSBuildEngine = active;
- }
- }
}
if (newFilesOnLoadCheckButton.Active) {
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewProjectDialog.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewProjectDialog.cs
index 28373f13ab..3eb0279dd6 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewProjectDialog.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects/NewProjectDialog.cs
@@ -403,9 +403,10 @@ namespace MonoDevelop.Ide.Projects {
string location = ProjectLocation;
if(solution.Equals("")) solution = name; //This was empty when adding after first combine
-
+
if (
- !FileService.IsValidPath (solution) ||
+ (CreateSolutionDirectory &&
+ !FileService.IsValidPath (solution)) ||
!FileService.IsValidFileName(name) ||
name.IndexOf (' ') >= 0 ||
!FileService.IsValidPath(location))
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/TypeSystemService.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/TypeSystemService.cs
index 628ad4911e..260c94a1e5 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/TypeSystemService.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/TypeSystemService.cs
@@ -823,23 +823,31 @@ namespace MonoDevelop.Ide.TypeSystem
CleanupCache ();
}
}
-
+ static CancellationTokenSource loadCancellationSource = new CancellationTokenSource ();
+ static bool loadWs = false;
static void InternalLoad (WorkspaceItem item)
{
var ws = item as Workspace;
if (ws != null) {
+ loadWs = true;
+ loadCancellationSource.Cancel ();
+ loadCancellationSource = new CancellationTokenSource ();
foreach (WorkspaceItem it in ws.Items)
InternalLoad (it);
ws.ItemAdded += OnWorkspaceItemAdded;
ws.ItemRemoved += OnWorkspaceItemRemoved;
} else {
+ if (!loadWs) {
+ loadCancellationSource.Cancel ();
+ loadCancellationSource = new CancellationTokenSource ();
+ }
var solution = item as Solution;
if (solution != null) {
Parallel.ForEach (solution.GetAllProjects (), project => LoadProject (project));
var list = projectContents.Values.ToList ();
Task.Factory.StartNew (delegate {
foreach (var wrapper in list) {
- CheckModifiedFiles (wrapper.Project, wrapper.Project.Files.ToArray (), wrapper);
+ CheckModifiedFiles (wrapper.Project, wrapper.Project.Files.ToArray (), wrapper, loadCancellationSource.Token);
}
});
@@ -1188,12 +1196,14 @@ namespace MonoDevelop.Ide.TypeSystem
continue;
w.Add (wrapper);
- foreach (var asm in wrapper.referencedAssemblies) {
+ foreach (var asm in wrapper.referencedAssemblies.ToArray ()) {
if (token.IsCancellationRequested)
return;
- asm.CtxLoader.EnsureAssemblyLoaded ();
+ var ctxLoader = asm.CtxLoader;
+ if (ctxLoader != null)
+ ctxLoader.EnsureAssemblyLoaded ();
}
- foreach (var rw in wrapper.referencedWrappers) {
+ foreach (var rw in wrapper.referencedWrappers.ToArray ()) {
if (token.IsCancellationRequested)
return;
s.Push (rw);
@@ -1588,6 +1598,19 @@ namespace MonoDevelop.Ide.TypeSystem
{
OnLoad (EventArgs.Empty);
}
+
+ internal void Unload ()
+ {
+ CancelLoad ();
+ foreach (var asm in referencedAssemblies) {
+ asm.Loaded -= HandleReferencedProjectInLoadChange;
+ }
+ loadActions = null;
+ referencedWrappers.Clear ();
+ referencedAssemblies.Clear ();
+ Loaded = null;
+ Content = new CSharpProjectContent ();
+ }
}
static readonly object projectContentLock = new object ();
@@ -1705,13 +1728,15 @@ namespace MonoDevelop.Ide.TypeSystem
internal static void Unload (WorkspaceItem item)
{
var ws = item as Workspace;
+ TrackFileChanges = false;
+ loadCancellationSource.Cancel ();
if (ws != null) {
foreach (WorkspaceItem it in ws.Items)
Unload (it);
ws.ItemAdded -= OnWorkspaceItemAdded;
ws.ItemRemoved -= OnWorkspaceItemRemoved;
projectContents.Clear ();
- cachedAssemblyContents.Clear ();
+ loadWs = false;
} else {
var solution = item as Solution;
if (solution != null) {
@@ -1722,6 +1747,15 @@ namespace MonoDevelop.Ide.TypeSystem
solution.SolutionItemRemoved -= OnSolutionItemRemoved;
}
}
+
+ var oldCache = cachedAssemblyContents.Values.ToList ();
+ Parallel.ForEach (oldCache, content => content.Unload ());
+ cachedAssemblyContents.Clear ();
+ lock (parseQueueLock) {
+ parseQueueIndex.Clear ();
+ parseQueue.Clear ();
+ }
+ TrackFileChanges = true;
}
internal static void UnloadProject (Project project)
@@ -1742,6 +1776,7 @@ namespace MonoDevelop.Ide.TypeSystem
}
StoreProjectCache (project, wrapper);
OnProjectUnloaded (new ProjectUnloadEventArgs (project, wrapper));
+ wrapper.Unload ();
}
public static event EventHandler<ProjectUnloadEventArgs> ProjectUnloaded;
@@ -1977,6 +2012,13 @@ namespace MonoDevelop.Ide.TypeSystem
}
#endregion
+ internal void Unload ()
+ {
+ if (CtxLoader != null) {
+ CtxLoader.Unload ();
+ CtxLoader = null;
+ }
+ }
}
@@ -2228,6 +2270,12 @@ namespace MonoDevelop.Ide.TypeSystem
}
return result;
}
+
+ public void Unload ()
+ {
+ assembly = new DefaultUnresolvedAssembly (fileName);
+ Loaded = null;
+ }
}
[Serializable]
@@ -2499,9 +2547,16 @@ namespace MonoDevelop.Ide.TypeSystem
static Dictionary<string, UnresolvedAssemblyProxy> cachedAssemblyContents = new Dictionary<string, UnresolvedAssemblyProxy> ();
+ /// <summary>
+ /// Force the update of a project context. Note: This method blocks the thread.
+ /// It was just implemented for use inside unit tests.
+ /// </summary>
public static void ForceUpdate (ProjectContentWrapper context)
{
CheckModifiedFiles ();
+ while (!context.IsLoaded) {
+ Thread.Sleep (10);
+ }
}
#region Parser queue
@@ -2541,7 +2596,7 @@ namespace MonoDevelop.Ide.TypeSystem
public ProjectContentWrapper Context;
public IEnumerable<ProjectFile> FileList;
// public Action<string, IProgressMonitor> ParseCallback;
- public void Run (IProgressMonitor monitor)
+ public void Run (IProgressMonitor monitor, CancellationToken token)
{
TypeSystemParserNode node = null;
TypeSystemParser parser = null;
@@ -2549,6 +2604,8 @@ namespace MonoDevelop.Ide.TypeSystem
try {
Context.BeginLoadOperation ();
foreach (var file in (FileList ?? Context.Project.Files)) {
+ if (token.IsCancellationRequested)
+ return;
var fileName = file.FilePath;
if (filesSkippedInParseThread.Any (f => f == fileName))
continue;
@@ -2559,8 +2616,12 @@ namespace MonoDevelop.Ide.TypeSystem
if (parser == null)
continue;
var parsedDocument = parser.Parse (false, fileName, Context.Project);
+ if (token.IsCancellationRequested)
+ return;
if (tags != null)
tags.UpdateTags (Context.Project, parsedDocument.FileName, parsedDocument.TagComments);
+ if (token.IsCancellationRequested)
+ return;
var oldFile = Context.Content.GetFile (fileName);
Context.UpdateContent (c => c.AddOrUpdateFiles (parsedDocument.ParsedFile));
if (oldFile != null)
@@ -2568,7 +2629,8 @@ namespace MonoDevelop.Ide.TypeSystem
Context.InformFileAdded (new ParsedFileEventArgs (parsedDocument.ParsedFile));
}
} finally {
- Context.EndLoadOperation ();
+ if (!token.IsCancellationRequested)
+ Context.EndLoadOperation ();
}
}
}
@@ -2711,8 +2773,10 @@ namespace MonoDevelop.Ide.TypeSystem
}
}
- static void CheckModifiedFiles (Project project, ProjectFile[] projectFiles, ProjectContentWrapper content)
+ static void CheckModifiedFiles (Project project, ProjectFile[] projectFiles, ProjectContentWrapper content, CancellationToken token = default (CancellationToken))
{
+ if (token.IsCancellationRequested)
+ return;
content.RunWhenLoaded (delegate(IProjectContent cnt) {
try {
content.BeginLoadOperation ();
@@ -2720,6 +2784,8 @@ namespace MonoDevelop.Ide.TypeSystem
var oldFileNewFile = new List<Tuple<ProjectFile, IUnresolvedFile>> ();
foreach (var file in projectFiles) {
+ if (token.IsCancellationRequested)
+ return;
if (file.BuildAction == null)
continue;
// if the file is already inside the content a parser exists for it, if not check if it can be parsed.
@@ -2744,6 +2810,8 @@ namespace MonoDevelop.Ide.TypeSystem
// check if file needs to be removed from project content
foreach (var file in cnt.Files) {
+ if (token.IsCancellationRequested)
+ return;
if (project.GetProjectFile (file.FileName) == null) {
content.UpdateContent (c => c.RemoveFiles (file.FileName));
content.InformFileRemoved (new ParsedFileEventArgs (file));
@@ -2751,7 +2819,8 @@ namespace MonoDevelop.Ide.TypeSystem
tags.RemoveFile (project, file.FileName);
}
}
-
+ if (token.IsCancellationRequested)
+ return;
if (modifiedFiles.Count > 0)
QueueParseJob (content, modifiedFiles);
} catch (Exception e) {
@@ -2814,7 +2883,7 @@ namespace MonoDevelop.Ide.TypeSystem
{
int pending = 0;
IProgressMonitor monitor = null;
-
+ var token = loadCancellationSource.Token;
try {
do {
if (pending > 5 && monitor == null) {
@@ -2824,7 +2893,7 @@ namespace MonoDevelop.Ide.TypeSystem
var job = DequeueParseJob ();
if (job != null) {
try {
- job.Run (monitor);
+ job.Run (monitor, token);
} catch (Exception ex) {
if (monitor == null)
monitor = GetParseProgressMonitor ();
@@ -2834,8 +2903,9 @@ namespace MonoDevelop.Ide.TypeSystem
}
}
+ if (token.IsCancellationRequested)
+ break;
pending = PendingJobCount;
-
} while (pending > 0);
queueEmptied.Set ();
} finally {
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj
index 77228c8bc2..b98cc2e370 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj
@@ -2315,6 +2315,8 @@
<Compile Include="MonoDevelop.Ide.Gui.Pads.ProjectPad\ImplicitFrameworkAssemblyReferenceNodeBuilder.cs" />
<Compile Include="MonoDevelop.Ide.Gui.Pads.ProjectPad\PortableFrameworkSubsetNodeBuilder.cs" />
<Compile Include="MonoDevelop.Components.MainToolbar\SearchInSolutionSearchCategory.cs" />
+ <Compile Include="MonoDevelop.Ide.Projects.OptionPanels\CombineMSBuildOptions.cs" />
+ <Compile Include="MonoDevelop.Ide.Gui\PadCollection.cs" />
</ItemGroup>
<ItemGroup>
<None Include="Makefile.am" />
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/ProjectOperations.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/ProjectOperations.cs
index ee7510ec2d..e47096f132 100644
--- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/ProjectOperations.cs
+++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/ProjectOperations.cs
@@ -704,7 +704,7 @@ namespace MonoDevelop.Ide
};
dlg.AddAllFilesFilter ();
- dlg.DefaultFilter = dlg.AddFilter (GettextCatalog.GetString ("Project Files"), "*.*proj", "*.mdp");
+ dlg.DefaultFilter = dlg.AddFilter (GettextCatalog.GetString ("Project Files"), "*.*proj");
if (dlg.Run ()) {
try {
diff --git a/main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.NewProjectDialog.cs b/main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.NewProjectDialog.cs
index 8c1783af51..098df6eb3e 100644
--- a/main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.NewProjectDialog.cs
+++ b/main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.NewProjectDialog.cs
@@ -174,6 +174,7 @@ namespace MonoDevelop.Ide.Projects
// Container child table1.Gtk.Table+TableChild
this.entry_location = new global::MonoDevelop.Components.FolderEntry ();
this.entry_location.Name = "entry_location";
+ this.entry_location.DisplayAsRelativePath = false;
this.table1.Add (this.entry_location);
global::Gtk.Table.TableChild w16 = ((global::Gtk.Table.TableChild)(this.table1 [this.entry_location]));
w16.TopAttach = ((uint)(1));
diff --git a/main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.OptionPanels.GeneralProjectOptionsWidget.cs b/main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.OptionPanels.GeneralProjectOptionsWidget.cs
index 6a5ed09a9a..5b661e1261 100644
--- a/main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.OptionPanels.GeneralProjectOptionsWidget.cs
+++ b/main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.OptionPanels.GeneralProjectOptionsWidget.cs
@@ -30,10 +30,6 @@ namespace MonoDevelop.Ide.Projects.OptionPanels
private global::Gtk.HBox hbox27;
private global::Gtk.Label label50;
private global::Gtk.CheckButton autoInsertNewFilesCheckButton;
- private global::Gtk.Label msbuildHeaderLabel;
- private global::Gtk.HBox msbuildOptionsSection;
- private global::Gtk.Label label51;
- private global::Gtk.CheckButton msbuildCheck;
protected virtual void Build ()
{
@@ -289,44 +285,6 @@ namespace MonoDevelop.Ide.Projects.OptionPanels
w25.Position = 1;
w25.Expand = false;
w25.Fill = false;
- // Container child vbox40.Gtk.Box+BoxChild
- this.msbuildHeaderLabel = new global::Gtk.Label ();
- this.msbuildHeaderLabel.Name = "msbuildHeaderLabel";
- this.msbuildHeaderLabel.Xalign = 0F;
- this.msbuildHeaderLabel.LabelProp = global::Mono.Unix.Catalog.GetString ("<b>Build Engine</b>");
- this.msbuildHeaderLabel.UseMarkup = true;
- this.msbuildHeaderLabel.UseUnderline = true;
- this.vbox40.Add (this.msbuildHeaderLabel);
- global::Gtk.Box.BoxChild w26 = ((global::Gtk.Box.BoxChild)(this.vbox40 [this.msbuildHeaderLabel]));
- w26.Position = 2;
- w26.Expand = false;
- w26.Fill = false;
- // Container child vbox40.Gtk.Box+BoxChild
- this.msbuildOptionsSection = new global::Gtk.HBox ();
- this.msbuildOptionsSection.Name = "msbuildOptionsSection";
- // Container child msbuildOptionsSection.Gtk.Box+BoxChild
- this.label51 = new global::Gtk.Label ();
- this.label51.WidthRequest = 18;
- this.label51.Name = "label51";
- this.msbuildOptionsSection.Add (this.label51);
- global::Gtk.Box.BoxChild w27 = ((global::Gtk.Box.BoxChild)(this.msbuildOptionsSection [this.label51]));
- w27.Position = 0;
- w27.Expand = false;
- w27.Fill = false;
- // Container child msbuildOptionsSection.Gtk.Box+BoxChild
- this.msbuildCheck = new global::Gtk.CheckButton ();
- this.msbuildCheck.Name = "msbuildCheck";
- this.msbuildCheck.Label = global::Mono.Unix.Catalog.GetString ("Use MSBuild build engine (unsupported for this project type)");
- this.msbuildCheck.DrawIndicator = true;
- this.msbuildCheck.UseUnderline = true;
- this.msbuildOptionsSection.Add (this.msbuildCheck);
- global::Gtk.Box.BoxChild w28 = ((global::Gtk.Box.BoxChild)(this.msbuildOptionsSection [this.msbuildCheck]));
- w28.Position = 1;
- this.vbox40.Add (this.msbuildOptionsSection);
- global::Gtk.Box.BoxChild w29 = ((global::Gtk.Box.BoxChild)(this.vbox40 [this.msbuildOptionsSection]));
- w29.Position = 3;
- w29.Expand = false;
- w29.Fill = false;
this.Add (this.vbox40);
if ((this.Child != null)) {
this.Child.ShowAll ();
diff --git a/main/src/core/MonoDevelop.Ide/gtk-gui/gui.stetic b/main/src/core/MonoDevelop.Ide/gtk-gui/gui.stetic
index 6ee8c8300b..a6d87af56d 100644
--- a/main/src/core/MonoDevelop.Ide/gtk-gui/gui.stetic
+++ b/main/src/core/MonoDevelop.Ide/gtk-gui/gui.stetic
@@ -62,6 +62,7 @@
<child>
<widget class="MonoDevelop.Components.FolderEntry" id="folderEntry">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
</widget>
<packing>
<property name="TopAttach">2</property>
@@ -414,6 +415,7 @@
<child>
<widget class="MonoDevelop.Components.FolderEntry" id="entry_location">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
</widget>
<packing>
<property name="TopAttach">1</property>
@@ -1143,6 +1145,7 @@
<child>
<widget class="MonoDevelop.Components.FolderEntry" id="folderEntry">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
</widget>
<packing>
<property name="Position">3</property>
@@ -1846,6 +1849,7 @@ Diagnostic</property>
<child>
<widget class="MonoDevelop.Components.FileEntry" id="browseButton">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
</widget>
<packing>
<property name="TopAttach">1</property>
@@ -3596,6 +3600,7 @@ Diagnostic</property>
<child>
<widget class="MonoDevelop.Components.FolderEntry" id="projectFolderEntry">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
</widget>
<packing>
<property name="Position">1</property>
@@ -5767,6 +5772,7 @@ Diagnostic</property>
<child>
<widget class="MonoDevelop.Components.FolderEntry" id="folderEntry">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
</widget>
<packing>
<property name="TopAttach">1</property>
@@ -7749,6 +7755,7 @@ All solutions</property>
<child>
<widget class="MonoDevelop.Components.FileEntry" id="strongNameFileEntry">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
</widget>
<packing>
<property name="Position">1</property>
@@ -7822,6 +7829,7 @@ All solutions</property>
<child>
<widget class="MonoDevelop.Components.FolderEntry" id="folderEntry">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
</widget>
<packing>
<property name="Position">1</property>
@@ -7955,6 +7963,7 @@ All solutions</property>
<child>
<widget class="MonoDevelop.Components.FolderEntry" id="outputPathEntry">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
</widget>
<packing>
<property name="TopAttach">1</property>
@@ -8605,7 +8614,7 @@ All solutions</property>
</widget>
</child>
</widget>
- <widget class="Gtk.Bin" id="MonoDevelop.Ide.Projects.OptionPanels.GeneralProjectOptionsWidget" design-size="561 389">
+ <widget class="Gtk.Bin" id="MonoDevelop.Ide.Projects.OptionPanels.GeneralProjectOptionsWidget" design-size="561 328">
<property name="MemberName" />
<property name="GeneratePublic">False</property>
<child>
@@ -8987,21 +8996,6 @@ All solutions</property>
</packing>
</child>
<child>
- <widget class="Gtk.Label" id="msbuildHeaderLabel">
- <property name="MemberName" />
- <property name="Xalign">0</property>
- <property name="LabelProp" translatable="yes">&lt;b&gt;Build Engine&lt;/b&gt;</property>
- <property name="UseMarkup">True</property>
- <property name="UseUnderline">True</property>
- </widget>
- <packing>
- <property name="Position">2</property>
- <property name="AutoSize">True</property>
- <property name="Expand">False</property>
- <property name="Fill">False</property>
- </packing>
- </child>
- <child>
<widget class="Gtk.HBox" id="msbuildOptionsSection">
<property name="MemberName" />
<child>
@@ -9016,30 +9010,14 @@ All solutions</property>
<property name="Fill">False</property>
</packing>
</child>
- <child>
- <widget class="Gtk.CheckButton" id="msbuildCheck">
- <property name="MemberName" />
- <property name="Label" translatable="yes">Use MSBuild build engine (unsupported for this project type)</property>
- <property name="DrawIndicator">True</property>
- <property name="HasLabel">True</property>
- <property name="UseUnderline">True</property>
- </widget>
- <packing>
- <property name="Position">1</property>
- <property name="AutoSize">True</property>
- </packing>
- </child>
</widget>
<packing>
- <property name="Position">3</property>
+ <property name="Position">2</property>
<property name="AutoSize">True</property>
<property name="Expand">False</property>
<property name="Fill">False</property>
</packing>
</child>
- <child>
- <placeholder />
- </child>
</widget>
</child>
</widget>
@@ -9095,6 +9073,7 @@ All solutions</property>
<child>
<widget class="MonoDevelop.Components.FolderEntry" id="folderentry">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
</widget>
<packing>
<property name="Position">2</property>
@@ -10062,6 +10041,7 @@ Visual Studio generates a default ID for embedded resources, instead of simply u
<child>
<widget class="MonoDevelop.Components.FolderEntry" id="folderentry">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
<signal name="PathChanged" handler="OnFolderentryPathChanged" />
</widget>
<packing>
@@ -11086,6 +11066,7 @@ Visual Studio generates a default ID for embedded resources, instead of simply u
<child>
<widget class="MonoDevelop.Components.FileEntry" id="fileEntry">
<property name="MemberName" />
+ <property name="DisplayAsRelativePath">False</property>
</widget>
<packing>
<property name="Position">1</property>
@@ -11328,6 +11309,7 @@ Visual Studio generates a default ID for embedded resources, instead of simply u
<widget class="MonoDevelop.Components.FileEntry" id="fileEntry">
<property name="MemberName" />
<property name="BrowserTitle">Select Policy Set File</property>
+ <property name="DisplayAsRelativePath">False</property>
<signal name="PathChanged" handler="OnFileEntryPathChanged" />
</widget>
<packing>
diff --git a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.csproj b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.csproj
index c56b31a8e9..99d819bf2e 100644
--- a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.csproj
+++ b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.csproj
@@ -19,8 +19,8 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\MonoDevelop.Projects.Formats.MSBuild.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<DebugType>pdbonly</DebugType>
@@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\MonoDevelop.Projects.Formats.MSBuild.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.dotnet.v4.0.csproj b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.dotnet.v4.0.csproj
index bfb0914a54..1718264fb7 100644
--- a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.dotnet.v4.0.csproj
+++ b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.dotnet.v4.0.csproj
@@ -20,7 +20,6 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
@@ -31,7 +30,6 @@
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
</PropertyGroup>
<ItemGroup>
diff --git a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v2.0.csproj b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v2.0.csproj
index c99ade2bac..c9b3cfcd75 100644
--- a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v2.0.csproj
+++ b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v2.0.csproj
@@ -21,7 +21,6 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
@@ -32,7 +31,6 @@
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
</PropertyGroup>
<ItemGroup>
diff --git a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v3.5.csproj b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v3.5.csproj
index 647d7ae4f1..28f7e0ae49 100644
--- a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v3.5.csproj
+++ b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v3.5.csproj
@@ -21,7 +21,6 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
@@ -32,7 +31,6 @@
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
</PropertyGroup>
<ItemGroup>
diff --git a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v4.0.csproj b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v4.0.csproj
index 78038e102f..ef880a9f07 100644
--- a/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v4.0.csproj
+++ b/main/src/core/MonoDevelop.Projects.Formats.MSBuild/MonoDevelop.Projects.Formats.MSBuild.v4.0.csproj
@@ -19,7 +19,6 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
@@ -30,7 +29,6 @@
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
</PropertyGroup>
<ItemGroup>
diff --git a/main/src/core/MonoDevelop.Startup/MonoDevelop.Startup.csproj b/main/src/core/MonoDevelop.Startup/MonoDevelop.Startup.csproj
index 40c7ebd574..f2818248b3 100644
--- a/main/src/core/MonoDevelop.Startup/MonoDevelop.Startup.csproj
+++ b/main/src/core/MonoDevelop.Startup/MonoDevelop.Startup.csproj
@@ -28,8 +28,8 @@
<Execution>
<Execution clr-version="Net_2_0" />
</Execution>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\MonoDevelop.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<DebugType>pdbonly</DebugType>
@@ -38,8 +38,8 @@
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>bin\Release\MonoDevelop.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>True</DebugSymbols>
diff --git a/main/src/tools/mdhost/mdhost.csproj b/main/src/tools/mdhost/mdhost.csproj
index e79e803600..12028a06f1 100644
--- a/main/src/tools/mdhost/mdhost.csproj
+++ b/main/src/tools/mdhost/mdhost.csproj
@@ -22,8 +22,8 @@
</Execution>
<PlatformTarget>x86</PlatformTarget>
<DefineConstants>DEBUG</DefineConstants>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\mdhost.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<DebugType>pdbonly</DebugType>
@@ -35,8 +35,8 @@
</Execution>
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\mdhost.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
diff --git a/main/src/tools/mdmonitor/mdmonitor.csproj b/main/src/tools/mdmonitor/mdmonitor.csproj
index f818d78e11..c81f19a810 100644
--- a/main/src/tools/mdmonitor/mdmonitor.csproj
+++ b/main/src/tools/mdmonitor/mdmonitor.csproj
@@ -20,8 +20,8 @@
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\mdmonitor.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@@ -32,8 +32,8 @@
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\mdmonitor.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
diff --git a/main/src/tools/mdtool/mdtool.csproj b/main/src/tools/mdtool/mdtool.csproj
index 782c28b580..49035c7e7c 100644
--- a/main/src/tools/mdtool/mdtool.csproj
+++ b/main/src/tools/mdtool/mdtool.csproj
@@ -22,8 +22,8 @@
<Execution clr-version="Net_2_0" />
</Execution>
<DefineConstants>DEBUG</DefineConstants>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\mdtool.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<DebugType>pdbonly</DebugType>
@@ -31,8 +31,8 @@
<WarningLevel>4</WarningLevel>
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
- <GenerateDocumentation>true</GenerateDocumentation>
<NoWarn>1591;1573</NoWarn>
+ <DocumentationFile>..\..\..\build\bin\mdtool.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\..\core\MonoDevelop.Core\MonoDevelop.Core.csproj">
diff --git a/main/tests/Makefile.am b/main/tests/Makefile.am
index 9377eb9899..171339d0b3 100644
--- a/main/tests/Makefile.am
+++ b/main/tests/Makefile.am
@@ -87,58 +87,21 @@ EXTRA_DIST = \
test-projects/resources-tester/ResourcesTester/FormFile.resx \
test-projects/resources-tester/ResourcesTester/Program.cs \
test-projects/resources-tester/ResourcesTester.sln \
- test-projects/nunit-assembly-group/nunit-assembly-group.mds \
- test-projects/nunit-assembly-group/nunit-assembly-group.md-nunit \
test-projects/test-build-configs/Lib3/MyClass.cs \
- test-projects/test-build-configs/Lib3/Lib3.mdp \
+ test-projects/test-build-configs/Lib3/Lib3.csproj \
test-projects/test-build-configs/Lib3/Properties/AssemblyInfo.cs \
- test-projects/test-build-configs/Lib4/Lib4.mdp \
+ test-projects/test-build-configs/Lib4/Lib4.csproj \
test-projects/test-build-configs/Lib4/MyClass.cs \
test-projects/test-build-configs/Lib4/Properties/AssemblyInfo.cs \
test-projects/test-build-configs/Lib2/MyClass.cs \
- test-projects/test-build-configs/Lib2/Lib2.mdp \
+ test-projects/test-build-configs/Lib2/Lib2.csproj \
test-projects/test-build-configs/Lib2/Properties/AssemblyInfo.cs \
- test-projects/test-build-configs/test-build-configs.mds \
- test-projects/test-build-configs/Lib1/Lib1.mdp \
+ test-projects/test-build-configs/test-build-configs.sln \
+ test-projects/test-build-configs/Lib1/Lib1.csproj \
test-projects/test-build-configs/Lib1/MyClass.cs \
test-projects/test-build-configs/Lib1/Properties/AssemblyInfo.cs \
test-projects/generated-console-project/TestProject.csproj \
- test-projects/generated-console-project/TestProject.mdp \
test-projects/generated-console-project/TestSolution.sln \
- test-projects/generated-console-project/TestSolution.mds \
- test-projects/console-with-libs-mdp/library1/library1.mdp \
- test-projects/console-with-libs-mdp/library1/MyClass.cs \
- test-projects/console-with-libs-mdp/library1/Properties/AssemblyInfo.cs \
- test-projects/console-with-libs-mdp/console-with-libs-mdp \
- test-projects/console-with-libs-mdp/console-with-libs-mdp/Program.cs \
- test-projects/console-with-libs-mdp/console-with-libs-mdp/console-with-libs-mdp.mdp \
- test-projects/console-with-libs-mdp/console-with-libs-mdp/Properties/AssemblyInfo.cs \
- test-projects/console-with-libs-mdp/console-with-libs-mdp.mds \
- test-projects/console-with-libs-mdp/library2/MyClass.cs \
- test-projects/console-with-libs-mdp/library2/Properties/AssemblyInfo.cs \
- test-projects/console-with-libs-mdp/library2/library2.mdp \
- test-projects/nested-solutions-mdp/nested-solutions-mdp.mds \
- test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/nested-solution3.mds \
- test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/library3.mdp \
- test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/MyClass.cs \
- test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/Properties/AssemblyInfo.cs \
- test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/library4.mdp \
- test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/MyClass.cs \
- test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/Properties/AssemblyInfo.cs \
- test-projects/nested-solutions-mdp/nested-solution2/console-project2/Program.cs \
- test-projects/nested-solutions-mdp/nested-solution2/console-project2/Properties/AssemblyInfo.cs \
- test-projects/nested-solutions-mdp/nested-solution2/console-project2/console-project2.mdp \
- test-projects/nested-solutions-mdp/nested-solution2/nested-solution2.mds \
- test-projects/nested-solutions-mdp/console-project/Program.cs \
- test-projects/nested-solutions-mdp/console-project/console-project.mdp \
- test-projects/nested-solutions-mdp/console-project/Properties/AssemblyInfo.cs \
- test-projects/nested-solutions-mdp/nested-solution1/library1/library1.mdp \
- test-projects/nested-solutions-mdp/nested-solution1/library1/MyClass.cs \
- test-projects/nested-solutions-mdp/nested-solution1/library1/Properties/AssemblyInfo.cs \
- test-projects/nested-solutions-mdp/nested-solution1/nested-solution1.mds \
- test-projects/nested-solutions-mdp/nested-solution1/library2/MyClass.cs \
- test-projects/nested-solutions-mdp/nested-solution1/library2/Properties/AssemblyInfo.cs \
- test-projects/nested-solutions-mdp/nested-solution1/library2/library2.mdp \
test-projects/console-project-with-makefile/Makefile.include \
test-projects/console-project-with-makefile/ConsoleProject/ConsoleProject.csproj \
test-projects/console-project-with-makefile/ConsoleProject/Makefile \
@@ -149,11 +112,6 @@ EXTRA_DIST = \
test-projects/console-project-with-makefile/rules.make \
test-projects/console-project-with-makefile/configure \
test-projects/console-project-with-makefile/ConsoleProject.sln \
- test-projects/csharp-console-mdp/csharp-console-mdp/csharp-console-mdp.mdp \
- test-projects/csharp-console-mdp/csharp-console-mdp/Program.cs \
- test-projects/csharp-console-mdp/csharp-console-mdp/Properties/AssemblyInfo.cs \
- test-projects/csharp-console-mdp/csharp-console-mdp.mds \
- test-projects/ChangeLog \
test-projects/console-project/ConsoleProject/ConsoleProject.csproj \
test-projects/console-project/ConsoleProject/Properties/AssemblyInfo.cs \
test-projects/console-project/ConsoleProject/Program.cs \
diff --git a/main/tests/UnitTests/MonoDevelop.CSharpBinding/FoldingParserTests.cs b/main/tests/UnitTests/MonoDevelop.CSharpBinding/FoldingParserTests.cs
index e673904cfb..39798271e4 100644
--- a/main/tests/UnitTests/MonoDevelop.CSharpBinding/FoldingParserTests.cs
+++ b/main/tests/UnitTests/MonoDevelop.CSharpBinding/FoldingParserTests.cs
@@ -23,6 +23,7 @@
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
// THE SOFTWARE.
+
using System;
using System.Linq;
using NUnit.Framework;
@@ -31,7 +32,6 @@ using MonoDevelop.CSharp.Parser;
using Mono.TextEditor;
using System.Text;
using System.Collections.Generic;
-using System.Linq;
using ICSharpCode.NRefactory;
using ICSharpCode.NRefactory.TypeSystem;
using MonoDevelop.Ide.TypeSystem;
diff --git a/main/tests/UnitTests/MonoDevelop.CSharpBinding/OnTheFlyFormatterTests.cs b/main/tests/UnitTests/MonoDevelop.CSharpBinding/OnTheFlyFormatterTests.cs
index 7b90b8ef22..953946823d 100644
--- a/main/tests/UnitTests/MonoDevelop.CSharpBinding/OnTheFlyFormatterTests.cs
+++ b/main/tests/UnitTests/MonoDevelop.CSharpBinding/OnTheFlyFormatterTests.cs
@@ -151,7 +151,7 @@ namespace MonoDevelop.CSharpBinding
public void TestVerbatimToNonVerbatimConversion ()
{
TestViewContent content;
- var ext = Setup ("@$\"\t\"", out content);
+ Setup ("@$\"\t\"", out content);
content.GetTextEditorData ().Remove (0, 1);
var newText = content.Text;
Assert.AreEqual ("\"\\t\"", newText);
diff --git a/main/tests/UnitTests/MonoDevelop.CSharpBinding/TestWorkbenchWindow.cs b/main/tests/UnitTests/MonoDevelop.CSharpBinding/TestWorkbenchWindow.cs
index f3d4d30616..1245f1ac74 100644
--- a/main/tests/UnitTests/MonoDevelop.CSharpBinding/TestWorkbenchWindow.cs
+++ b/main/tests/UnitTests/MonoDevelop.CSharpBinding/TestWorkbenchWindow.cs
@@ -116,7 +116,6 @@ namespace MonoDevelop.CSharpBinding
}
public event EventHandler DocumentChanged;
- public event EventHandler TitleChanged;
public event WorkbenchWindowEventHandler Closing;
public event WorkbenchWindowEventHandler Closed;
public event ActiveViewContentEventHandler ActiveViewContentChanged;
diff --git a/main/tests/UnitTests/MonoDevelop.Ide.Gui/CompletionListWindowTests.cs b/main/tests/UnitTests/MonoDevelop.Ide.Gui/CompletionListWindowTests.cs
index 3731a76230..dfbc0bdc92 100644
--- a/main/tests/UnitTests/MonoDevelop.Ide.Gui/CompletionListWindowTests.cs
+++ b/main/tests/UnitTests/MonoDevelop.Ide.Gui/CompletionListWindowTests.cs
@@ -126,7 +126,6 @@ namespace MonoDevelop.Ide.Gui
static void SimulateInput (CompletionListWindow listWindow, string input)
{
foreach (char ch in input) {
- KeyActions ka;
switch (ch) {
case '8':
listWindow.PreProcessKeyEvent (Gdk.Key.Up, '\0', Gdk.ModifierType.None);
diff --git a/main/tests/UnitTests/MonoDevelop.Projects/LocalCopyTests.cs b/main/tests/UnitTests/MonoDevelop.Projects/LocalCopyTests.cs
index 77f38bb155..cb113fa442 100644
--- a/main/tests/UnitTests/MonoDevelop.Projects/LocalCopyTests.cs
+++ b/main/tests/UnitTests/MonoDevelop.Projects/LocalCopyTests.cs
@@ -32,6 +32,8 @@ using System.IO;
using NUnit.Framework;
using UnitTests;
using MonoDevelop.Core;
+using System.Linq;
+using MonoDevelop.Core.ProgressMonitoring;
namespace MonoDevelop.Projects
{
@@ -40,6 +42,7 @@ namespace MonoDevelop.Projects
public class LocalCopyTests : TestBase
{
[Test]
+ [Platform (Exclude = "Win")]
public void CheckLocalCopy ()
{
string solFile = Util.GetSampleProject ("vs-local-copy", "VSLocalCopyTest.sln");
@@ -199,5 +202,52 @@ namespace MonoDevelop.Projects
{
// See commented assert in AssertCleanBuild
}
+
+ [Test]
+ [Platform (Exclude = "Win")]
+ public void LocalCopyDefault ()
+ {
+ string solFile = Util.GetSampleProject ("local-copy-package", "ConsoleProject.sln");
+
+ WorkspaceItem item = Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile);
+ Solution sol = (Solution) item;
+ var p = (DotNetProject)sol.Items [0];
+
+ var ar = p.References.First (r => r.Reference.Contains ("gtk"));
+ Assert.AreEqual (false, ar.LocalCopy);
+ ar.LocalCopy = true;
+ Assert.AreEqual (true, ar.LocalCopy);
+
+ ar = p.References.First (r => r.Reference.Contains ("System.Data"));
+ Assert.AreEqual (false, ar.LocalCopy);
+ ar.LocalCopy = true;
+ Assert.AreEqual (true, ar.LocalCopy);
+
+ ar = p.References.First (r => r.Reference.Contains ("LibProject"));
+ Assert.AreEqual (true, ar.LocalCopy);
+ ar.LocalCopy = false;
+ Assert.AreEqual (false, ar.LocalCopy);
+
+ ar = p.References.First (r => r.Reference.Contains ("Xwt"));
+ Assert.AreEqual (true, ar.LocalCopy);
+ ar.LocalCopy = false;
+ Assert.AreEqual (false, ar.LocalCopy);
+
+ sol.Save (new NullProgressMonitor ());
+ sol.Build (new NullProgressMonitor (), "Debug");
+
+ string exeDebug = Platform.IsWindows ? ".pdb" : ".exe.mdb";
+
+ AssertOutputFiles (sol, "ConsoleProject", "Debug", new string[] {
+ "ConsoleProject.exe",
+ "ConsoleProject" + exeDebug,
+ "System.Data.dll",
+ "gtk-sharp.dll"
+ });
+
+ string projectXml1 = Util.GetXmlFileInfoset (p.FileName.ParentDirectory.Combine ("ConsoleProject.csproj.saved"));
+ string projectXml2 = Util.GetXmlFileInfoset (p.FileName);
+ Assert.AreEqual (projectXml1, projectXml2);
+ }
}
}
diff --git a/main/tests/UnitTests/MonoDevelop.Projects/MSBuildTests.cs b/main/tests/UnitTests/MonoDevelop.Projects/MSBuildTests.cs
index 3277519be0..d811facff2 100644
--- a/main/tests/UnitTests/MonoDevelop.Projects/MSBuildTests.cs
+++ b/main/tests/UnitTests/MonoDevelop.Projects/MSBuildTests.cs
@@ -87,7 +87,7 @@ namespace MonoDevelop.Projects
public void CreateConsoleProject ()
{
Solution sol = TestProjectsChecks.CreateConsoleSolution ("console-project-msbuild");
- sol.ConvertToFormat (Util.FileFormatMSBuild05, true);
+ sol.ConvertToFormat (Util.FileFormatMSBuild10, true);
sol.Save (Util.GetMonitor ());
// msbuild format
@@ -98,31 +98,14 @@ namespace MonoDevelop.Projects
// Make sure we compare using the same guid
Project p = sol.Items [0] as Project;
string guid = p.ItemId;
- solXml = solXml.Replace (guid, "{DC577202-654B-4FDB-95C7-8CC5DDF6D32D}");
- projectXml = projectXml.Replace (guid, "{DC577202-654B-4FDB-95C7-8CC5DDF6D32D}");
+ solXml = solXml.Replace (guid, "{969F05E2-0E79-4C5B-982C-8F3DD4D46311}");
+ projectXml = projectXml.Replace (guid, "{969F05E2-0E79-4C5B-982C-8F3DD4D46311}");
string solFile = Util.GetSampleProjectPath ("generated-console-project", "TestSolution.sln");
string projectFile = Util.GetSampleProjectPath ("generated-console-project", "TestProject.csproj");
- Assert.AreEqual (File.ReadAllText (solFile), solXml);
- Assert.AreEqual (Util.GetXmlFileInfoset (projectFile), projectXml);
-
- // MD1 format
-
- sol.ConvertToFormat (Util.FileFormatMD1, true);
- sol.Save (Util.GetMonitor ());
-
- solXml = Util.GetXmlFileInfoset (sol.FileName);
- projectXml = Util.GetXmlFileInfoset (((SolutionEntityItem)sol.Items [0]).FileName);
-
- solFile = Util.GetSampleProjectPath ("generated-console-project", "TestSolution.mds");
- projectFile = Util.GetSampleProjectPath ("generated-console-project", "TestProject.mdp");
-
- Assert.AreEqual (Util.GetXmlFileInfoset (solFile), solXml, "solXml: " + sol.FileName);
- Assert.AreEqual (Util.GetXmlFileInfoset (projectFile), projectXml, "projectXml: " + ((SolutionEntityItem)sol.Items [0]).FileName);
-
-// sol.FileFormat = Services.ProjectService.FileFormats.GetFileFormat ("MSBuild08");
-// sol.Save (Util.GetMonitor ());
+ Assert.AreEqual (Util.ToWindowsEndings (File.ReadAllText (solFile)), solXml);
+ Assert.AreEqual (Util.ToWindowsEndings (Util.GetXmlFileInfoset (projectFile)), projectXml);
}
[Test]
diff --git a/main/tests/UnitTests/MonoDevelop.Projects/MakefileTests.cs b/main/tests/UnitTests/MonoDevelop.Projects/MakefileTests.cs
index b94c8dcd73..c247e1cb7f 100644
--- a/main/tests/UnitTests/MonoDevelop.Projects/MakefileTests.cs
+++ b/main/tests/UnitTests/MonoDevelop.Projects/MakefileTests.cs
@@ -39,8 +39,12 @@ namespace MonoDevelop.Projects
public class MakefileTests: TestBase
{
[Test()]
+ [Platform (Exclude = "Win")]
public void MakefileSynchronization ()
{
+ if (Platform.IsWindows)
+ Assert.Ignore ();
+
string solFile = Util.GetSampleProject ("console-project-with-makefile", "ConsoleProject.sln");
Solution sol = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile);
diff --git a/main/tests/UnitTests/MonoDevelop.Projects/MdsTests.cs b/main/tests/UnitTests/MonoDevelop.Projects/MdsTests.cs
index a5e2367881..a1b8225b33 100644
--- a/main/tests/UnitTests/MonoDevelop.Projects/MdsTests.cs
+++ b/main/tests/UnitTests/MonoDevelop.Projects/MdsTests.cs
@@ -25,141 +25,15 @@
//
//
-using System;
using System.IO;
using NUnit.Framework;
using UnitTests;
-using MonoDevelop.Core;
namespace MonoDevelop.Projects
{
- [TestFixture()]
+ [TestFixture]
public class MdsTests: TestBase
{
- [Test()]
- public void LoadSaveBuildConsoleProject()
- {
- string solFile = Util.GetSampleProject ("csharp-console-mdp", "csharp-console-mdp.mds");
-
- WorkspaceItem item = Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile);
- Assert.IsTrue (item is Solution);
-
- Solution sol = (Solution) item;
- TestProjectsChecks.CheckBasicMdConsoleProject (sol);
- string projectFile = ((Project)sol.Items [0]).FileName;
-
- BuildResult cr = item.Build (Util.GetMonitor (), (SolutionConfigurationSelector) "Debug");
- Assert.IsNotNull (cr);
- Assert.AreEqual (0, cr.ErrorCount);
- Assert.AreEqual (0, cr.WarningCount);
-
- string solXml = Util.GetXmlFileInfoset (solFile);
- string projectXml = Util.GetXmlFileInfoset (projectFile);
-
- sol.Save (Util.GetMonitor ());
-
- Assert.AreEqual (solXml, Util.GetXmlFileInfoset (solFile), "Saved solution file");
- Assert.AreEqual (projectXml, Util.GetXmlFileInfoset (projectFile), "Saved project file");
- }
-
- [Test()]
- public void NestedSolutions()
- {
- string solFile = Util.GetSampleProject ("nested-solutions-mdp", "nested-solutions-mdp.mds");
-
- WorkspaceItem item = Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile);
- Assert.IsTrue (item is Solution);
-
- Solution sol = (Solution) item;
-
- BuildResult cr = item.Build (Util.GetMonitor (), (SolutionConfigurationSelector) "Debug");
- Assert.IsNotNull (cr);
- Assert.AreEqual (0, cr.ErrorCount);
- Assert.AreEqual (0, cr.WarningCount);
- Assert.AreEqual (6, cr.BuildCount);
-
- string dir = Path.GetDirectoryName (solFile);
- string solXml = Util.GetXmlFileInfoset (solFile);
- string p1Xml = Util.GetXmlFileInfoset (dir, "console-project", "console-project.mdp");
- string s1Xml = Util.GetXmlFileInfoset (dir, "nested-solution1", "nested-solution1.mds");
- string s2Xml = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution2.mds");
- string plib1Xml = Util.GetXmlFileInfoset (dir, "nested-solution1", "library1", "library1.mdp");
- string plib2Xml = Util.GetXmlFileInfoset (dir, "nested-solution1", "library2", "library2.mdp");
- string p2Xml = Util.GetXmlFileInfoset (dir, "nested-solution2", "console-project2", "console-project2.mdp");
- string s3Xml = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "nested-solution3.mds");
- string plib3Xml = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "library3", "library3.mdp");
- string plib4Xml = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "library4", "library4.mdp");
-
- sol.Save (Util.GetMonitor ());
-
- string solXml2 = Util.GetXmlFileInfoset (solFile);
- string p1Xml2 = Util.GetXmlFileInfoset (dir, "console-project", "console-project.mdp");
- string s1Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution1", "nested-solution1.mds");
- string s2Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution2.mds");
- string plib1Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution1", "library1", "library1.mdp");
- string plib2Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution1", "library2", "library2.mdp");
- string p2Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution2", "console-project2", "console-project2.mdp");
- string s3Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "nested-solution3.mds");
- string plib3Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "library3", "library3.mdp");
- string plib4Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "library4", "library4.mdp");
-
- Assert.AreEqual (solXml, solXml2, "solXml");
- Assert.AreEqual (p1Xml, p1Xml2, "p1Xml");
- Assert.AreEqual (s1Xml, s1Xml2, "s1Xml");
- Assert.AreEqual (s2Xml, s2Xml2, "s2Xml");
- Assert.AreEqual (plib1Xml, plib1Xml2, "plib1Xml");
- Assert.AreEqual (plib2Xml, plib2Xml2, "plib2Xml");
- Assert.AreEqual (p2Xml, p2Xml2, "p2Xml");
- Assert.AreEqual (s3Xml, s3Xml2, "s3Xml");
- Assert.AreEqual (plib3Xml, plib3Xml2, "plib3Xml");
- Assert.AreEqual (plib4Xml, plib4Xml2, "plib4Xml");
- }
-
- [Test()]
- public void CreateNestedSolutions()
- {
- Solution sol = TestProjectsChecks.CreateProjectWithFolders ("nested-solutions-md1");
- sol.ConvertToFormat (Util.FileFormatMD1, true);
-
- sol.Save (Util.GetMonitor ());
-
- string solFile = Util.GetSampleProjectPath ("nested-solutions-mdp", "nested-solutions-mdp.mds");
- string dir = Path.GetDirectoryName (solFile);
- string solXml = Util.GetXmlFileInfoset (solFile);
- string p1Xml = Util.GetXmlFileInfoset (dir, "console-project", "console-project.mdp");
- string s1Xml = Util.GetXmlFileInfoset (dir, "nested-solution1", "nested-solution1.mds");
- string s2Xml = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution2.mds");
- string plib1Xml = Util.GetXmlFileInfoset (dir, "nested-solution1", "library1", "library1.mdp");
- string plib2Xml = Util.GetXmlFileInfoset (dir, "nested-solution1", "library2", "library2.mdp");
- string p2Xml = Util.GetXmlFileInfoset (dir, "nested-solution2", "console-project2", "console-project2.mdp");
- string s3Xml = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "nested-solution3.mds");
- string plib3Xml = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "library3", "library3.mdp");
- string plib4Xml = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "library4", "library4.mdp");
-
- dir = Path.GetDirectoryName (sol.FileName);
- string solXml2 = Util.GetXmlFileInfoset (solFile);
- string p1Xml2 = Util.GetXmlFileInfoset (dir, "console-project", "console-project.mdp");
- string s1Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution1", "nested-solution1.mds");
- string s2Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution2.mds");
- string plib1Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution1", "library1", "library1.mdp");
- string plib2Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution1", "library2", "library2.mdp");
- string p2Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution2", "console-project2", "console-project2.mdp");
- string s3Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "nested-solution3.mds");
- string plib3Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "library3", "library3.mdp");
- string plib4Xml2 = Util.GetXmlFileInfoset (dir, "nested-solution2", "nested-solution3", "library4", "library4.mdp");
-
- Assert.AreEqual (solXml, solXml2, "solXml");
- Assert.AreEqual (p1Xml, p1Xml2, "p1Xml");
- Assert.AreEqual (s1Xml, s1Xml2, "s1Xml");
- Assert.AreEqual (s2Xml, s2Xml2, "s2Xml");
- Assert.AreEqual (plib1Xml, plib1Xml2, "plib1Xml");
- Assert.AreEqual (plib2Xml, plib2Xml2, "plib2Xml");
- Assert.AreEqual (p2Xml, p2Xml2, "p2Xml");
- Assert.AreEqual (s3Xml, s3Xml2, "s3Xml");
- Assert.AreEqual (plib3Xml, plib3Xml2, "plib3Xml");
- Assert.AreEqual (plib4Xml, plib4Xml2, "plib4Xml");
- }
-
[Test]
public void TestSaveWorkspace ()
{
@@ -183,30 +57,5 @@ namespace MonoDevelop.Projects
Assert.IsTrue (File.Exists (sol.FileName));
Assert.IsTrue (File.Exists (p.FileName));
}
-
-
- [Test]
- public void TestCreateLoadSaveConsoleProject ()
- {
- TestProjectsChecks.TestCreateLoadSaveConsoleProject ("MD1");
- }
-
- [Test]
- public void GenericProject ()
- {
- TestProjectsChecks.CheckGenericItemProject ("MD1");
- }
-
- [Test]
- public void TestLoadSaveSolutionFolders ()
- {
- TestProjectsChecks.TestLoadSaveSolutionFolders ("MD1");
- }
-
- [Test]
- public void TestLoadSaveResources ()
- {
- TestProjectsChecks.TestLoadSaveResources ("MD1");
- }
}
}
diff --git a/main/tests/UnitTests/MonoDevelop.Projects/PackagingTests.cs b/main/tests/UnitTests/MonoDevelop.Projects/PackagingTests.cs
deleted file mode 100644
index c1652c304d..0000000000
--- a/main/tests/UnitTests/MonoDevelop.Projects/PackagingTests.cs
+++ /dev/null
@@ -1,334 +0,0 @@
-// PackagingTests.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using NUnit.Framework;
-using UnitTests;
-using MonoDevelop.Core;
-using MonoDevelop.Projects;
-using MonoDevelop.Deployment.Targets;
-using MonoDevelop.Autotools;
-
-namespace MonoDevelop.Deployment
-{
- [TestFixture]
- [Ignore ("Most of these tests fail and no-one is maintaining this addin at the moment")]
- public class PackagingTests: TestBase
- {
- string tarDir = null;
- int packId = 0;
-
-#region Binaries package
- [Test]
- public void ConsoleProjectBins ()
- {
- string[] binFiles = new string[] {
- "ConsoleProject.exe",
- "ConsoleProject.exe.mdb",
- "consoleproject"
- };
- RunTestBinariesPackage ("console-project/ConsoleProject.sln", binFiles);
- }
-
- [Test]
- public void ConsoleProjectWithLibsMdpBins ()
- {
- string[] binFiles = new string[] {
- "console-with-libs-mdp.exe",
- "console-with-libs-mdp.exe.mdb",
- "console-with-libs-mdp",
- "library1.dll",
- "library1.dll.mdb",
- "library1.pc",
- "library2.dll",
- "library2.pc",
- "library2.dll.mdb"
- };
- RunTestBinariesPackage ("console-with-libs-mdp/console-with-libs-mdp.mds", binFiles);
- }
-#endregion
-
-#region Sources package
-
- [Test]
- public void ConsoleProjectSources ()
- {
- RunTestSourcesPackage ("console-project/ConsoleProject.sln");
- }
-
- [Test]
- public void ConsoleProjectWithLibsMdpSources ()
- {
- RunTestSourcesPackage ("console-with-libs-mdp/console-with-libs-mdp.mds");
- }
-
- [Test]
- public void NestedSolutionsMdpSources ()
- {
- RunTestSourcesPackage ("nested-solutions-mdp/nested-solutions-mdp.mds");
- }
-#endregion
-
-#region Tarball package
-
- // Console project
-
- string[] filesConsoleProjectTarball = new string[] {
- "bin/consoleproject",
- "lib/consoleproject/ConsoleProject.exe",
- "lib/consoleproject/ConsoleProject.exe.mdb"
- };
-
- [Test]
- public void ConsoleProjectTarball ()
- {
- RunTestTarballPackage ("console-project/ConsoleProject.sln", false, "Debug", filesConsoleProjectTarball);
- }
-
- [Test]
- public void ConsoleProjectTarballAutotools ()
- {
- RunTestTarballPackage ("console-project/ConsoleProject.sln", true, "Debug", filesConsoleProjectTarball);
- }
-
-
- // ConsoleProjectWithLibsMdpTarball
-
- string[] filesConsoleProjectWithLibsMdpTarball = new string[] {
- "bin/console-with-libs-mdp",
- "lib/console-with-libs-mdp/console-with-libs-mdp.exe",
- "lib/console-with-libs-mdp/console-with-libs-mdp.exe.mdb",
- "lib/console-with-libs-mdp/library1.dll",
- "lib/console-with-libs-mdp/library1.dll.mdb",
- "lib/console-with-libs-mdp/library2.dll",
- "lib/console-with-libs-mdp/library2.dll.mdb",
- "lib/pkgconfig/library1.pc",
- "lib/pkgconfig/library2.pc"
- };
-
- [Test]
- public void ConsoleProjectWithLibsMdpTarball ()
- {
- RunTestTarballPackage ("console-with-libs-mdp/console-with-libs-mdp.mds", false, "Debug", filesConsoleProjectWithLibsMdpTarball);
- }
-
- [Test]
- public void ConsoleProjectWithLibsMdpTarballAutotools ()
- {
- RunTestTarballPackage ("console-with-libs-mdp/console-with-libs-mdp.mds", true, "Debug", filesConsoleProjectWithLibsMdpTarball);
- }
-
- string[] filesNestedSolutionsMdpTarball = new string[] {
- "bin/console-project",
- "bin/console-project2",
- "lib/nested-solutions-mdp/console-project.exe",
- "lib/nested-solutions-mdp/console-project.exe.mdb",
- "lib/nested-solutions-mdp/console-project2.exe",
- "lib/nested-solutions-mdp/console-project2.exe.mdb",
- "lib/nested-solutions-mdp/library1.dll",
- "lib/nested-solutions-mdp/library1.dll.mdb",
- "lib/nested-solutions-mdp/library2.dll",
- "lib/nested-solutions-mdp/library2.dll.mdb",
- "lib/nested-solutions-mdp/library3.dll",
- "lib/nested-solutions-mdp/library3.dll.mdb",
- "lib/nested-solutions-mdp/library4.dll",
- "lib/nested-solutions-mdp/library4.dll.mdb",
- "lib/pkgconfig/library1.pc",
- "lib/pkgconfig/library2.pc",
- "lib/pkgconfig/library3.pc",
- "lib/pkgconfig/library4.pc",
- };
-
- [Test]
- public void NestedSolutionsMdpTarball ()
- {
- RunTestTarballPackage ("nested-solutions-mdp/nested-solutions-mdp.mds", false, "Debug", filesNestedSolutionsMdpTarball);
- }
-
- [Test]
- public void NestedSolutionsMdpTarballAutotools ()
- {
- RunTestTarballPackage ("nested-solutions-mdp/nested-solutions-mdp.mds", true, "Debug", filesNestedSolutionsMdpTarball);
- }
-
-#endregion
-
-#region Support methods
-
- void RunTestBinariesPackage (string solFile, string[] expectedFiles)
- {
- solFile = Util.GetSampleProject (solFile);
- Solution sol = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor(), solFile);
-
- BinariesZipPackageBuilder pb = new BinariesZipPackageBuilder ();
- pb.SetSolutionItem (sol.RootFolder, sol.GetAllSolutionItems<SolutionItem> ());
-
- pb.TargetFile = GetTempTarFile ("binzip");
- pb.Platform = "Linux";
- pb.Configuration = "Debug";
-
- if (!DeployService.BuildPackage (Util.GetMonitor (), pb))
- Assert.Fail ("Package generation failed");
-
- CheckTarContents (pb.TargetFile, expectedFiles, true);
- }
-
- void RunTestSourcesPackage (string solFile)
- {
- solFile = Util.GetSampleProject (solFile);
- Solution sol = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor(), solFile);
-
- SourcesZipPackageBuilder pb = new SourcesZipPackageBuilder ();
- pb.FileFormat = sol.FileFormat;
- pb.SetSolutionItem (sol.RootFolder, sol.GetAllSolutionItems<SolutionItem> ());
-
- pb.TargetFile = GetTempTarFile ("sourceszip");
-
- if (!DeployService.BuildPackage (Util.GetMonitor (), pb))
- Assert.Fail ("Package generation failed");
-
- List<string> files = new List<string> ();
- foreach (string f in sol.GetItemFiles (true)) {
- files.Add (sol.GetRelativeChildPath (f));
- }
- CheckTarContents (pb.TargetFile, files.ToArray (), true);
- }
-
- void RunTestTarballPackage (string solFile, bool autotools, string config, string[] expectedFiles)
- {
- solFile = Util.GetSampleProject (solFile);
- Solution sol = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor(), solFile);
-
- TarballDeployTarget pb = new TarballDeployTarget ();
- pb.SetSolutionItem (sol.RootFolder, sol.GetAllSolutionItems<SolutionItem> ());
- pb.TargetDir = Util.CreateTmpDir ("tarball-target-dir");
- pb.DefaultConfiguration = config;
- pb.GenerateFiles = true;
- pb.GenerateAutotools = autotools;
-
- if (!DeployService.BuildPackage (Util.GetMonitor (), pb))
- Assert.Fail ("Package generation failed");
-
- string tarfile = Directory.GetFiles (pb.TargetDir) [0];
-
- Untar (tarfile, null);
-
- string[] dirs = Directory.GetDirectories (pb.TargetDir);
- Assert.AreEqual (1, dirs.Length);
-
- string tarDir = dirs [0];
- string prefix = Path.Combine (pb.TargetDir, "install");
-
- if (!Exec (Path.Combine (tarDir, "configure"), "--prefix=" + prefix, tarDir))
- Assert.Fail ("Configure script failed");
-
- if (!Exec ("make", "all", tarDir))
- Assert.Fail ("Build failed");
-
- if (!Exec ("make", "install", tarDir))
- Assert.Fail ("Install failed");
-
- CheckDirContents (prefix, expectedFiles);
- }
-
-
- string GetTempTarFile (string hint)
- {
- if (tarDir == null)
- tarDir = Util.CreateTmpDir ("packages");
- return Path.Combine (tarDir, hint + "-" + (packId++) + ".tar.gz");
- }
-
- void CheckTarContents (string file, string[] expectedFiles, bool checkInSubdir)
- {
- Assert.IsTrue (File.Exists (file), "tar file not found");
-
- string dir = Util.CreateTmpDir ("tar-contents");
- Untar (file, dir);
-
- if (checkInSubdir) {
- string[] dirs = Directory.GetDirectories (dir);
- Assert.IsTrue (dirs.Length == 1, "No unique subdir found in tar");
- Assert.IsTrue (Directory.GetFiles(dir).Length == 0, "No unique subdir found in tar");
- dir = Path.Combine (dir, dirs[0]);
- }
- CheckDirContents (dir, expectedFiles);
- }
-
- void CheckDirContents (string dir, string[] expectedFiles)
- {
- List<string> validFiles = new List<string> ();
- foreach (string f in expectedFiles) {
- string tf = Path.Combine (dir, f);
- Assert.IsTrue (File.Exists (tf), "Content check: file not found: " + Path.GetFullPath (tf));
- validFiles.Add (Path.GetFullPath (tf));
- }
- CheckValidFiles (dir, validFiles);
- }
-
- void CheckValidFiles (string dir, List<string> validFiles)
- {
- foreach (string f in Directory.GetFiles (dir))
- Assert.IsFalse (!validFiles.Contains (Path.GetFullPath(f)), "Content check: extra file: " + Path.GetFullPath(f));
- foreach (string d in Directory.GetDirectories (dir))
- CheckValidFiles (d, validFiles);
- }
-
- void Untar (string file, string dir)
- {
- if (dir == null)
- dir = Path.GetDirectoryName (file);
- Exec ("tar", "xvfz " + file + " -C " + dir, null);
- }
-
- bool Exec (string file, string args, string workDir)
- {
- Process proc = new Process ();
- proc.StartInfo.UseShellExecute = false;
- proc.StartInfo.RedirectStandardOutput = true;
- proc.StartInfo.RedirectStandardError = true;
- proc.StartInfo.FileName = file;
- proc.StartInfo.Arguments = args;
- if (workDir != null)
- proc.StartInfo.WorkingDirectory = workDir;
- proc.Start ();
- string sout = proc.StandardOutput.ReadToEnd ();
- sout += proc.StandardError.ReadToEnd ();
- proc.WaitForExit ();
- if (proc.ExitCode == 0)
- return true;
- else {
- Console.WriteLine (sout);
- return false;
- }
- }
- }
-#endregion
-}
diff --git a/main/tests/UnitTests/MonoDevelop.Projects/ProjectTests.cs b/main/tests/UnitTests/MonoDevelop.Projects/ProjectTests.cs
index 6ca96b0007..f8a7b550b2 100644
--- a/main/tests/UnitTests/MonoDevelop.Projects/ProjectTests.cs
+++ b/main/tests/UnitTests/MonoDevelop.Projects/ProjectTests.cs
@@ -62,6 +62,7 @@ namespace MonoDevelop.Projects
}
[Test()]
+ [Platform (Exclude = "Win")]
public void Resources ()
{
string solFile = Util.GetSampleProject ("resources-tester", "ResourcesTester.sln");
diff --git a/main/tests/UnitTests/MonoDevelop.Projects/SolutionTests.cs b/main/tests/UnitTests/MonoDevelop.Projects/SolutionTests.cs
index 9a98f7c64d..9d53e47f58 100644
--- a/main/tests/UnitTests/MonoDevelop.Projects/SolutionTests.cs
+++ b/main/tests/UnitTests/MonoDevelop.Projects/SolutionTests.cs
@@ -183,9 +183,9 @@ namespace MonoDevelop.Projects
Assert.AreEqual (Path.Combine (tmp, "test4.sln"), (string) sol.FileName);
Assert.AreEqual (4, nameChanges);
- sol.ConvertToFormat (Util.FileFormatMD1, true);
+ sol.ConvertToFormat (Util.FileFormatMSBuild10, true);
Assert.AreEqual ("test4", sol.Name);
- Assert.AreEqual (Path.Combine (tmp, "test4.mds"), (string) sol.FileName);
+ Assert.AreEqual (Path.Combine (tmp, "test4.sln"), (string) sol.FileName);
Assert.AreEqual (4, nameChanges);
}
@@ -221,11 +221,11 @@ namespace MonoDevelop.Projects
Assert.AreEqual (Path.Combine (Path.GetTempPath (), "test4.csproj"), (string) prj.FileName);
Assert.AreEqual (4, nameChanges);
- prj.FileFormat = Util.FileFormatMD1;
+ prj.FileFormat = Util.FileFormatMSBuild12;
Assert.AreEqual ("test4", prj.Name);
- Assert.AreEqual (Path.Combine (Path.GetTempPath (), "test4.mdp"), (string) prj.FileName);
+ Assert.AreEqual (Path.Combine (Path.GetTempPath (), "test4.csproj"), (string) prj.FileName);
Assert.AreEqual (4, nameChanges);
- Assert.AreEqual ("MD1", prj.FileFormat.Id);
+ Assert.AreEqual ("MSBuild12", prj.FileFormat.Id);
// Projects inherit the file format from the parent solution
Solution sol = new Solution ();
@@ -255,16 +255,16 @@ namespace MonoDevelop.Projects
Assert.IsFalse (p.NeedsReload);
// Changing format must reset the reload flag (it's like we just created a new solution in memory)
- sol.ConvertToFormat (Util.FileFormatMD1, true);
+ sol.ConvertToFormat (Util.FileFormatMSBuild10, true);
Assert.IsFalse (sol.NeedsReload);
Assert.IsFalse (p.NeedsReload);
- sol.ConvertToFormat (Util.FileFormatMSBuild05, true);
+ sol.ConvertToFormat (Util.FileFormatMSBuild12, true);
Assert.IsFalse (sol.NeedsReload);
Assert.IsFalse (p.NeedsReload);
sol.RootFolder.Items.Remove (p);
Assert.IsFalse (p.NeedsReload);
- p.FileFormat = Util.FileFormatMD1;
+ p.FileFormat = Util.FileFormatMSBuild12;
Assert.IsFalse (p.NeedsReload);
sol.RootFolder.Items.Add (p);
Assert.IsFalse (p.NeedsReload);
@@ -274,35 +274,35 @@ namespace MonoDevelop.Projects
Assert.IsFalse (p.NeedsReload);
sol.RootFolder.Items.Add (p);
Assert.IsFalse (p.NeedsReload);
-
- string mdsSolFile = Util.GetSampleProject ("csharp-console-mdp", "csharp-console-mdp.mds");
- Solution mdsSol = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), mdsSolFile);
- Project pmds = mdsSol.Items [0] as Project;
- Assert.IsFalse (mdsSol.NeedsReload);
- Assert.IsFalse (pmds.NeedsReload);
+
+ string solFile2 = Util.GetSampleProject ("csharp-console", "csharp-console.sln");
+ Solution sol2 = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile2);
+ Project p2 = sol2.Items [0] as Project;
+ Assert.IsFalse (sol2.NeedsReload);
+ Assert.IsFalse (p2.NeedsReload);
// Check reloading flag in another solution
string solFile = sol.FileName;
- Solution sol2 = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile);
- Assert.IsFalse (sol2.NeedsReload);
+ Solution sol3 = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile);
+ Assert.IsFalse (sol3.NeedsReload);
- Project p2 = sol2.Items [0] as Project;
- Assert.IsFalse (p2.NeedsReload);
+ Project p3 = sol3.Items [0] as Project;
+ Assert.IsFalse (p3.NeedsReload);
System.Threading.Thread.Sleep (1000);
sol.Save (Util.GetMonitor ());
- Assert.IsTrue (sol2.NeedsReload);
+ Assert.IsTrue (sol3.NeedsReload);
}
[Test()]
public void ReloadingReferencedProject ()
{
- string solFile = Util.GetSampleProject ("console-with-libs-mdp", "console-with-libs-mdp.mds");
+ string solFile = Util.GetSampleProject ("console-with-libs", "console-with-libs.sln");
Solution sol = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile);
- DotNetProject p = (DotNetProject) sol.FindProjectByName ("console-with-libs-mdp");
+ DotNetProject p = (DotNetProject) sol.FindProjectByName ("console-with-libs");
DotNetProject lib2 = (DotNetProject) sol.FindProjectByName ("library2");
Assert.AreEqual (3, p.References.Count);
@@ -343,10 +343,10 @@ namespace MonoDevelop.Projects
[Test()]
public void NeedsBuilding ()
{
- string solFile = Util.GetSampleProject ("console-with-libs-mdp", "console-with-libs-mdp.mds");
+ string solFile = Util.GetSampleProject ("console-with-libs", "console-with-libs.sln");
Solution sol = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile);
- DotNetProject p = (DotNetProject) sol.FindProjectByName ("console-with-libs-mdp");
+ DotNetProject p = (DotNetProject) sol.FindProjectByName ("console-with-libs");
Assert.IsNotNull (p);
DotNetProject lib1 = (DotNetProject) sol.FindProjectByName ("library1");
Assert.IsNotNull (lib1);
@@ -363,13 +363,13 @@ namespace MonoDevelop.Projects
BuildResult res = p.Build (Util.GetMonitor (), config, true);
foreach (BuildError er in res.Errors)
- Console.WriteLine (er.ToString ());
+ Console.WriteLine (er);
Assert.AreEqual (0, res.ErrorCount);
Assert.AreEqual (0, res.WarningCount);
Assert.AreEqual (3, res.BuildCount);
- Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs-mdp.exe")));
- Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs-mdp.exe"))));
+ Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs.exe")));
+ Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs.exe"))));
Assert.IsTrue (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", "library1.dll")));
Assert.IsTrue (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", GetMdb ("library1.dll"))));
Assert.IsTrue (File.Exists (Util.Combine (lib2.BaseDirectory, "bin", "Debug", "library2.dll")));
@@ -386,10 +386,10 @@ namespace MonoDevelop.Projects
[Test()]
public void BuildingAndCleaning ()
{
- string solFile = Util.GetSampleProject ("console-with-libs-mdp", "console-with-libs-mdp.mds");
+ string solFile = Util.GetSampleProject ("console-with-libs", "console-with-libs.sln");
Solution sol = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile);
- DotNetProject p = (DotNetProject) sol.FindProjectByName ("console-with-libs-mdp");
+ DotNetProject p = (DotNetProject) sol.FindProjectByName ("console-with-libs");
DotNetProject lib1 = (DotNetProject) sol.FindProjectByName ("library1");
DotNetProject lib2 = (DotNetProject) sol.FindProjectByName ("library2");
@@ -411,8 +411,8 @@ namespace MonoDevelop.Projects
Assert.AreEqual (0, res.WarningCount);
Assert.AreEqual (3, res.BuildCount);
- Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs-mdp.exe")));
- Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs-mdp.exe"))));
+ Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs.exe")));
+ Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs.exe"))));
Assert.IsTrue (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", "library1.dll")));
Assert.IsTrue (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", GetMdb ("library1.dll"))));
Assert.IsTrue (File.Exists (Util.Combine (lib2.BaseDirectory, "bin", "Debug", "library2.dll")));
@@ -421,8 +421,8 @@ namespace MonoDevelop.Projects
// Clean the workspace
ws.Clean (Util.GetMonitor (), "Debug");
- Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs-mdp.exe")));
- Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs-mdp.exe"))));
+ Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs.exe")));
+ Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs.exe"))));
Assert.IsFalse (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", "library1.dll")));
Assert.IsFalse (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", GetMdb ("library1.dll"))));
Assert.IsFalse (File.Exists (Util.Combine (lib2.BaseDirectory, "bin", "Debug", "library2.dll")));
@@ -435,8 +435,8 @@ namespace MonoDevelop.Projects
Assert.AreEqual (0, res.WarningCount);
Assert.AreEqual (3, res.BuildCount);
- Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs-mdp.exe")));
- Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs-mdp.exe"))));
+ Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs.exe")));
+ Assert.IsTrue (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs.exe"))));
Assert.IsTrue (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", "library1.dll")));
Assert.IsTrue (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", GetMdb ("library1.dll"))));
Assert.IsTrue (File.Exists (Util.Combine (lib2.BaseDirectory, "bin", "Debug", "library2.dll")));
@@ -445,8 +445,8 @@ namespace MonoDevelop.Projects
// Clean the solution
sol.Clean (Util.GetMonitor (), "Debug");
- Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs-mdp.exe")));
- Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs-mdp.exe"))));
+ Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs.exe")));
+ Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs.exe"))));
Assert.IsFalse (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", "library1.dll")));
Assert.IsFalse (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", GetMdb ("library1.dll"))));
Assert.IsFalse (File.Exists (Util.Combine (lib2.BaseDirectory, "bin", "Debug", "library2.dll")));
@@ -459,8 +459,8 @@ namespace MonoDevelop.Projects
Assert.AreEqual (0, res.WarningCount);
Assert.AreEqual (1, res.BuildCount);
- Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs-mdp.exe")));
- Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs-mdp.exe"))));
+ Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", "console-with-libs.exe")));
+ Assert.IsFalse (File.Exists (Util.Combine (p.BaseDirectory, "bin", "Debug", GetMdb ("console-with-libs.exe"))));
Assert.IsFalse (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", "library1.dll")));
Assert.IsFalse (File.Exists (Util.Combine (lib1.BaseDirectory, "bin", "Debug", GetMdb ("library1.dll"))));
Assert.IsTrue (File.Exists (Util.Combine (lib2.BaseDirectory, "bin", "Debug", "library2.dll")));
@@ -484,35 +484,32 @@ namespace MonoDevelop.Projects
// Change solution format of unsaved solution
- sol.ConvertToFormat (Util.FileFormatMD1, true);
+ sol.ConvertToFormat (Util.FileFormatMSBuild10, true);
- Assert.AreEqual ("MD1", sol.FileFormat.Id);
- Assert.AreEqual ("MD1", p.FileFormat.Id);
+ Assert.AreEqual ("MSBuild10", sol.FileFormat.Id);
+ Assert.AreEqual ("MSBuild10", p.FileFormat.Id);
- sol.ConvertToFormat (Util.FileFormatMSBuild05, true);
+ sol.ConvertToFormat (Util.FileFormatMSBuild12, true);
- Assert.AreEqual ("MSBuild05", sol.FileFormat.Id);
- Assert.AreEqual ("MSBuild05", p.FileFormat.Id);
+ Assert.AreEqual ("MSBuild12", sol.FileFormat.Id);
+ Assert.AreEqual ("MSBuild12", p.FileFormat.Id);
// Change solution format of saved solution
sol.Save (Util.GetMonitor ());
- sol.ConvertToFormat (Util.FileFormatMD1, false);
+ sol.ConvertToFormat (Util.FileFormatMSBuild05, false);
- Assert.AreEqual ("MD1", sol.FileFormat.Id);
+ Assert.AreEqual ("MSBuild05", sol.FileFormat.Id);
Assert.AreEqual ("MSBuild05", p.FileFormat.Id);
- p.FileFormat = Util.FileFormatMD1;
- Assert.AreEqual ("MD1", p.FileFormat.Id);
-
// Add new project
Project newp = new DotNetAssemblyProject ("C#");
Assert.AreEqual ("MSBuild10", newp.FileFormat.Id);
sol.RootFolder.Items.Add (newp);
- Assert.AreEqual ("MD1", newp.FileFormat.Id);
+ Assert.AreEqual ("MSBuild05", newp.FileFormat.Id);
// Add saved project
@@ -529,7 +526,7 @@ namespace MonoDevelop.Projects
[Test()]
public void BuildConfigurationMappings ()
{
- string solFile = Util.GetSampleProject ("test-build-configs", "test-build-configs.mds");
+ string solFile = Util.GetSampleProject ("test-build-configs", "test-build-configs.sln");
Solution sol = (Solution) Services.ProjectService.ReadWorkspaceItem (Util.GetMonitor (), solFile);
DotNetProject lib1 = (DotNetProject) sol.FindProjectByName ("Lib1");
diff --git a/main/tests/UnitTests/MonoDevelop.Projects/TestProjectsChecks.cs b/main/tests/UnitTests/MonoDevelop.Projects/TestProjectsChecks.cs
index 1df04e1289..f19a1bf769 100644
--- a/main/tests/UnitTests/MonoDevelop.Projects/TestProjectsChecks.cs
+++ b/main/tests/UnitTests/MonoDevelop.Projects/TestProjectsChecks.cs
@@ -45,7 +45,7 @@ namespace MonoDevelop.Projects
Assert.AreEqual (1, sol.Items.Count);
Assert.IsTrue (sol.Items [0] is DotNetProject, "Project is DotNetProject");
DotNetProject project = (DotNetProject) sol.Items [0];
- Assert.AreEqual ("csharp-console-mdp", project.Name);
+ Assert.AreEqual ("csharp-console", project.Name);
// Check files
@@ -244,101 +244,6 @@ namespace Foo {
project.FileName = pfile;
}
- public static Solution CreateProjectWithFolders (string hint)
- {
- string dir = Util.CreateTmpDir (hint);
- Directory.CreateDirectory (Util.Combine (dir, "console-project"));
- Directory.CreateDirectory (Util.Combine (dir, "nested-solution1"));
- Directory.CreateDirectory (Util.Combine (dir, "nested-solution1", "library1"));
- Directory.CreateDirectory (Util.Combine (dir, "nested-solution1", "library2"));
- Directory.CreateDirectory (Util.Combine (dir, "nested-solution2"));
- Directory.CreateDirectory (Util.Combine (dir, "nested-solution2", "console-project2"));
- Directory.CreateDirectory (Util.Combine (dir, "nested-solution2", "nested-solution3"));
- Directory.CreateDirectory (Util.Combine (dir, "nested-solution2", "nested-solution3", "library3"));
- Directory.CreateDirectory (Util.Combine (dir, "nested-solution2", "nested-solution3", "library4"));
-
- Solution sol = new Solution ();
- sol.FileName = Path.Combine (dir, "nested-solutions-mdp");
- SolutionConfiguration scDebug = sol.AddConfiguration ("Debug", true);
- SolutionConfiguration scRelease = sol.AddConfiguration ("Release", true);
-
- DotNetProject project1 = CreateProject (Util.Combine (dir, "console-project"), "C#", "console-project");
- project1.Files.Add (new ProjectFile (Path.Combine (project1.BaseDirectory, "Program.cs")));
- project1.Files.Add (new ProjectFile (Path.Combine (project1.BaseDirectory, "Properties", "AssemblyInfo.cs")));
- sol.RootFolder.Items.Add (project1);
-
- // nested-solution1
-
- SolutionFolder folder1 = new SolutionFolder ();
- sol.RootFolder.Items.Add (folder1);
- folder1.Name = "nested-solution1";
-
- DotNetProject projectLib1 = CreateProject (Util.Combine (dir, "nested-solution1", "library1"), "C#", "library1");
- projectLib1.References.Add (new ProjectReference (ReferenceType.Package, "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"));
- projectLib1.Files.Add (new ProjectFile (Path.Combine (projectLib1.BaseDirectory, "MyClass.cs")));
- projectLib1.Files.Add (new ProjectFile (Path.Combine (projectLib1.BaseDirectory, "Properties", "AssemblyInfo.cs")));
- projectLib1.CompileTarget = CompileTarget.Library;
- folder1.Items.Add (projectLib1);
-
- DotNetProject projectLib2 = CreateProject (Util.Combine (dir, "nested-solution1", "library2"), "C#", "library2");
- projectLib2.References.Add (new ProjectReference (ReferenceType.Package, "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"));
- projectLib2.Files.Add (new ProjectFile (Path.Combine (projectLib2.BaseDirectory, "MyClass.cs")));
- projectLib2.Files.Add (new ProjectFile (Path.Combine (projectLib2.BaseDirectory, "Properties", "AssemblyInfo.cs")));
- projectLib2.CompileTarget = CompileTarget.Library;
- folder1.Items.Add (projectLib2);
-
- // nested-solution2
-
- SolutionFolder folder2 = new SolutionFolder ();
- folder2.Name = "nested-solution2";
- sol.RootFolder.Items.Add (folder2);
-
- DotNetProject project2 = CreateProject (Util.Combine (dir, "nested-solution2", "console-project2"), "C#", "console-project2");
- project2.Files.Add (new ProjectFile (Path.Combine (project2.BaseDirectory, "Program.cs")));
- project2.Files.Add (new ProjectFile (Path.Combine (project2.BaseDirectory, "Properties", "AssemblyInfo.cs")));
- project2.References.Add (new ProjectReference (ReferenceType.Package, "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"));
-
- // nested-solution3
-
- SolutionFolder folder3 = new SolutionFolder ();
- folder3.Name = "nested-solution3";
-
- DotNetProject projectLib3 = CreateProject (Util.Combine (dir, "nested-solution2", "nested-solution3", "library3"), "C#", "library3");
- projectLib3.References.Add (new ProjectReference (ReferenceType.Package, "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"));
- projectLib3.Files.Add (new ProjectFile (Path.Combine (projectLib3.BaseDirectory, "MyClass.cs")));
- projectLib3.Files.Add (new ProjectFile (Path.Combine (projectLib3.BaseDirectory, "Properties", "AssemblyInfo.cs")));
- projectLib3.CompileTarget = CompileTarget.Library;
- folder3.Items.Add (projectLib3);
-
- DotNetProject projectLib4 = CreateProject (Util.Combine (dir, "nested-solution2", "nested-solution3", "library4"), "C#", "library4");
- projectLib4.References.Add (new ProjectReference (ReferenceType.Package, "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"));
- projectLib4.Files.Add (new ProjectFile (Path.Combine (projectLib4.BaseDirectory, "MyClass.cs")));
- projectLib4.Files.Add (new ProjectFile (Path.Combine (projectLib4.BaseDirectory, "Properties", "AssemblyInfo.cs")));
- projectLib4.CompileTarget = CompileTarget.Library;
- folder3.Items.Add (projectLib4);
-
- folder2.Items.Add (folder3);
- folder2.Items.Add (project2);
-
- string file = Path.Combine (dir, "TestSolution.sln");
- sol.FileName = file;
-
- project1.References.Add (new ProjectReference (ReferenceType.Package, "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"));
- project1.References.Add (new ProjectReference (projectLib1));
- project1.References.Add (new ProjectReference (projectLib2));
- project1.References.Add (new ProjectReference (projectLib3));
- project1.References.Add (new ProjectReference (projectLib4));
-
- project2.References.Add (new ProjectReference (projectLib3));
- project2.References.Add (new ProjectReference (projectLib4));
-
- Assert.AreEqual (2, sol.Configurations.Count);
- Assert.AreEqual (6, scDebug.Configurations.Count);
- Assert.AreEqual (6, scRelease.Configurations.Count);
-
- return sol;
- }
-
public static void CheckGenericItemProject (string fileFormat)
{
Solution sol = new Solution ();
diff --git a/main/tests/UnitTests/UnitTests.csproj b/main/tests/UnitTests/UnitTests.csproj
index 600e03856b..c2d385bb30 100644
--- a/main/tests/UnitTests/UnitTests.csproj
+++ b/main/tests/UnitTests/UnitTests.csproj
@@ -253,7 +253,6 @@
<Compile Include="MonoDevelop.Projects\MonoDeveloperFormatTests.cs" />
<Compile Include="MonoDevelop.Projects\ProjectTests.cs" />
<Compile Include="MonoDevelop.Projects\WorkspaceTests.cs" />
- <Compile Include="MonoDevelop.Projects\PackagingTests.cs" />
<Compile Include="MonoDevelop.Projects\MakefileTests.cs" />
<Compile Include="MonoDevelop.Projects\LocalCopyTests.cs" />
<Compile Include="MonoDevelop.Projects\TextFormatterTests.cs" />
diff --git a/main/tests/UnitTests/Util.cs b/main/tests/UnitTests/Util.cs
index 660a6e0058..e3dcf4ae64 100644
--- a/main/tests/UnitTests/Util.cs
+++ b/main/tests/UnitTests/Util.cs
@@ -36,7 +36,7 @@ using MonoDevelop.Projects;
namespace UnitTests
{
- public class Util
+ public static class Util
{
static string rootDir;
static int projectId = 1;
@@ -56,10 +56,6 @@ namespace UnitTests
get { return Path.Combine (TestsRootDir, "tmp"); }
}
- public static FileFormat FileFormatMD1 {
- get { return Services.ProjectService.FileFormats.GetFileFormat ("MD1"); }
- }
-
public static FileFormat FileFormatMSBuild05 {
get { return Services.ProjectService.FileFormats.GetFileFormat ("MSBuild05"); }
}
@@ -67,6 +63,14 @@ namespace UnitTests
public static FileFormat FileFormatMSBuild08 {
get { return Services.ProjectService.FileFormats.GetFileFormat ("MSBuild08"); }
}
+
+ public static FileFormat FileFormatMSBuild10 {
+ get { return Services.ProjectService.FileFormats.GetFileFormat ("MSBuild10"); }
+ }
+
+ public static FileFormat FileFormatMSBuild12 {
+ get { return Services.ProjectService.FileFormats.GetFileFormat ("MSBuild12"); }
+ }
public static IProgressMonitor GetMonitor ()
{
@@ -119,6 +123,11 @@ namespace UnitTests
doc.Load (file);
return Infoset (doc);
}
+
+ public static string ToWindowsEndings (string s)
+ {
+ return s.Replace ("\r\n", "\n").Replace ("\n", "\r\n");
+ }
static void CopyDir (string src, string dst)
{
diff --git a/main/tests/test-projects/ChangeLog b/main/tests/test-projects/ChangeLog
deleted file mode 100644
index 533aae8875..0000000000
--- a/main/tests/test-projects/ChangeLog
+++ /dev/null
@@ -1,259 +0,0 @@
-2009-02-13 Michael Hutchinson <mhutchinson@novell.com>
-
- * generated-console-project/TestSolution.mds: Remove unnecessary
- attribute that was breaking test.
-
-2009-01-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * completion-db-test/CompletionDbTest/Main.cs:
- * completion-db-test/Library2/SharedNamespace.cs:
- * completion-db-test/CompletionDbTest/Replacements:
- * completion-db-test/CompletionDbTest/PartialTest2.cs:
- * completion-db-test/CompletionDbTest/PartialTest1.cs:
- * completion-db-test/CompletionDbTest/CompletionDbTest.csproj:
- * completion-db-test/CompletionDbTest/Replacements/EmptyFile.cs:
- * completion-db-test/CompletionDbTest/Replacements/PartialTest2.cs:
- * completion-db-test/CompletionDbTest/Replacements/GenericRewrite.cs:
- Added replacement files, to be used to simulate changes in files.
-
-2009-01-27 Lluis Sanchez Gual <lluis@novell.com>
-
- * completion-db-test/CompletionDbTest/Main.cs: Updated tests.
-
-2009-01-20 Lluis Sanchez Gual <lluis@novell.com>
-
- * completion-db-test/CompletionDbTest/GenericRewrite.cs:
- * completion-db-test/CompletionDbTest/CompletionDbTest.csproj: Added new
- test.
-
-2009-01-15 Michael Hutchinson <mhutchinson@novell.com>
-
- * vs-local-copy/solution-folder:
- * vs-local-copy/solution-folder/quux.txt:
- * vs-local-copy/solution-folder/app.config:
- * vs-local-copy/VSLocalCopyTest/VSLocalCopyTest.csproj: Test local-copy
- of external files. Patch from Sam Chuparkoff.
-
-2009-01-12 Michael Hutchinson <mhutchinson@novell.com>
-
- * vs-local-copy/ClassLibrary1/foo:
- * vs-local-copy/VSLocalCopyTest/folder:
- * vs-local-copy/ClassLibrary1/foo/bar.txt:
- * vs-local-copy/VSLocalCopyTest/folder/baz.txt:
- * vs-local-copy/ClassLibrary1/ClassLibrary1.csproj:
- * vs-local-copy/VSLocalCopyTest/VSLocalCopyTest.csproj: Update
- local-copy test to make sure paths are included. Covers "Bug 459311 -
- Copying files to output directory in MonoDevelop".
-
-2008-12-16 Lluis Sanchez Gual <lluis@novell.com>
-
- * generated-console-project/TestProject.mdp:
- * generated-console-project/TestProject.csproj:
- * nested-solutions-mdp/console-project/console-project.mdp:
- * nested-solutions-mdp/nested-solution1/library1/library1.mdp:
- * nested-solutions-mdp/nested-solution1/library2/library2.mdp:
- * csharp-console-mdp/csharp-console-mdp/csharp-console-mdp.mdp:
- * nested-solutions-mdp/nested-solution2/console-project2/console-project2.mdp:
- * nested-solutions-mdp/nested-solution2/nested-solution3/library4/library4.mdp:
- * nested-solutions-mdp/nested-solution2/nested-solution3/library3/library3.mdp:
- * test-configuration-merging/TestConfigurationMerging/TestConfigurationMerging.csproj:
- * test-configuration-merging/TestConfigurationMerging/TestConfigurationMergingSaved.csproj:
- Track changes done in the serialization format.
-
- * completion-db-test/Library1/MyClass.cs:
- * completion-db-test/Library2/MyClass.cs:
- * completion-db-test/CompletionDbTest.sln:
- * completion-db-test/Library1/Library1.csproj:
- * completion-db-test/Library2/AssemblyInfo.cs:
- * completion-db-test/Library1/AssemblyInfo.cs:
- * completion-db-test/CompletionDbTest/Main.cs:
- * completion-db-test/Library2/Library2.csproj:
- * completion-db-test/Library2/SharedNamespace.cs:
- * completion-db-test/Library1/SharedNamespace.cs:
- * completion-db-test/Library2/GenericSubclassing.cs:
- * completion-db-test/Library1/GenericSubclassing.cs:
- * completion-db-test/CompletionDbTest/AssemblyInfo.cs:
- * completion-db-test/CompletionDbTest/SharedNamespace.cs:
- * completion-db-test/CompletionDbTest/CompletionDbTest.csproj: Added new
- tests for the code completion database.
-
-2008-10-31 Lluis Sanchez Gual <lluis@novell.com>
-
- * resources-tester/ResourcesTester/Subfolder/FormFile2.Designer.cs: Fix
- build of test solution.
-
-2008-10-30 Lluis Sanchez Gual <lluis@novell.com>
-
- * test-build-configs/Lib4/Lib4.mdp:
- * test-build-configs/Lib3/Lib3.mdp:
- * test-build-configs/Lib2/Lib2.mdp: Fix test solutions.
-
-2008-10-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * test-configuration-merging/TestConfigurationMerging/TestConfigurationMerging.csproj:
- Fixed invalid project file.
-
-2008-10-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * test-configuration-merging:
- * test-configuration-merging/TestConfigurationMerging:
- * test-configuration-merging/TestConfigurationMerging.sln:
- * test-configuration-merging/TestConfigurationMerging/Main.cs:
- * test-configuration-merging/TestConfigurationMerging/AssemblyInfo.cs:
- * test-configuration-merging/TestConfigurationMerging/TestConfigurationMerging.csproj:
- * test-configuration-merging/TestConfigurationMerging/TestConfigurationMergingSaved.csproj:
- Add new test projects.
-
-2008-10-01 Michael Hutchinson <mhutchinson@novell.com>
-
- * vs-local-copy, vs-local-copy/ClassLibrary5,
- vs-local-copy/ClassLibrary5/Properties,
- vs-local-copy/ClassLibrary5/Properties/AssemblyInfo.cs,
- vs-local-copy/ClassLibrary5/Class5.cs,
- vs-local-copy/ClassLibrary5/ClassLibrary5.csproj,
- vs-local-copy/VSLocalCopyTest.sln, vs-local-copy/ClassLibrary1,
- vs-local-copy/ClassLibrary1/TextFile1.txt,
- vs-local-copy/ClassLibrary1/ClassLibrary1.csproj,
- vs-local-copy/ClassLibrary1/Class1.cs,
- vs-local-copy/ClassLibrary1/Properties,
- vs-local-copy/ClassLibrary1/Properties/AssemblyInfo.cs,
- vs-local-copy/ClassLibrary2,
- vs-local-copy/ClassLibrary2/TextFile2.txt,
- vs-local-copy/ClassLibrary2/Class2.cs,
- vs-local-copy/ClassLibrary2/ClassLibrary2.csproj,
- vs-local-copy/ClassLibrary2/Properties,
- vs-local-copy/ClassLibrary2/Properties/AssemblyInfo.cs,
- vs-local-copy/ClassLibrary3,
- vs-local-copy/ClassLibrary3/Properties,
- vs-local-copy/ClassLibrary3/Properties/AssemblyInfo.cs,
- vs-local-copy/ClassLibrary3/Class3.cs,
- vs-local-copy/ClassLibrary3/ClassLibrary3.csproj,
- vs-local-copy/ClassLibrary4,
- vs-local-copy/ClassLibrary4/Properties,
- vs-local-copy/ClassLibrary4/Properties/AssemblyInfo.cs,
- vs-local-copy/ClassLibrary4/ClassLibrary4.csproj,
- vs-local-copy/ClassLibrary4/Class4.cs,
- vs-local-copy/VSLocalCopyTest,
- vs-local-copy/VSLocalCopyTest/Program.cs,
- vs-local-copy/VSLocalCopyTest/Properties,
- vs-local-copy/VSLocalCopyTest/Properties/AssemblyInfo.cs,
- vs-local-copy/VSLocalCopyTest/VSLocalCopyTest.csproj: Add a test
- project for local copy of files and references.
-
-2008-06-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * test-build-configs, test-build-configs/test-build-configs.mds,
- test-build-configs/Lib1, test-build-configs/Lib1/MyClass.cs,
- test-build-configs/Lib1/AssemblyInfo.cs,
- test-build-configs/Lib1/Lib1.mdp, test-build-configs/Lib2,
- test-build-configs/Lib2/MyClass.cs,
- test-build-configs/Lib2/AssemblyInfo.cs,
- test-build-configs/Lib2/Lib2.mdp, test-build-configs/Lib3,
- test-build-configs/Lib3/MyClass.cs,
- test-build-configs/Lib3/AssemblyInfo.cs,
- test-build-configs/Lib3/Lib3.mdp, test-build-configs/Lib4,
- test-build-configs/Lib4/MyClass.cs,
- test-build-configs/Lib4/AssemblyInfo.cs,
- test-build-configs/Lib4/Lib4.mdp: New tests for checking solution
- configuration mappings.
-
-2008-06-04 Lluis Sanchez Gual <lluis@novell.com>
-
- * generated-console-project/TestSolution.sln,
- console-project/ConsoleProject.sln: Test fixes.
-
-2008-05-23 Lluis Sanchez Gual <lluis@novell.com>
-
- * generated-console-project/TestProject.mdp,
- generated-console-project/TestSolution.sln,
- console-project/ConsoleProject.sln: Fix tests.
-
-2008-05-21 Lluis Sanchez Gual <lluis@novell.com>
-
- * console-with-libs-mdp/console-with-libs-mdp/console-with-libs-mdp.mdp,
- console-with-libs-mdp/console-with-libs-mdp/AssemblyInfo.cs,
- console-with-libs-mdp/console-with-libs-mdp/Main.cs,
- console-with-libs-mdp/console-with-libs-mdp.mds,
- console-with-libs-mdp/library1/MyClass.cs,
- console-with-libs-mdp/library1/AssemblyInfo.cs,
- console-with-libs-mdp/library2/MyClass.cs,
- console-with-libs-mdp/library2/AssemblyInfo.cs,
- console-with-libs-mdp/library2/library2.mdp,
- generated-console-project/TestProject.csproj,
- generated-console-project/TestProject.mdp,
- generated-console-project/TestSolution.sln,
- generated-console-project/TestSolution.mds,
- nunit-assembly-group/nunit-assembly-group.mds,
- nunit-assembly-group/nunit-assembly-group.md-nunit,
- console-project/ConsoleProject.sln,
- console-project/ConsoleProject/ConsoleProject.csproj,
- console-project/ConsoleProject/Program.cs,
- console-project/ConsoleProject/Properties/AssemblyInfo.cs,
- console-project-with-makefile/Makefile.include,
- console-project-with-makefile/configure,
- console-project-with-makefile/ConsoleProject.sln,
- console-project-with-makefile/rules.make,
- console-project-with-makefile/ConsoleProject/ConsoleProject.csproj,
- console-project-with-makefile/ConsoleProject/Program.cs,
- console-project-with-makefile/ConsoleProject/Properties/AssemblyInfo.cs,
- console-project-with-makefile/ConsoleProject/Makefile,
- console-project-with-makefile/ConsoleProject/consoleproject.in,
- console-project-with-makefile/Makefile,
- nested-solutions-mdp/nested-solutions-mdp.mds,
- nested-solutions-mdp/console-project/AssemblyInfo.cs,
- nested-solutions-mdp/console-project/console-project.mdp,
- nested-solutions-mdp/console-project/Main.cs,
- nested-solutions-mdp/nested-solution1/nested-solution1.mds,
- nested-solutions-mdp/nested-solution1/library1/MyClass.cs,
- nested-solutions-mdp/nested-solution1/library1/AssemblyInfo.cs,
- nested-solutions-mdp/nested-solution1/library1/library1.mdp,
- nested-solutions-mdp/nested-solution1/library2/MyClass.cs,
- nested-solutions-mdp/nested-solution1/library2/AssemblyInfo.cs,
- nested-solutions-mdp/nested-solution1/library2/library2.mdp,
- nested-solutions-mdp/nested-solution2/nested-solution3/nested-solution3.mds,
- nested-solutions-mdp/nested-solution2/nested-solution3/library3/MyClass.cs,
- nested-solutions-mdp/nested-solution2/nested-solution3/library3/AssemblyInfo.cs,
- nested-solutions-mdp/nested-solution2/nested-solution3/library3/library3.pidb,
- nested-solutions-mdp/nested-solution2/nested-solution3/library3/library3.mdp,
- nested-solutions-mdp/nested-solution2/nested-solution3/library4/MyClass.cs,
- nested-solutions-mdp/nested-solution2/nested-solution3/library4/AssemblyInfo.cs,
- nested-solutions-mdp/nested-solution2/nested-solution3/library4/library4.pidb,
- nested-solutions-mdp/nested-solution2/nested-solution3/library4/library4.mdp,
- nested-solutions-mdp/nested-solution2/nested-solution2.mds,
- nested-solutions-mdp/nested-solution2/console-project2/AssemblyInfo.cs,
- nested-solutions-mdp/nested-solution2/console-project2/console-project2.pidb,
- nested-solutions-mdp/nested-solution2/console-project2/console-project2.mdp,
- nested-solutions-mdp/nested-solution2/console-project2/Main.cs,
- resources-tester/ResourcesTester/ResourcesTester.csproj,
- resources-tester/ResourcesTester/BitmapCultured.ca.bmp,
- resources-tester/ResourcesTester/FormFile.resx,
- resources-tester/ResourcesTester/Subfolder/BitmapCultured2.ca.bmp,
- resources-tester/ResourcesTester/Subfolder/FormFile2.resx,
- resources-tester/ResourcesTester/Subfolder/FormFile2.ca.resx,
- resources-tester/ResourcesTester/Subfolder/FormFile2.Designer.cs,
- resources-tester/ResourcesTester/Subfolder/FormFile2.cs,
- resources-tester/ResourcesTester/Subfolder/Normal2.resx,
- resources-tester/ResourcesTester/Subfolder/Cultured2.ca.resx,
- resources-tester/ResourcesTester/Subfolder/Bitmap2.bmp,
- resources-tester/ResourcesTester/Subfolder/Normal2.Designer.cs,
- resources-tester/ResourcesTester/FormFile.ca.resx,
- resources-tester/ResourcesTester/FormFile.Designer.cs,
- resources-tester/ResourcesTester/FormFile.cs,
- resources-tester/ResourcesTester/Normal.resx,
- resources-tester/ResourcesTester/Cultured.ca.resx,
- resources-tester/ResourcesTester/Bitmap1.bmp,
- resources-tester/ResourcesTester/Normal.Designer.cs,
- resources-tester/ResourcesTester/Program.cs,
- resources-tester/ResourcesTester/Properties/Settings.settings,
- resources-tester/ResourcesTester/Properties/AssemblyInfo.cs,
- resources-tester/ResourcesTester/Properties/Settings.Designer.cs,
- resources-tester/ResourcesTester/Properties/Resources.resx,
- resources-tester/ResourcesTester/Properties/Resources.Designer.cs,
- resources-tester/ResourcesTester.sln,
- csharp-console-mdp/csharp-console-mdp.mds,
- csharp-console-mdp/csharp-console-mdp/AssemblyInfo.cs,
- csharp-console-mdp/csharp-console-mdp/Main.cs,
- csharp-console-mdp/csharp-console-mdp/csharp-console-mdp.mdp: New
- unit test infrastructure.
-
-
diff --git a/main/tests/test-projects/ContactBook/ContactBook.mds b/main/tests/test-projects/ContactBook/ContactBook.mds
deleted file mode 100644
index e88cafd1ce..0000000000
--- a/main/tests/test-projects/ContactBook/ContactBook.mds
+++ /dev/null
@@ -1,24 +0,0 @@
-<Combine defaultDeployTarget="Install irectory" name="ContactBook" fileversion="2.0" MakePkgConfig="False" MakeLibPC="True">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="CombineConfiguration">
- <Entry build="True" name="ContactBook" configuration="Debug" />
- <Entry build="True" name="CustomWidgets" configuration="Debug" />
- </Configuration>
- <Configuration name="Release" ctype="CombineConfiguration">
- <Entry build="True" name="ContactBook" configuration="Release" />
- <Entry build="True" name="CustomWidgets" configuration="Release" />
- </Configuration>
- </Configurations>
- <DeployTargets>
- <DeployTarget Handler="MonoDevelop.DirectoryDeploy" Name="Install irectory" ctype="DirectoryDeployTarget" />
- <DeployTarget Handler="MonoDevelop.Autotools.Deployer" Name="Release Tarball" DefaultConfiguration="Debug" ctype="TarballDeployTarget" />
- </DeployTargets>
- <StartMode startupentry="ContactBook" single="True">
- <Execute type="None" entry="ContactBook" />
- <Execute type="None" entry="CustomWidgets" />
- </StartMode>
- <Entries>
- <Entry filename="./ContactBook/ContactBook.mdp" />
- <Entry filename="./CustomWidgets/CustomWidgets.mdp" />
- </Entries>
-</Combine> \ No newline at end of file
diff --git a/main/tests/test-projects/ContactBook/ContactBook.sln b/main/tests/test-projects/ContactBook/ContactBook.sln
new file mode 100644
index 0000000000..911f8d094e
--- /dev/null
+++ b/main/tests/test-projects/ContactBook/ContactBook.sln
@@ -0,0 +1,40 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ContactBook", "ContactBook\ContactBook.csproj", "{73900FE9-EA37-44A6-B673-EDD62C6B755B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CustomWidgets", "CustomWidgets\CustomWidgets.csproj", "{AF8B29A8-B968-4C13-8FFE-D795803BBAB9}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {73900FE9-EA37-44A6-B673-EDD62C6B755B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {73900FE9-EA37-44A6-B673-EDD62C6B755B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {73900FE9-EA37-44A6-B673-EDD62C6B755B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {73900FE9-EA37-44A6-B673-EDD62C6B755B}.Release|Any CPU.Build.0 = Release|Any CPU
+ {AF8B29A8-B968-4C13-8FFE-D795803BBAB9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {AF8B29A8-B968-4C13-8FFE-D795803BBAB9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {AF8B29A8-B968-4C13-8FFE-D795803BBAB9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {AF8B29A8-B968-4C13-8FFE-D795803BBAB9}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(MonoDevelopProperties) = preSolution
+ StartupItem = ContactBook\ContactBook.csproj
+ defaultDeployTarget = Install irectory
+ name = ContactBook
+ MakePkgConfig = False
+ MakeLibPC = True
+ DeployTargets = $0
+ $0.DeployTarget = $1
+ $1.Handler = MonoDevelop.DirectoryDeploy
+ $1.Name = Install irectory
+ $1.ctype = DirectoryDeployTarget
+ $0.DeployTarget = $2
+ $2.Handler = MonoDevelop.Autotools.Deployer
+ $2.Name = Release Tarball
+ $2.DefaultConfiguration = Debug
+ $2.ctype = TarballDeployTarget
+ EndGlobalSection
+EndGlobal
diff --git a/main/tests/test-projects/ContactBook/ContactBook/ContactBook.csproj b/main/tests/test-projects/ContactBook/ContactBook/ContactBook.csproj
new file mode 100644
index 0000000000..725a5b840b
--- /dev/null
+++ b/main/tests/test-projects/ContactBook/ContactBook/ContactBook.csproj
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>10.0.0</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{73900FE9-EA37-44A6-B673-EDD62C6B755B}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <RootNamespace>ContactBook</RootNamespace>
+ <AssemblyName>ContactBook</AssemblyName>
+ <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Debug</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ </PropertyGroup>
+ <ItemGroup>
+ <Content Include="gtk-gui\gui.stetic" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="gtk-gui\generated.cs" />
+ <Compile Include="MainWindow.cs" />
+ <Compile Include="Main.cs" />
+ <Compile Include="AssemblyInfo.cs" />
+ <Compile Include="GlobalActionGroup.cs" />
+ <Compile Include="gtk-gui\ContactBook.GlobalActionGroup.cs" />
+ <Compile Include="gtk-gui\MainWindow.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="gtk-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="gdk-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="glib-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="glade-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="pango-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="System" />
+ <Reference Include="System.Web.Services" />
+ <Reference Include="Mono.Posix" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\CustomWidgets\CustomWidgets.csproj">
+ <Project>{AF8B29A8-B968-4C13-8FFE-D795803BBAB9}</Project>
+ <Name>CustomWidgets</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project> \ No newline at end of file
diff --git a/main/tests/test-projects/ContactBook/ContactBook/ContactBook.mdp b/main/tests/test-projects/ContactBook/ContactBook/ContactBook.mdp
deleted file mode 100644
index 16c809593e..0000000000
--- a/main/tests/test-projects/ContactBook/ContactBook/ContactBook.mdp
+++ /dev/null
@@ -1,37 +0,0 @@
-<Project name="ContactBook" fileversion="2.0" DefaultNamespace="ContactBook" language="C#" clr-version="Net_2_0" targetFramework="2.0" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="ContactBook" />
- <Build debugmode="True" target="Exe" />
- <Execution consolepause="True" runwithwarnings="True" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="ContactBook" />
- <Build debugmode="False" target="Exe" />
- <Execution consolepause="True" runwithwarnings="True" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File subtype="Code" buildaction="Exclude" name="gtk-gui/gui.stetic" />
- <File subtype="Code" buildaction="Compile" name="gtk-gui/generated.cs" />
- <File subtype="Code" buildaction="Compile" name="MainWindow.cs" />
- <File subtype="Code" buildaction="Compile" name="Main.cs" />
- <File subtype="Code" buildaction="Compile" name="AssemblyInfo.cs" />
- <File subtype="Code" buildaction="Compile" name="GlobalActionGroup.cs" />
- <File subtype="Code" buildaction="Compile" name="gtk-gui/ContactBook.GlobalActionGroup.cs" />
- <File subtype="Code" buildaction="Compile" name="gtk-gui/MainWindow.cs" />
- </Contents>
- <References>
- <ProjectReference specificVersion="False" type="Gac" localcopy="True" refto="gtk-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
- <ProjectReference specificVersion="False" type="Gac" localcopy="True" refto="gdk-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
- <ProjectReference specificVersion="False" type="Gac" localcopy="True" refto="glib-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
- <ProjectReference specificVersion="False" type="Gac" localcopy="True" refto="glade-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
- <ProjectReference specificVersion="False" type="Gac" localcopy="True" refto="pango-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
- <ProjectReference type="Project" localcopy="True" refto="CustomWidgets" />
- <ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <ProjectReference type="Gac" localcopy="True" refto="System.Web.Services, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
- <ProjectReference type="Gac" localcopy="True" refto="Mono.Posix, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/ContactBook/CustomWidgets/CustomWidgets.csproj b/main/tests/test-projects/ContactBook/CustomWidgets/CustomWidgets.csproj
new file mode 100644
index 0000000000..2ec123f371
--- /dev/null
+++ b/main/tests/test-projects/ContactBook/CustomWidgets/CustomWidgets.csproj
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>10.0.0</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{AF8B29A8-B968-4C13-8FFE-D795803BBAB9}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <RootNamespace>CustomWidgets</RootNamespace>
+ <AssemblyName>CustomWidgets</AssemblyName>
+ <TargetFrameworkVersion>v1.1</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Debug</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_1_1" xmlns="" />
+ </Execution>
+ <ConsolePause>false</ConsolePause>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_1_1" xmlns="" />
+ </Execution>
+ <ConsolePause>false</ConsolePause>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ </PropertyGroup>
+ <ItemGroup>
+ <Compile Include="MyClass.cs" />
+ <Compile Include="AssemblyInfo.cs" />
+ <Compile Include="gtk-gui\generated.cs" />
+ <Compile Include="TextSelector.cs" />
+ <Compile Include="gtk-gui\CustomWidgets.TextSelector.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Content Include="gtk-gui\gui.stetic" />
+ </ItemGroup>
+ <ItemGroup>
+ <EmbeddedResource Include="gtk-gui\objects.xml">
+ <LogicalName>objects.xml</LogicalName>
+ </EmbeddedResource>
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="gtk-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="gdk-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <SpecificVersion>False</SpecificVersion>
+ </Reference>
+ <Reference Include="System" />
+ <Reference Include="Mono.Posix" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project> \ No newline at end of file
diff --git a/main/tests/test-projects/ContactBook/CustomWidgets/CustomWidgets.mdp b/main/tests/test-projects/ContactBook/CustomWidgets/CustomWidgets.mdp
deleted file mode 100644
index f9bb4b2e04..0000000000
--- a/main/tests/test-projects/ContactBook/CustomWidgets/CustomWidgets.mdp
+++ /dev/null
@@ -1,31 +0,0 @@
-<Project name="CustomWidgets" fileversion="2.0" DefaultNamespace="CustomWidgets" language="C#" clr-version="Net_1_1" targetFramework="1.1" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="CustomWidgets" />
- <Build debugmode="True" target="Library" />
- <Execution consolepause="False" runwithwarnings="True" runtime="MsNet" clr-version="Net_1_1" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="CustomWidgets" />
- <Build debugmode="False" target="Library" />
- <Execution consolepause="False" runwithwarnings="True" runtime="MsNet" clr-version="Net_1_1" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File subtype="Code" buildaction="Compile" name="MyClass.cs" />
- <File subtype="Code" buildaction="Compile" name="AssemblyInfo.cs" />
- <File subtype="Code" buildaction="Exclude" name="gtk-gui/gui.stetic" />
- <File subtype="Code" buildaction="Compile" name="gtk-gui/generated.cs" />
- <File subtype="Code" buildaction="Compile" name="TextSelector.cs" />
- <File subtype="Code" buildaction="EmbedAsResource" name="gtk-gui/objects.xml" />
- <File subtype="Code" buildaction="Compile" name="gtk-gui/CustomWidgets.TextSelector.cs" />
- </Contents>
- <References>
- <ProjectReference specificVersion="False" type="Gac" localcopy="True" refto="gtk-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
- <ProjectReference specificVersion="False" type="Gac" localcopy="True" refto="gdk-sharp, Version=2.4.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" />
- <ProjectReference type="Gac" localcopy="True" refto="System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <ProjectReference type="Gac" localcopy="True" refto="Mono.Posix, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp.mds b/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp.mds
deleted file mode 100644
index 479fd78b82..0000000000
--- a/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp.mds
+++ /dev/null
@@ -1,24 +0,0 @@
-<Combine name="console-with-libs-mdp" fileversion="2.0">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="CombineConfiguration">
- <Entry build="True" name="console-with-libs-mdp" configuration="Debug" />
- <Entry build="True" name="library1" configuration="Debug" />
- <Entry build="True" name="library2" configuration="Debug" />
- </Configuration>
- <Configuration name="Release" ctype="CombineConfiguration">
- <Entry build="True" name="console-with-libs-mdp" configuration="Release" />
- <Entry build="True" name="library1" configuration="Release" />
- <Entry build="True" name="library2" configuration="Release" />
- </Configuration>
- </Configurations>
- <StartMode startupentry="console-with-libs-mdp" single="True">
- <Execute type="None" entry="console-with-libs-mdp" />
- <Execute type="None" entry="library1" />
- <Execute type="None" entry="library2" />
- </StartMode>
- <Entries>
- <Entry filename="console-with-libs-mdp/console-with-libs-mdp.mdp" />
- <Entry filename="library1/library1.mdp" />
- <Entry filename="library2/library2.mdp" />
- </Entries>
-</Combine> \ No newline at end of file
diff --git a/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/Program.cs b/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/Program.cs
deleted file mode 100644
index b6b642fd12..0000000000
--- a/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/Program.cs
+++ /dev/null
@@ -1,38 +0,0 @@
-// Main.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-using System;
-
-namespace consolewithlibsmdp
-{
- class MainClass
- {
- public static void Main(string[] args)
- {
- Console.WriteLine("Hello World!");
- }
- }
-} \ No newline at end of file
diff --git a/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/Properties/AssemblyInfo.cs b/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/Properties/AssemblyInfo.cs
deleted file mode 100644
index 738e8b35f5..0000000000
--- a/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-// AssemblyInfo.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-using System.Reflection;
-using System.Runtime.CompilerServices;
-
-// Information about this assembly is defined by the following attributes.
-// Change them to the values specific to your project.
-
-[assembly: AssemblyTitle("console-with-libs-mdp")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("")]
-[assembly: AssemblyCopyright("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
-// If the build and revision are set to '*' they will be updated automatically.
-
-[assembly: AssemblyVersion("1.0.*")]
-
-// The following attributes are used to specify the signing key for the assembly,
-// if desired. See the Mono documentation for more information about signing.
-
-[assembly: AssemblyDelaySign(false)]
-[assembly: AssemblyKeyFile("")]
diff --git a/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/console-with-libs-mdp.mdp b/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/console-with-libs-mdp.mdp
deleted file mode 100644
index b2ffb52b11..0000000000
--- a/main/tests/test-projects/console-with-libs-mdp/console-with-libs-mdp/console-with-libs-mdp.mdp
+++ /dev/null
@@ -1,25 +0,0 @@
-<Project name="console-with-libs-mdp" fileversion="2.0" language="C#" clr-version="Net_2_0" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="console-with-libs-mdp" />
- <Build debugmode="True" target="Exe" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" definesymbols="DEBUG" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="console-with-libs-mdp" />
- <Build debugmode="False" target="Exe" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="Program.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <ProjectReference type="Project" localcopy="True" refto="library1" />
- <ProjectReference type="Project" localcopy="True" refto="library2" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/console-with-libs-mdp/library1/MyClass.cs b/main/tests/test-projects/console-with-libs-mdp/library1/MyClass.cs
deleted file mode 100644
index 892691ccee..0000000000
--- a/main/tests/test-projects/console-with-libs-mdp/library1/MyClass.cs
+++ /dev/null
@@ -1,41 +0,0 @@
-// MyClass.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-
-namespace library1
-{
-
-
- public class MyClass
- {
-
- public MyClass()
- {
- }
- }
-}
diff --git a/main/tests/test-projects/console-with-libs-mdp/library1/library1.mdp b/main/tests/test-projects/console-with-libs-mdp/library1/library1.mdp
deleted file mode 100644
index 72a55d2598..0000000000
--- a/main/tests/test-projects/console-with-libs-mdp/library1/library1.mdp
+++ /dev/null
@@ -1,23 +0,0 @@
-<Project name="library1" fileversion="2.0" language="C#" clr-version="Net_2_0" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="library1" />
- <Build debugmode="True" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" definesymbols="DEBUG" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="library1" />
- <Build debugmode="False" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="MyClass.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/console-with-libs-mdp/library2/Properties/AssemblyInfo.cs b/main/tests/test-projects/console-with-libs-mdp/library2/Properties/AssemblyInfo.cs
deleted file mode 100644
index addef9fb8a..0000000000
--- a/main/tests/test-projects/console-with-libs-mdp/library2/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-// AssemblyInfo.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-using System.Reflection;
-using System.Runtime.CompilerServices;
-
-// Information about this assembly is defined by the following attributes.
-// Change them to the values specific to your project.
-
-[assembly: AssemblyTitle("library2")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("")]
-[assembly: AssemblyCopyright("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
-// If the build and revision are set to '*' they will be updated automatically.
-
-[assembly: AssemblyVersion("1.0.*")]
-
-// The following attributes are used to specify the signing key for the assembly,
-// if desired. See the Mono documentation for more information about signing.
-
-[assembly: AssemblyDelaySign(false)]
-[assembly: AssemblyKeyFile("")]
diff --git a/main/tests/test-projects/console-with-libs-mdp/library2/library2.mdp b/main/tests/test-projects/console-with-libs-mdp/library2/library2.mdp
deleted file mode 100644
index e418d9e034..0000000000
--- a/main/tests/test-projects/console-with-libs-mdp/library2/library2.mdp
+++ /dev/null
@@ -1,23 +0,0 @@
-<Project name="library2" fileversion="2.0" language="C#" clr-version="Net_2_0" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="library2" />
- <Build debugmode="True" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" definesymbols="DEBUG" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="library2" />
- <Build debugmode="False" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="MyClass.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/console-with-libs/console-with-libs.sln b/main/tests/test-projects/console-with-libs/console-with-libs.sln
new file mode 100644
index 0000000000..3a1c54554b
--- /dev/null
+++ b/main/tests/test-projects/console-with-libs/console-with-libs.sln
@@ -0,0 +1,33 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "console-with-libs", "console-with-libs\console-with-libs.csproj", "{EAB80A13-FC3E-4E53-8950-E6B9F19E4C90}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "library1", "library1\library1.csproj", "{7F63CBE6-2FE7-47A7-8930-EA078DA05062}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "library2", "library2\library2.csproj", "{42A9AAF1-DCB8-4F3F-9B20-5F17D4EAAD20}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {42A9AAF1-DCB8-4F3F-9B20-5F17D4EAAD20}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {42A9AAF1-DCB8-4F3F-9B20-5F17D4EAAD20}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {42A9AAF1-DCB8-4F3F-9B20-5F17D4EAAD20}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {42A9AAF1-DCB8-4F3F-9B20-5F17D4EAAD20}.Release|Any CPU.Build.0 = Release|Any CPU
+ {7F63CBE6-2FE7-47A7-8930-EA078DA05062}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {7F63CBE6-2FE7-47A7-8930-EA078DA05062}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {7F63CBE6-2FE7-47A7-8930-EA078DA05062}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {7F63CBE6-2FE7-47A7-8930-EA078DA05062}.Release|Any CPU.Build.0 = Release|Any CPU
+ {EAB80A13-FC3E-4E53-8950-E6B9F19E4C90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {EAB80A13-FC3E-4E53-8950-E6B9F19E4C90}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {EAB80A13-FC3E-4E53-8950-E6B9F19E4C90}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {EAB80A13-FC3E-4E53-8950-E6B9F19E4C90}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(MonoDevelopProperties) = preSolution
+ StartupItem = console-with-libs\console-with-libs.csproj
+ name = console-with-libs
+ EndGlobalSection
+EndGlobal
diff --git a/main/tests/test-projects/nested-solutions-mdp/console-project/Program.cs b/main/tests/test-projects/console-with-libs/console-with-libs/Program.cs
index bf59309046..e6ef050783 100644
--- a/main/tests/test-projects/nested-solutions-mdp/console-project/Program.cs
+++ b/main/tests/test-projects/console-with-libs/console-with-libs/Program.cs
@@ -26,7 +26,7 @@
//
using System;
-namespace consoleproject
+namespace consolewithlib
{
class MainClass
{
@@ -35,4 +35,4 @@ namespace consoleproject
Console.WriteLine("Hello World!");
}
}
-} \ No newline at end of file
+}
diff --git a/main/tests/test-projects/nested-solutions-mdp/console-project/Properties/AssemblyInfo.cs b/main/tests/test-projects/console-with-libs/console-with-libs/Properties/AssemblyInfo.cs
index 34f0d67fbc..b0f5040c6e 100644
--- a/main/tests/test-projects/nested-solutions-mdp/console-project/Properties/AssemblyInfo.cs
+++ b/main/tests/test-projects/console-with-libs/console-with-libs/Properties/AssemblyInfo.cs
@@ -27,10 +27,10 @@
using System.Reflection;
using System.Runtime.CompilerServices;
-// Information about this assembly is defined by the following attributes.
+// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
-[assembly: AssemblyTitle("console-project")]
+[assembly: AssemblyTitle("console-with-libs")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
@@ -44,7 +44,7 @@ using System.Runtime.CompilerServices;
[assembly: AssemblyVersion("1.0.*")]
-// The following attributes are used to specify the signing key for the assembly,
+// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
[assembly: AssemblyDelaySign(false)]
diff --git a/main/tests/test-projects/console-with-libs/console-with-libs/console-with-libs.csproj b/main/tests/test-projects/console-with-libs/console-with-libs/console-with-libs.csproj
new file mode 100644
index 0000000000..dacd4caf48
--- /dev/null
+++ b/main/tests/test-projects/console-with-libs/console-with-libs/console-with-libs.csproj
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>10.0.0</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{EAB80A13-FC3E-4E53-8950-E6B9F19E4C90}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AssemblyName>console-with-libs</AssemblyName>
+ <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Debug</OutputPath>
+ <DefineConstants>DEBUG</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ </PropertyGroup>
+ <ItemGroup>
+ <Compile Include="Program.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\library1\library1.csproj">
+ <Project>{7F63CBE6-2FE7-47A7-8930-EA078DA05062}</Project>
+ <Name>library1</Name>
+ </ProjectReference>
+ <ProjectReference Include="..\library2\library2.csproj">
+ <Project>{42A9AAF1-DCB8-4F3F-9B20-5F17D4EAAD20}</Project>
+ <Name>library2</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project>
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library1/MyClass.cs b/main/tests/test-projects/console-with-libs/library1/MyClass.cs
index 892691ccee..789d1b07ae 100644
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library1/MyClass.cs
+++ b/main/tests/test-projects/console-with-libs/library1/MyClass.cs
@@ -29,11 +29,11 @@ using System;
namespace library1
{
-
-
+
+
public class MyClass
{
-
+
public MyClass()
{
}
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library1/Properties/AssemblyInfo.cs b/main/tests/test-projects/console-with-libs/library1/Properties/AssemblyInfo.cs
index b1831917cf..dbc7743054 100644
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library1/Properties/AssemblyInfo.cs
+++ b/main/tests/test-projects/console-with-libs/library1/Properties/AssemblyInfo.cs
@@ -27,7 +27,7 @@
using System.Reflection;
using System.Runtime.CompilerServices;
-// Information about this assembly is defined by the following attributes.
+// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
[assembly: AssemblyTitle("library1")]
@@ -44,7 +44,7 @@ using System.Runtime.CompilerServices;
[assembly: AssemblyVersion("1.0.*")]
-// The following attributes are used to specify the signing key for the assembly,
+// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
[assembly: AssemblyDelaySign(false)]
diff --git a/main/tests/test-projects/console-with-libs/library1/library1.csproj b/main/tests/test-projects/console-with-libs/library1/library1.csproj
new file mode 100644
index 0000000000..19f2dd2213
--- /dev/null
+++ b/main/tests/test-projects/console-with-libs/library1/library1.csproj
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>10.0.0</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{7F63CBE6-2FE7-47A7-8930-EA078DA05062}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AssemblyName>library1</AssemblyName>
+ <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Debug</OutputPath>
+ <DefineConstants>DEBUG</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <ConsolePause>false</ConsolePause>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <ConsolePause>false</ConsolePause>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ </PropertyGroup>
+ <ItemGroup>
+ <Compile Include="MyClass.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project> \ No newline at end of file
diff --git a/main/tests/test-projects/console-with-libs-mdp/library2/MyClass.cs b/main/tests/test-projects/console-with-libs/library2/MyClass.cs
index aaa2d5fc23..47ce7c5a20 100644
--- a/main/tests/test-projects/console-with-libs-mdp/library2/MyClass.cs
+++ b/main/tests/test-projects/console-with-libs/library2/MyClass.cs
@@ -29,11 +29,11 @@ using System;
namespace library2
{
-
-
+
+
public class MyClass
{
-
+
public MyClass()
{
}
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library2/Properties/AssemblyInfo.cs b/main/tests/test-projects/console-with-libs/library2/Properties/AssemblyInfo.cs
index addef9fb8a..6eb8385596 100644
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library2/Properties/AssemblyInfo.cs
+++ b/main/tests/test-projects/console-with-libs/library2/Properties/AssemblyInfo.cs
@@ -27,7 +27,7 @@
using System.Reflection;
using System.Runtime.CompilerServices;
-// Information about this assembly is defined by the following attributes.
+// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
[assembly: AssemblyTitle("library2")]
@@ -44,7 +44,7 @@ using System.Runtime.CompilerServices;
[assembly: AssemblyVersion("1.0.*")]
-// The following attributes are used to specify the signing key for the assembly,
+// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
[assembly: AssemblyDelaySign(false)]
diff --git a/main/tests/test-projects/console-with-libs/library2/library2.csproj b/main/tests/test-projects/console-with-libs/library2/library2.csproj
new file mode 100644
index 0000000000..9f7ea2b84b
--- /dev/null
+++ b/main/tests/test-projects/console-with-libs/library2/library2.csproj
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>10.0.0</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{42A9AAF1-DCB8-4F3F-9B20-5F17D4EAAD20}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AssemblyName>library2</AssemblyName>
+ <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Debug</OutputPath>
+ <DefineConstants>DEBUG</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <ConsolePause>false</ConsolePause>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <ConsolePause>false</ConsolePause>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ </PropertyGroup>
+ <ItemGroup>
+ <Compile Include="MyClass.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project> \ No newline at end of file
diff --git a/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp.mds b/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp.mds
deleted file mode 100644
index 6dd5e4365a..0000000000
--- a/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp.mds
+++ /dev/null
@@ -1,16 +0,0 @@
-<Combine name="csharp-console-mdp" fileversion="2.0">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="CombineConfiguration">
- <Entry build="True" name="csharp-console-mdp" configuration="Debug" />
- </Configuration>
- <Configuration name="Release" ctype="CombineConfiguration">
- <Entry build="True" name="csharp-console-mdp" configuration="Release2" />
- </Configuration>
- </Configurations>
- <StartMode startupentry="csharp-console-mdp" single="True">
- <Execute type="None" entry="csharp-console-mdp" />
- </StartMode>
- <Entries>
- <Entry filename="csharp-console-mdp/csharp-console-mdp.mdp" />
- </Entries>
-</Combine>
diff --git a/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/Program.cs b/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/Program.cs
deleted file mode 100644
index 09eae37e01..0000000000
--- a/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/Program.cs
+++ /dev/null
@@ -1,38 +0,0 @@
-// Main.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-using System;
-
-namespace csharpconsolemdp
-{
- class MainClass
- {
- public static void Main(string[] args)
- {
- Console.WriteLine("Hello World!");
- }
- }
-} \ No newline at end of file
diff --git a/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/Properties/AssemblyInfo.cs b/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/Properties/AssemblyInfo.cs
deleted file mode 100644
index 485d8e4840..0000000000
--- a/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-// AssemblyInfo.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-using System.Reflection;
-using System.Runtime.CompilerServices;
-
-// Information about this assembly is defined by the following attributes.
-// Change them to the values specific to your project.
-
-[assembly: AssemblyTitle("csharp-console-mdp")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("")]
-[assembly: AssemblyCopyright("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
-// If the build and revision are set to '*' they will be updated automatically.
-
-[assembly: AssemblyVersion("1.0.*")]
-
-// The following attributes are used to specify the signing key for the assembly,
-// if desired. See the Mono documentation for more information about signing.
-
-[assembly: AssemblyDelaySign(false)]
-[assembly: AssemblyKeyFile("")]
diff --git a/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/csharp-console-mdp.mdp b/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/csharp-console-mdp.mdp
deleted file mode 100644
index c6327edecc..0000000000
--- a/main/tests/test-projects/csharp-console-mdp/csharp-console-mdp/csharp-console-mdp.mdp
+++ /dev/null
@@ -1,23 +0,0 @@
-<Project name="csharp-console-mdp" DefaultNamespace="csharpconsolemdp" fileversion="2.0" language="C#" targetFramework="2.0" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="csharp-console-mdp" />
- <Build debugmode="True" target="Exe" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" definesymbols="DEBUG" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release2" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="csharp-console-mdp" />
- <Build debugmode="False" target="Exe" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="True" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="Program.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Package" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/csharp-console/csharp-console.sln b/main/tests/test-projects/csharp-console/csharp-console.sln
new file mode 100644
index 0000000000..f7ac137a24
--- /dev/null
+++ b/main/tests/test-projects/csharp-console/csharp-console.sln
@@ -0,0 +1,21 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "csharp-console", "csharp-console\csharp-console.csproj", "{032D1E66-A1E8-4585-AE76-020A22C74101}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {032D1E66-A1E8-4585-AE76-020A22C74101}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {032D1E66-A1E8-4585-AE76-020A22C74101}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {032D1E66-A1E8-4585-AE76-020A22C74101}.Release|Any CPU.ActiveCfg = Release2|Any CPU
+ {032D1E66-A1E8-4585-AE76-020A22C74101}.Release|Any CPU.Build.0 = Release2|Any CPU
+ EndGlobalSection
+ GlobalSection(MonoDevelopProperties) = preSolution
+ StartupItem = csharp-console\csharp-console.csproj
+ name = csharp-console
+ EndGlobalSection
+EndGlobal
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/console-project2/Program.cs b/main/tests/test-projects/csharp-console/csharp-console/Program.cs
index 30bd9dd4d0..be56f439a9 100644
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/console-project2/Program.cs
+++ b/main/tests/test-projects/csharp-console/csharp-console/Program.cs
@@ -26,7 +26,7 @@
//
using System;
-namespace consoleproject2
+namespace csharpconsolep
{
class MainClass
{
@@ -35,4 +35,4 @@ namespace consoleproject2
Console.WriteLine("Hello World!");
}
}
-} \ No newline at end of file
+}
diff --git a/main/tests/test-projects/console-with-libs-mdp/library1/Properties/AssemblyInfo.cs b/main/tests/test-projects/csharp-console/csharp-console/Properties/AssemblyInfo.cs
index b1831917cf..a064a6d1a4 100644
--- a/main/tests/test-projects/console-with-libs-mdp/library1/Properties/AssemblyInfo.cs
+++ b/main/tests/test-projects/csharp-console/csharp-console/Properties/AssemblyInfo.cs
@@ -27,10 +27,10 @@
using System.Reflection;
using System.Runtime.CompilerServices;
-// Information about this assembly is defined by the following attributes.
+// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
-[assembly: AssemblyTitle("library1")]
+[assembly: AssemblyTitle("csharp-console")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
@@ -44,7 +44,7 @@ using System.Runtime.CompilerServices;
[assembly: AssemblyVersion("1.0.*")]
-// The following attributes are used to specify the signing key for the assembly,
+// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
[assembly: AssemblyDelaySign(false)]
diff --git a/main/tests/test-projects/csharp-console/csharp-console/csharp-console.csproj b/main/tests/test-projects/csharp-console/csharp-console/csharp-console.csproj
new file mode 100644
index 0000000000..98ca86af0f
--- /dev/null
+++ b/main/tests/test-projects/csharp-console/csharp-console/csharp-console.csproj
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>10.0.0</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{032D1E66-A1E8-4585-AE76-020A22C74101}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <RootNamespace>csharpconsole</RootNamespace>
+ <AssemblyName>csharp-consolep</AssemblyName>
+ <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Debug</OutputPath>
+ <DefineConstants>DEBUG</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release2|AnyCPU' ">
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+ </PropertyGroup>
+ <ItemGroup>
+ <Compile Include="Program.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project>
diff --git a/main/tests/test-projects/generated-console-project/TestProject.csproj b/main/tests/test-projects/generated-console-project/TestProject.csproj
index 5e74648379..0a7c6fc6fa 100644
--- a/main/tests/test-projects/generated-console-project/TestProject.csproj
+++ b/main/tests/test-projects/generated-console-project/TestProject.csproj
@@ -1,13 +1,15 @@
-<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build">
+<?xml version="1.0" encoding="utf-8"?>
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build" ToolsVersion="4.0">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <ProductVersion>8.0.50727</ProductVersion>
+ <ProductVersion>10.0.0</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
- <ProjectGuid>{DC577202-654B-4FDB-95C7-8CC5DDF6D32D}</ProjectGuid>
+ <ProjectGuid>{969F05E2-0E79-4C5B-982C-8F3DD4D46311}</ProjectGuid>
<OutputType>Exe</OutputType>
<RootNamespace>TestProject</RootNamespace>
<AssemblyName>TestProject</AssemblyName>
+ <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
@@ -40,7 +42,7 @@
<ItemGroup>
<Content Include="Excluded.xml" />
<Content Include="Copy.xml">
- <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+ <CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
diff --git a/main/tests/test-projects/generated-console-project/TestProject.mdp b/main/tests/test-projects/generated-console-project/TestProject.mdp
deleted file mode 100644
index 2e628baeee..0000000000
--- a/main/tests/test-projects/generated-console-project/TestProject.mdp
+++ /dev/null
@@ -1,28 +0,0 @@
-<Project name="TestProject" fileversion="2.0" language="C#" targetFramework="2.0" DefaultNamespace="TestProject" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="TestProject" />
- <Build debugmode="True" target="Exe" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG;TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="TestProject" />
- <Build debugmode="False" target="Exe" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="Program.cs" subtype="Code" buildaction="Compile" />
- <File name="Resource.xml" resource_id="TestProject.Resource.xml" subtype="Code" buildaction="EmbedAsResource" />
- <File name="Excluded.xml" subtype="Code" buildaction="Exclude" />
- <File name="Copy.xml" subtype="Code" buildaction="FileCopy" />
- <File name="Nothing.xml" subtype="Code" buildaction="Nothing" />
- </Contents>
- <References>
- <ProjectReference type="Package" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <ProjectReference type="Package" localcopy="True" refto="System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <ProjectReference type="Package" localcopy="True" refto="System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/generated-console-project/TestSolution.mds b/main/tests/test-projects/generated-console-project/TestSolution.mds
deleted file mode 100644
index 2b73c9e88e..0000000000
--- a/main/tests/test-projects/generated-console-project/TestSolution.mds
+++ /dev/null
@@ -1,16 +0,0 @@
-<Combine fileversion="2.0">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="CombineConfiguration">
- <Entry build="True" name="TestProject" configuration="Debug" />
- </Configuration>
- <Configuration name="Release" ctype="CombineConfiguration">
- <Entry build="True" name="TestProject" configuration="Release" />
- </Configuration>
- </Configurations>
- <StartMode startupentry="TestProject" single="True">
- <Execute type="None" entry="TestProject" />
- </StartMode>
- <Entries>
- <Entry filename="TestProject.mdp" />
- </Entries>
-</Combine>
diff --git a/main/tests/test-projects/generated-console-project/TestSolution.sln b/main/tests/test-projects/generated-console-project/TestSolution.sln
index bda18e537c..3af6b2e2a1 100644
--- a/main/tests/test-projects/generated-console-project/TestSolution.sln
+++ b/main/tests/test-projects/generated-console-project/TestSolution.sln
@@ -1,7 +1,7 @@

-Microsoft Visual Studio Solution File, Format Version 9.00
-# Visual Studio 2005
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestProject", "TestProject.csproj", "{DC577202-654B-4FDB-95C7-8CC5DDF6D32D}"
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestProject", "TestProject.csproj", "{969F05E2-0E79-4C5B-982C-8F3DD4D46311}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -9,10 +9,10 @@ Global
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {DC577202-654B-4FDB-95C7-8CC5DDF6D32D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {DC577202-654B-4FDB-95C7-8CC5DDF6D32D}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {DC577202-654B-4FDB-95C7-8CC5DDF6D32D}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {DC577202-654B-4FDB-95C7-8CC5DDF6D32D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {969F05E2-0E79-4C5B-982C-8F3DD4D46311}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {969F05E2-0E79-4C5B-982C-8F3DD4D46311}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {969F05E2-0E79-4C5B-982C-8F3DD4D46311}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {969F05E2-0E79-4C5B-982C-8F3DD4D46311}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(MonoDevelopProperties) = preSolution
StartupItem = TestProject.csproj
diff --git a/main/tests/test-projects/local-copy-package/ConsoleProject.sln b/main/tests/test-projects/local-copy-package/ConsoleProject.sln
new file mode 100644
index 0000000000..9d422c01b3
--- /dev/null
+++ b/main/tests/test-projects/local-copy-package/ConsoleProject.sln
@@ -0,0 +1,29 @@
+
+Microsoft Visual Studio Solution File, Format Version 9.00
+# Visual Studio 2005
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConsoleProject", "ConsoleProject\ConsoleProject.csproj", "{4A9E3523-48F0-4BDF-A0F4-49DAD4431FAB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LibProject", "LibProject\LibProject.csproj", "{9A68261C-9BAC-4FEB-93FD-9FEB9243CF4A}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {4A9E3523-48F0-4BDF-A0F4-49DAD4431FAB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4A9E3523-48F0-4BDF-A0F4-49DAD4431FAB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4A9E3523-48F0-4BDF-A0F4-49DAD4431FAB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4A9E3523-48F0-4BDF-A0F4-49DAD4431FAB}.Release|Any CPU.Build.0 = Release|Any CPU
+ {9A68261C-9BAC-4FEB-93FD-9FEB9243CF4A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {9A68261C-9BAC-4FEB-93FD-9FEB9243CF4A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {9A68261C-9BAC-4FEB-93FD-9FEB9243CF4A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {9A68261C-9BAC-4FEB-93FD-9FEB9243CF4A}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(MonoDevelopProperties) = preSolution
+ StartupItem = ConsoleProject\ConsoleProject.csproj
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/main/tests/test-projects/local-copy-package/ConsoleProject/ConsoleProject.csproj b/main/tests/test-projects/local-copy-package/ConsoleProject/ConsoleProject.csproj
new file mode 100644
index 0000000000..7cb791baa5
--- /dev/null
+++ b/main/tests/test-projects/local-copy-package/ConsoleProject/ConsoleProject.csproj
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>8.0.50727</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{4A9E3523-48F0-4BDF-A0F4-49DAD4431FAB}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>ConsoleProject</RootNamespace>
+ <AssemblyName>ConsoleProject</AssemblyName>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>True</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>False</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>True</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ <Reference Include="gtk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <Private>False</Private>
+ </Reference>
+ <Reference Include="Xwt">
+ <HintPath>..\..\..\..\build\bin\Xwt.dll</HintPath>
+ </Reference>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Program.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+ <ItemGroup>
+ <ProjectReference Include="..\LibProject\LibProject.csproj">
+ <Project>{9A68261C-9BAC-4FEB-93FD-9FEB9243CF4A}</Project>
+ <Name>LibProject</Name>
+ </ProjectReference>
+ </ItemGroup>
+</Project>
diff --git a/main/tests/test-projects/local-copy-package/ConsoleProject/ConsoleProject.csproj.saved b/main/tests/test-projects/local-copy-package/ConsoleProject/ConsoleProject.csproj.saved
new file mode 100644
index 0000000000..c415b7277e
--- /dev/null
+++ b/main/tests/test-projects/local-copy-package/ConsoleProject/ConsoleProject.csproj.saved
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>8.0.50727</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{4A9E3523-48F0-4BDF-A0F4-49DAD4431FAB}</ProjectGuid>
+ <OutputType>Exe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>ConsoleProject</RootNamespace>
+ <AssemblyName>ConsoleProject</AssemblyName>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>True</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>False</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>True</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ <Reference Include="System.Data">
+ <Private>True</Private>
+ </Reference>
+ <Reference Include="System.Xml" />
+ <Reference Include="gtk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f">
+ <Private>True</Private>
+ </Reference>
+ <Reference Include="Xwt">
+ <HintPath>..\..\..\..\build\bin\Xwt.dll</HintPath>
+ <Private>False</Private>
+ </Reference>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="Program.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+ <ItemGroup>
+ <ProjectReference Include="..\LibProject\LibProject.csproj">
+ <Project>{9A68261C-9BAC-4FEB-93FD-9FEB9243CF4A}</Project>
+ <Name>LibProject</Name>
+ <Private>False</Private>
+ </ProjectReference>
+ </ItemGroup>
+</Project>
diff --git a/main/tests/test-projects/local-copy-package/ConsoleProject/Program.cs b/main/tests/test-projects/local-copy-package/ConsoleProject/Program.cs
new file mode 100755
index 0000000000..cd4be63967
--- /dev/null
+++ b/main/tests/test-projects/local-copy-package/ConsoleProject/Program.cs
@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace ConsoleProject
+{
+ class Program
+ {
+ static void Main (string[] args)
+ {
+ Console.WriteLine ("Hello world");
+ }
+ }
+}
diff --git a/main/tests/test-projects/local-copy-package/ConsoleProject/Properties/AssemblyInfo.cs b/main/tests/test-projects/local-copy-package/ConsoleProject/Properties/AssemblyInfo.cs
new file mode 100755
index 0000000000..be1e50670d
--- /dev/null
+++ b/main/tests/test-projects/local-copy-package/ConsoleProject/Properties/AssemblyInfo.cs
@@ -0,0 +1,33 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle ("ConsoleProject")]
+[assembly: AssemblyDescription ("")]
+[assembly: AssemblyConfiguration ("")]
+[assembly: AssemblyCompany ("")]
+[assembly: AssemblyProduct ("ConsoleProject")]
+[assembly: AssemblyCopyright ("Copyright © 2008")]
+[assembly: AssemblyTrademark ("")]
+[assembly: AssemblyCulture ("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible (false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid ("a1b85c5f-e506-462a-911c-cbe67c035c93")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+[assembly: AssemblyVersion ("1.0.0.0")]
+[assembly: AssemblyFileVersion ("1.0.0.0")]
diff --git a/main/tests/test-projects/local-copy-package/LibProject/LibProject.csproj b/main/tests/test-projects/local-copy-package/LibProject/LibProject.csproj
new file mode 100644
index 0000000000..23abab10a1
--- /dev/null
+++ b/main/tests/test-projects/local-copy-package/LibProject/LibProject.csproj
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>8.0.50727</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{9A68261C-9BAC-4FEB-93FD-9FEB9243CF4A}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <RootNamespace>LibProject</RootNamespace>
+ <AssemblyName>LibProject</AssemblyName>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug</OutputPath>
+ <DefineConstants>DEBUG;</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <ConsolePause>false</ConsolePause>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>full</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <ConsolePause>false</ConsolePause>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="MyClass.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project> \ No newline at end of file
diff --git a/main/tests/test-projects/local-copy-package/LibProject/MyClass.cs b/main/tests/test-projects/local-copy-package/LibProject/MyClass.cs
new file mode 100644
index 0000000000..76a5c74a22
--- /dev/null
+++ b/main/tests/test-projects/local-copy-package/LibProject/MyClass.cs
@@ -0,0 +1,12 @@
+using System;
+
+namespace LibProject
+{
+ public class MyClass
+ {
+ public MyClass ()
+ {
+ }
+ }
+}
+
diff --git a/main/tests/test-projects/local-copy-package/LibProject/Properties/AssemblyInfo.cs b/main/tests/test-projects/local-copy-package/LibProject/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000000..9151444cd5
--- /dev/null
+++ b/main/tests/test-projects/local-copy-package/LibProject/Properties/AssemblyInfo.cs
@@ -0,0 +1,22 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+// Information about this assembly is defined by the following attributes.
+// Change them to the values specific to your project.
+[assembly: AssemblyTitle ("LibProject")]
+[assembly: AssemblyDescription ("")]
+[assembly: AssemblyConfiguration ("")]
+[assembly: AssemblyCompany ("")]
+[assembly: AssemblyProduct ("")]
+[assembly: AssemblyCopyright ("Xamarin Inc.")]
+[assembly: AssemblyTrademark ("")]
+[assembly: AssemblyCulture ("")]
+// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
+// The form "{Major}.{Minor}.*" will automatically update the build and revision,
+// and "{Major}.{Minor}.{Build}.*" will update just the revision.
+[assembly: AssemblyVersion ("1.0.*")]
+// The following attributes are used to specify the signing key for the assembly,
+// if desired. See the Mono documentation for more information about signing.
+//[assembly: AssemblyDelaySign(false)]
+//[assembly: AssemblyKeyFile("")]
+
diff --git a/main/tests/test-projects/nested-solutions-mdp/console-project/console-project.mdp b/main/tests/test-projects/nested-solutions-mdp/console-project/console-project.mdp
deleted file mode 100644
index 881a0c88b7..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/console-project/console-project.mdp
+++ /dev/null
@@ -1,27 +0,0 @@
-<Project name="console-project" fileversion="2.0" language="C#" targetFramework="2.0" DefaultNamespace="console-project" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="console-project" />
- <Build debugmode="True" target="Exe" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG;TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="console-project" />
- <Build debugmode="False" target="Exe" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="Program.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Package" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <ProjectReference type="Project" localcopy="True" refto="library1" />
- <ProjectReference type="Project" localcopy="True" refto="library2" />
- <ProjectReference type="Project" localcopy="True" refto="library3" />
- <ProjectReference type="Project" localcopy="True" refto="library4" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library1/library1.mdp b/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library1/library1.mdp
deleted file mode 100644
index 000515d02e..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library1/library1.mdp
+++ /dev/null
@@ -1,23 +0,0 @@
-<Project name="library1" fileversion="2.0" language="C#" targetFramework="2.0" DefaultNamespace="library1" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="library1" />
- <Build debugmode="True" target="Library" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG;TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="library1" />
- <Build debugmode="False" target="Library" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="MyClass.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Package" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library2/MyClass.cs b/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library2/MyClass.cs
deleted file mode 100644
index aaa2d5fc23..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library2/MyClass.cs
+++ /dev/null
@@ -1,41 +0,0 @@
-// MyClass.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-
-namespace library2
-{
-
-
- public class MyClass
- {
-
- public MyClass()
- {
- }
- }
-}
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library2/library2.mdp b/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library2/library2.mdp
deleted file mode 100644
index 5310452395..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/library2/library2.mdp
+++ /dev/null
@@ -1,23 +0,0 @@
-<Project name="library2" fileversion="2.0" language="C#" targetFramework="2.0" DefaultNamespace="library2" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="library2" />
- <Build debugmode="True" target="Library" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG;TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="library2" />
- <Build debugmode="False" target="Library" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="MyClass.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Package" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/nested-solution1.mds b/main/tests/test-projects/nested-solutions-mdp/nested-solution1/nested-solution1.mds
deleted file mode 100644
index 6e0b7f9895..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution1/nested-solution1.mds
+++ /dev/null
@@ -1,20 +0,0 @@
-<Combine name="nested-solution1" fileversion="2.0">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="CombineConfiguration">
- <Entry build="True" name="library1" configuration="Debug" />
- <Entry build="True" name="library2" configuration="Debug" />
- </Configuration>
- <Configuration name="Release" ctype="CombineConfiguration">
- <Entry build="True" name="library1" configuration="Release" />
- <Entry build="True" name="library2" configuration="Release" />
- </Configuration>
- </Configurations>
- <StartMode startupentry="library1" single="True">
- <Execute type="None" entry="library1" />
- <Execute type="None" entry="library2" />
- </StartMode>
- <Entries>
- <Entry filename="library1/library1.mdp" />
- <Entry filename="library2/library2.mdp" />
- </Entries>
-</Combine> \ No newline at end of file
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/console-project2/Properties/AssemblyInfo.cs b/main/tests/test-projects/nested-solutions-mdp/nested-solution2/console-project2/Properties/AssemblyInfo.cs
deleted file mode 100644
index e03ce1b9ca..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/console-project2/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-// AssemblyInfo.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-using System.Reflection;
-using System.Runtime.CompilerServices;
-
-// Information about this assembly is defined by the following attributes.
-// Change them to the values specific to your project.
-
-[assembly: AssemblyTitle("console-project2")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("")]
-[assembly: AssemblyCopyright("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
-// If the build and revision are set to '*' they will be updated automatically.
-
-[assembly: AssemblyVersion("1.0.*")]
-
-// The following attributes are used to specify the signing key for the assembly,
-// if desired. See the Mono documentation for more information about signing.
-
-[assembly: AssemblyDelaySign(false)]
-[assembly: AssemblyKeyFile("")]
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/console-project2/console-project2.mdp b/main/tests/test-projects/nested-solutions-mdp/nested-solution2/console-project2/console-project2.mdp
deleted file mode 100644
index 0eec311cf8..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/console-project2/console-project2.mdp
+++ /dev/null
@@ -1,25 +0,0 @@
-<Project name="console-project2" fileversion="2.0" language="C#" targetFramework="2.0" DefaultNamespace="console-project2" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="console-project2" />
- <Build debugmode="True" target="Exe" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG;TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="console-project2" />
- <Build debugmode="False" target="Exe" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="Program.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Package" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <ProjectReference type="Project" localcopy="True" refto="library3" />
- <ProjectReference type="Project" localcopy="True" refto="library4" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution2.mds b/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution2.mds
deleted file mode 100644
index 5ef6d472ec..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution2.mds
+++ /dev/null
@@ -1,20 +0,0 @@
-<Combine name="nested-solution2" fileversion="2.0">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="CombineConfiguration">
- <Entry build="True" name="nested-solution3" configuration="Debug" />
- <Entry build="True" name="console-project2" configuration="Debug" />
- </Configuration>
- <Configuration name="Release" ctype="CombineConfiguration">
- <Entry build="True" name="nested-solution3" configuration="Release" />
- <Entry build="True" name="console-project2" configuration="Release" />
- </Configuration>
- </Configurations>
- <StartMode startupentry="nested-solution3" single="True">
- <Execute type="None" entry="nested-solution3" />
- <Execute type="None" entry="console-project2" />
- </StartMode>
- <Entries>
- <Entry filename="nested-solution3/nested-solution3.mds" />
- <Entry filename="console-project2/console-project2.mdp" />
- </Entries>
-</Combine>
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/MyClass.cs b/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/MyClass.cs
deleted file mode 100644
index 1007a5405d..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/MyClass.cs
+++ /dev/null
@@ -1,41 +0,0 @@
-// MyClass.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-
-namespace library3
-{
-
-
- public class MyClass
- {
-
- public MyClass()
- {
- }
- }
-}
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/Properties/AssemblyInfo.cs b/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/Properties/AssemblyInfo.cs
deleted file mode 100644
index 7cd0a3327b..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-// AssemblyInfo.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-using System.Reflection;
-using System.Runtime.CompilerServices;
-
-// Information about this assembly is defined by the following attributes.
-// Change them to the values specific to your project.
-
-[assembly: AssemblyTitle("library3")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("")]
-[assembly: AssemblyCopyright("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
-// If the build and revision are set to '*' they will be updated automatically.
-
-[assembly: AssemblyVersion("1.0.*")]
-
-// The following attributes are used to specify the signing key for the assembly,
-// if desired. See the Mono documentation for more information about signing.
-
-[assembly: AssemblyDelaySign(false)]
-[assembly: AssemblyKeyFile("")]
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/library3.mdp b/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/library3.mdp
deleted file mode 100644
index f1411c5c5b..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library3/library3.mdp
+++ /dev/null
@@ -1,23 +0,0 @@
-<Project name="library3" fileversion="2.0" language="C#" targetFramework="2.0" DefaultNamespace="library3" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="library3" />
- <Build debugmode="True" target="Library" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG;TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="library3" />
- <Build debugmode="False" target="Library" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="MyClass.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Package" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/MyClass.cs b/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/MyClass.cs
deleted file mode 100644
index 5039fe40c8..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/MyClass.cs
+++ /dev/null
@@ -1,41 +0,0 @@
-// MyClass.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-
-using System;
-
-namespace library4
-{
-
-
- public class MyClass
- {
-
- public MyClass()
- {
- }
- }
-}
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/Properties/AssemblyInfo.cs b/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/Properties/AssemblyInfo.cs
deleted file mode 100644
index 3ea53d634d..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-// AssemblyInfo.cs
-//
-// Author:
-// Lluis Sanchez Gual <lluis@novell.com>
-//
-// Copyright (c) 2008 Novell, Inc (http://www.novell.com)
-//
-// Permission is hereby granted, free of charge, to any person obtaining a copy
-// of this software and associated documentation files (the "Software"), to deal
-// in the Software without restriction, including without limitation the rights
-// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the Software is
-// furnished to do so, subject to the following conditions:
-//
-// The above copyright notice and this permission notice shall be included in
-// all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-// THE SOFTWARE.
-//
-//
-using System.Reflection;
-using System.Runtime.CompilerServices;
-
-// Information about this assembly is defined by the following attributes.
-// Change them to the values specific to your project.
-
-[assembly: AssemblyTitle("library4")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("")]
-[assembly: AssemblyCopyright("")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
-// If the build and revision are set to '*' they will be updated automatically.
-
-[assembly: AssemblyVersion("1.0.*")]
-
-// The following attributes are used to specify the signing key for the assembly,
-// if desired. See the Mono documentation for more information about signing.
-
-[assembly: AssemblyDelaySign(false)]
-[assembly: AssemblyKeyFile("")]
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/library4.mdp b/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/library4.mdp
deleted file mode 100644
index e0b90960c9..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/library4/library4.mdp
+++ /dev/null
@@ -1,23 +0,0 @@
-<Project name="library4" fileversion="2.0" language="C#" targetFramework="2.0" DefaultNamespace="library4" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="library4" />
- <Build debugmode="True" target="Library" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG;TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="library4" />
- <Build debugmode="False" target="Library" />
- <Execution runwithwarnings="True" consolepause="True" runtime="MsNet" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="True" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="TRACE" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="MyClass.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Package" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/nested-solution3.mds b/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/nested-solution3.mds
deleted file mode 100644
index 40431942bc..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solution2/nested-solution3/nested-solution3.mds
+++ /dev/null
@@ -1,20 +0,0 @@
-<Combine name="nested-solution3" fileversion="2.0">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="CombineConfiguration">
- <Entry build="True" name="library3" configuration="Debug" />
- <Entry build="True" name="library4" configuration="Debug" />
- </Configuration>
- <Configuration name="Release" ctype="CombineConfiguration">
- <Entry build="True" name="library3" configuration="Release" />
- <Entry build="True" name="library4" configuration="Release" />
- </Configuration>
- </Configurations>
- <StartMode startupentry="library3" single="True">
- <Execute type="None" entry="library3" />
- <Execute type="None" entry="library4" />
- </StartMode>
- <Entries>
- <Entry filename="library3/library3.mdp" />
- <Entry filename="library4/library4.mdp" />
- </Entries>
-</Combine> \ No newline at end of file
diff --git a/main/tests/test-projects/nested-solutions-mdp/nested-solutions-mdp.mds b/main/tests/test-projects/nested-solutions-mdp/nested-solutions-mdp.mds
deleted file mode 100644
index 75465b2008..0000000000
--- a/main/tests/test-projects/nested-solutions-mdp/nested-solutions-mdp.mds
+++ /dev/null
@@ -1,24 +0,0 @@
-<Combine name="nested-solutions-mdp" fileversion="2.0">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="CombineConfiguration">
- <Entry build="True" name="console-project" configuration="Debug" />
- <Entry build="True" name="nested-solution1" configuration="Debug" />
- <Entry build="True" name="nested-solution2" configuration="Debug" />
- </Configuration>
- <Configuration name="Release" ctype="CombineConfiguration">
- <Entry build="True" name="console-project" configuration="Release" />
- <Entry build="True" name="nested-solution1" configuration="Release" />
- <Entry build="True" name="nested-solution2" configuration="Release" />
- </Configuration>
- </Configurations>
- <StartMode startupentry="console-project" single="True">
- <Execute type="None" entry="console-project" />
- <Execute type="None" entry="nested-solution1" />
- <Execute type="None" entry="nested-solution2" />
- </StartMode>
- <Entries>
- <Entry filename="console-project/console-project.mdp" />
- <Entry filename="nested-solution1/nested-solution1.mds" />
- <Entry filename="nested-solution2/nested-solution2.mds" />
- </Entries>
-</Combine>
diff --git a/main/tests/test-projects/nunit-assembly-group/nunit-assembly-group.md-nunit b/main/tests/test-projects/nunit-assembly-group/nunit-assembly-group.md-nunit
deleted file mode 100644
index e8bf3a875e..0000000000
--- a/main/tests/test-projects/nunit-assembly-group/nunit-assembly-group.md-nunit
+++ /dev/null
@@ -1,9 +0,0 @@
-<NUnitAssemblyGroupProject name="nunit-assembly-group" fileversion="2.0">
- <Configurations active="Default">
- <Configuration name="Default" ctype="NUnitAssemblyGroupProjectConfiguration">
- <Assemblies>
- <Assembly Path="/home/lluis/work/mdnou/main/build/bin/UnitTests.dll" />
- </Assemblies>
- </Configuration>
- </Configurations>
-</NUnitAssemblyGroupProject> \ No newline at end of file
diff --git a/main/tests/test-projects/nunit-assembly-group/nunit-assembly-group.mds b/main/tests/test-projects/nunit-assembly-group/nunit-assembly-group.mds
deleted file mode 100644
index d15fac9663..0000000000
--- a/main/tests/test-projects/nunit-assembly-group/nunit-assembly-group.mds
+++ /dev/null
@@ -1,13 +0,0 @@
-<Combine name="nunit-assembly-group" fileversion="2.0">
- <Configurations active="Default">
- <Configuration name="Default" ctype="CombineConfiguration">
- <Entry build="True" name="nunit-assembly-group" configuration="Default" />
- </Configuration>
- </Configurations>
- <StartMode startupentry="nunit-assembly-group" single="True">
- <Execute type="None" entry="nunit-assembly-group" />
- </StartMode>
- <Entries>
- <Entry filename="nunit-assembly-group.md-nunit" />
- </Entries>
-</Combine> \ No newline at end of file
diff --git a/main/tests/test-projects/test-build-configs/Lib1/Lib1.csproj b/main/tests/test-projects/test-build-configs/Lib1/Lib1.csproj
new file mode 100644
index 0000000000..b9ee79e647
--- /dev/null
+++ b/main/tests/test-projects/test-build-configs/Lib1/Lib1.csproj
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>10.0.0</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{DAE0F5D0-50B0-4238-8FBA-46DE5F4D6284}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AssemblyName>Lib1</AssemblyName>
+ <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug</OutputPath>
+ <DefineConstants>DEBUG</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <ConsolePause>false</ConsolePause>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Release</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <ConsolePause>false</ConsolePause>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ </PropertyGroup>
+ <ItemGroup>
+ <Compile Include="MyClass.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\Lib2\Lib2.csproj">
+ <Project>{33FD65CB-FF5C-4B8D-BDBE-1326D2688B16}</Project>
+ <Name>Lib2</Name>
+ </ProjectReference>
+ <ProjectReference Include="..\Lib3\Lib3.csproj">
+ <Project>{D4A08E68-9AFC-4E6E-912B-7BACE81B586E}</Project>
+ <Name>Lib3</Name>
+ </ProjectReference>
+ <ProjectReference Include="..\Lib4\Lib4.csproj">
+ <Project>{ED11EE6A-C2E6-4909-97C0-4C817445D34B}</Project>
+ <Name>Lib4</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project> \ No newline at end of file
diff --git a/main/tests/test-projects/test-build-configs/Lib1/Lib1.mdp b/main/tests/test-projects/test-build-configs/Lib1/Lib1.mdp
deleted file mode 100644
index 746b43c2cc..0000000000
--- a/main/tests/test-projects/test-build-configs/Lib1/Lib1.mdp
+++ /dev/null
@@ -1,26 +0,0 @@
-<Project name="Lib1" fileversion="2.0" language="C#" clr-version="Net_2_0" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="Lib1" />
- <Build debugmode="True" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="Lib1" />
- <Build debugmode="False" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="MyClass.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- <ProjectReference type="Project" localcopy="True" refto="Lib2" />
- <ProjectReference type="Project" localcopy="True" refto="Lib3" />
- <ProjectReference type="Project" localcopy="True" refto="Lib4" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/test-build-configs/Lib2/Lib2.csproj b/main/tests/test-projects/test-build-configs/Lib2/Lib2.csproj
new file mode 100644
index 0000000000..6035f205fd
--- /dev/null
+++ b/main/tests/test-projects/test-build-configs/Lib2/Lib2.csproj
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>10.0.0</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{33FD65CB-FF5C-4B8D-BDBE-1326D2688B16}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AssemblyName>Lib2</AssemblyName>
+ <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug</OutputPath>
+ <DefineConstants>DEBUG</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <ConsolePause>false</ConsolePause>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Release</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <ConsolePause>false</ConsolePause>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ </PropertyGroup>
+ <ItemGroup>
+ <Compile Include="MyClass.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project> \ No newline at end of file
diff --git a/main/tests/test-projects/test-build-configs/Lib2/Lib2.mdp b/main/tests/test-projects/test-build-configs/Lib2/Lib2.mdp
deleted file mode 100644
index e9454efb25..0000000000
--- a/main/tests/test-projects/test-build-configs/Lib2/Lib2.mdp
+++ /dev/null
@@ -1,23 +0,0 @@
-<Project name="Lib2" fileversion="2.0" language="C#" clr-version="Net_2_0" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="Lib2" />
- <Build debugmode="True" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="Lib2" />
- <Build debugmode="False" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="MyClass.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/test-build-configs/Lib3/Lib3.csproj b/main/tests/test-projects/test-build-configs/Lib3/Lib3.csproj
new file mode 100644
index 0000000000..694d9bf0f5
--- /dev/null
+++ b/main/tests/test-projects/test-build-configs/Lib3/Lib3.csproj
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug+Extra</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>10.0.0</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{D4A08E68-9AFC-4E6E-912B-7BACE81B586E}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AssemblyName>Lib3</AssemblyName>
+ <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug+Extra|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\DebugExtra</OutputPath>
+ <DefineConstants>DEBUG</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <ConsolePause>false</ConsolePause>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release+Extra|AnyCPU' ">
+ <Optimize>false</Optimize>
+ <OutputPath>bin\ReleaseExtra</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <ConsolePause>false</ConsolePause>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ </PropertyGroup>
+ <ItemGroup>
+ <Compile Include="MyClass.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project> \ No newline at end of file
diff --git a/main/tests/test-projects/test-build-configs/Lib3/Lib3.mdp b/main/tests/test-projects/test-build-configs/Lib3/Lib3.mdp
deleted file mode 100644
index 5fe9922ee0..0000000000
--- a/main/tests/test-projects/test-build-configs/Lib3/Lib3.mdp
+++ /dev/null
@@ -1,23 +0,0 @@
-<Project name="Lib3" fileversion="2.0" language="C#" clr-version="Net_2_0" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug+Extra" ctype="DotNetProjectConfiguration">
- <Output directory="bin/DebugExtra" assembly="Lib3" />
- <Build debugmode="True" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release+Extra" ctype="DotNetProjectConfiguration">
- <Output directory="bin/ReleaseExtra" assembly="Lib3" />
- <Build debugmode="False" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="MyClass.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/test-build-configs/Lib4/Lib4.csproj b/main/tests/test-projects/test-build-configs/Lib4/Lib4.csproj
new file mode 100644
index 0000000000..ee77f0b07a
--- /dev/null
+++ b/main/tests/test-projects/test-build-configs/Lib4/Lib4.csproj
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>10.0.0</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{ED11EE6A-C2E6-4909-97C0-4C817445D34B}</ProjectGuid>
+ <OutputType>Library</OutputType>
+ <AssemblyName>Lib4</AssemblyName>
+ <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug</OutputPath>
+ <DefineConstants>DEBUG</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ <ConsolePause>false</ConsolePause>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Release</OutputPath>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ <ConsolePause>false</ConsolePause>
+ <Execution>
+ <Execution clr-version="Net_2_0" xmlns="" />
+ </Execution>
+ </PropertyGroup>
+ <ItemGroup>
+ <Compile Include="MyClass.cs" />
+ <Compile Include="Properties\AssemblyInfo.cs" />
+ </ItemGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+</Project> \ No newline at end of file
diff --git a/main/tests/test-projects/test-build-configs/Lib4/Lib4.mdp b/main/tests/test-projects/test-build-configs/Lib4/Lib4.mdp
deleted file mode 100644
index 228e384574..0000000000
--- a/main/tests/test-projects/test-build-configs/Lib4/Lib4.mdp
+++ /dev/null
@@ -1,23 +0,0 @@
-<Project name="Lib4" fileversion="2.0" language="C#" clr-version="Net_2_0" ctype="DotNetProject">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Debug" assembly="Lib4" />
- <Build debugmode="True" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG" ctype="CSharpCompilerParameters" />
- </Configuration>
- <Configuration name="Release" ctype="DotNetProjectConfiguration">
- <Output directory="bin/Release" assembly="Lib4" />
- <Build debugmode="False" target="Library" />
- <Execution runwithwarnings="True" consolepause="False" runtime="MsNet" clr-version="Net_2_0" />
- <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" ctype="CSharpCompilerParameters" />
- </Configuration>
- </Configurations>
- <Contents>
- <File name="MyClass.cs" subtype="Code" buildaction="Compile" />
- <File name="Properties/AssemblyInfo.cs" subtype="Code" buildaction="Compile" />
- </Contents>
- <References>
- <ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
- </References>
-</Project>
diff --git a/main/tests/test-projects/test-build-configs/test-build-configs.mds b/main/tests/test-projects/test-build-configs/test-build-configs.mds
deleted file mode 100644
index 65ff412683..0000000000
--- a/main/tests/test-projects/test-build-configs/test-build-configs.mds
+++ /dev/null
@@ -1,28 +0,0 @@
-<Combine name="test-build-configs" fileversion="2.0">
- <Configurations active="Debug">
- <Configuration name="Debug" ctype="CombineConfiguration">
- <Entry build="True" name="Lib1" configuration="Debug" />
- <Entry build="True" name="Lib2" configuration="Release" />
- <Entry build="True" name="Lib3" configuration="Debug+Extra" />
- <Entry build="True" name="Lib4" configuration="Debug" />
- </Configuration>
- <Configuration name="Release" ctype="CombineConfiguration">
- <Entry build="True" name="Lib1" configuration="Release" />
- <Entry build="True" name="Lib2" configuration="Debug" />
- <Entry build="True" name="Lib3" configuration="Release+Extra" />
- <Entry build="True" name="Lib4" configuration="Release" />
- </Configuration>
- </Configurations>
- <StartMode startupentry="Lib1" single="True">
- <Execute type="None" entry="Lib1" />
- <Execute type="None" entry="Lib2" />
- <Execute type="None" entry="Lib3" />
- <Execute type="None" entry="Lib4" />
- </StartMode>
- <Entries>
- <Entry filename="Lib1/Lib1.mdp" />
- <Entry filename="Lib2/Lib2.mdp" />
- <Entry filename="Lib3/Lib3.mdp" />
- <Entry filename="Lib4/Lib4.mdp" />
- </Entries>
-</Combine> \ No newline at end of file
diff --git a/main/tests/test-projects/test-build-configs/test-build-configs.sln b/main/tests/test-projects/test-build-configs/test-build-configs.sln
new file mode 100644
index 0000000000..6cd4c3bf0a
--- /dev/null
+++ b/main/tests/test-projects/test-build-configs/test-build-configs.sln
@@ -0,0 +1,39 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lib1", "Lib1\Lib1.csproj", "{DAE0F5D0-50B0-4238-8FBA-46DE5F4D6284}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lib2", "Lib2\Lib2.csproj", "{33FD65CB-FF5C-4B8D-BDBE-1326D2688B16}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lib3", "Lib3\Lib3.csproj", "{D4A08E68-9AFC-4E6E-912B-7BACE81B586E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lib4", "Lib4\Lib4.csproj", "{ED11EE6A-C2E6-4909-97C0-4C817445D34B}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {33FD65CB-FF5C-4B8D-BDBE-1326D2688B16}.Debug|Any CPU.ActiveCfg = Release|Any CPU
+ {33FD65CB-FF5C-4B8D-BDBE-1326D2688B16}.Debug|Any CPU.Build.0 = Release|Any CPU
+ {33FD65CB-FF5C-4B8D-BDBE-1326D2688B16}.Release|Any CPU.ActiveCfg = Debug|Any CPU
+ {33FD65CB-FF5C-4B8D-BDBE-1326D2688B16}.Release|Any CPU.Build.0 = Debug|Any CPU
+ {D4A08E68-9AFC-4E6E-912B-7BACE81B586E}.Debug|Any CPU.ActiveCfg = Debug+Extra|Any CPU
+ {D4A08E68-9AFC-4E6E-912B-7BACE81B586E}.Debug|Any CPU.Build.0 = Debug+Extra|Any CPU
+ {D4A08E68-9AFC-4E6E-912B-7BACE81B586E}.Release|Any CPU.ActiveCfg = Release+Extra|Any CPU
+ {D4A08E68-9AFC-4E6E-912B-7BACE81B586E}.Release|Any CPU.Build.0 = Release+Extra|Any CPU
+ {DAE0F5D0-50B0-4238-8FBA-46DE5F4D6284}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {DAE0F5D0-50B0-4238-8FBA-46DE5F4D6284}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {DAE0F5D0-50B0-4238-8FBA-46DE5F4D6284}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {DAE0F5D0-50B0-4238-8FBA-46DE5F4D6284}.Release|Any CPU.Build.0 = Release|Any CPU
+ {ED11EE6A-C2E6-4909-97C0-4C817445D34B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {ED11EE6A-C2E6-4909-97C0-4C817445D34B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {ED11EE6A-C2E6-4909-97C0-4C817445D34B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {ED11EE6A-C2E6-4909-97C0-4C817445D34B}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(MonoDevelopProperties) = preSolution
+ StartupItem = Lib1\Lib1.csproj
+ name = test-build-configs
+ EndGlobalSection
+EndGlobal