2 // IVbcHostObject.cs: Host object interface for VB.NET compiler.
5 // Marek Sieradzki (marek.sieradzki@gmail.com)
7 // (C) 2005 Marek Sieradzki
9 // Permission is hereby granted, free of charge, to any person obtaining
10 // a copy of this software and associated documentation files (the
11 // "Software"), to deal in the Software without restriction, including
12 // without limitation the rights to use, copy, modify, merge, publish,
13 // distribute, sublicense, and/or sell copies of the Software, and to
14 // permit persons to whom the Software is furnished to do so, subject to
15 // the following conditions:
17 // The above copyright notice and this permission notice shall be
18 // included in all copies or substantial portions of the Software.
20 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
21 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
23 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
24 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
25 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
26 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
28 using Microsoft.Build.Framework;
30 using System.Runtime.InteropServices;
32 namespace Microsoft.Build.Tasks.Hosting {
33 public interface IVbcHostObject {
34 void BeginInitialization ();
38 void EndInitialization ();
44 bool SetAdditionalLibPaths (string[] additionalLibPaths);
46 bool SetAddModules (string[] addModules);
48 bool SetBaseAddress (string targetType, string baseAddress);
50 bool SetCodePage (int codePage);
52 bool SetDebugType (bool emitDebugInformation, string debugType);
54 bool SetDefineConstants (string defineConstants);
56 bool SetDelaySign (bool delaySign);
58 bool SetDisabledWarnings (string disabledWarnings);
60 bool SetDocumentationFile (string documentationFile);
62 bool SetErrorReport (string errorReport);
64 bool SetFileAlignment (int fileAlignment);
66 bool SetGenerateDocumentation (bool generateDocumentation);
68 bool SetImports (ITaskItem[] importsList);
70 bool SetKeyContainer (string keyContainer);
72 bool SetKeyFile (string keyFile);
74 bool SetLinkResources (ITaskItem[] linkResources);
76 bool SetMainEntryPoint (string mainEntryPoint);
78 bool SetNoConfig (bool noConfig);
80 bool SetNoStandardLib (bool noStandardLib);
82 bool SetNoWarnings (bool noWarnings);
84 bool SetOptimize (bool optimize);
86 bool SetOptionCompare (string optionCompare);
88 bool SetOptionExplicit (bool optionExplicit);
90 bool SetOptionStrict (bool optionStrict);
92 bool SetOutputAssembly (string outputAssembly);
94 bool SetPlatform (string platform);
96 bool SetReferences (ITaskItem[] references);
98 bool SetRemoveIntegerChecks (bool removeIntegerChecks);
100 bool SetResources (ITaskItem[] resources);
102 bool SetResponseFiles (ITaskItem[] responseFiles);
104 bool SetRootNamespace (string rootNamespace);
106 bool SetSdkPath (string sdkPath);
108 bool SetSources (ITaskItem[] sources);
110 bool SetTargetCompactFramework (bool targetCompactFramework);
112 bool SetTargetType (string targetType);
114 bool SetTreatWarningsAsErrors (bool treatWarningsAsErrors);
116 bool SetWarningsAsErrors (string warningsAsErrors);
118 bool SetWarningsNotAsErrors (string warningsNotAsErrors);
120 bool SetWin32Icon (string win32Icon);
122 bool SetWin32Resource (string win32Resource);