|Designates a whole bunch of content files sharing the same content type. More...|
|Contains wrappers of the Mono .NET framework and SDK tools. |
|Contains wrappers around Microsoft's .NET framework and SDK tools. |
|This namespace contains classes for creating releases. |
|delegate void||ErrorHandler (ErrorObject errorObject)|
otes for Contributors
The wx.NET build system consists of basic building actions like encapsulations of C# and C++ compilers. Basic actions are often of constrained applicability. They often require external tools, certain operating systems etc.
Main classes are BuildConfig where you can manipulate the configuration to be used for building and class BuildProject. Create an instance of a BuildProject and call BuildProject.CreateActionPlan() or BuildProject.Build().
Options to abort an action. This will usually be part of the build parameters. These will be interpreted by the actions. However, the intention is to define an overall valid rule to abort the build process w.r.t. several incidents.
|TreatWarningsAsErrors||Abort build process on warnings. This ensures accurat builds. However, what will we do in case of warnings.|
|AbortOnErrorsAndMissingData||Each compiler will abort on errors. Also missing data will stop the actions.|
|AlwaysTryToProduceASomehowUsefulTarget||Will even refuse to abort the build process if usually required data is missing as long as the product will have a least standard quality. .NET action will for instance proceed on building even if a specified signature is missing or a specified Win32 icon cannot be found etc.|
Build actions will be created dynamically. Constants of this enumeration will be used by the actions to state, whether they have to be executed or not.
This has been prefered according to user input. This is even more important than preference according to the static implementation (cf. |
|Preferred||An action of this kind will be preferably used. If this fails, alternatives will be searched (also of priority default).|
|Default||Actions of this kind will be used, if preferred actions are either not available or they failed.|
|Fallback||Actions of this kind will be used, if neither preferred nor default actions are available or they failed.|
Symbols to control the reuse of previous build operations. This will be set globally in the configuration.
Represents the location of a ContentFile.
|LocalFileSystem||The file name exists in the local file system. The file name will be normalized to a full path name. Validity will be determined according the last write access to the file.|
The file name is considered to denote an assembly from the global assembly cache. The validity will be mapped to the version of the assembly that will be read with |
The filename is relative to a configured directory. This option is for instance required providing static libs to linkers as simple filenames. Such files will typically be searched in configured directories.|
All services of this instance referring to properties of the file on the local file system are not available if this is used.
A bit vector representing several properties of content files that are relevant to the build process. A type inherits all properties from those types that are contained.
|None||Constant to represent that files do not exhibit remarkable properties.|
|NetAssembly||The file is a .NET assembly (linkable)|
|StrongNameAssembly||This is among the properties, if this contains an assembly of a strong name.|
|NativeDLL||File contains a DLL containing native code.|
|NativeStaticLib||File contains a statically linkable library of native code objects. Files of this kind may be used to build programs but not to contain DLL entries.|
|NativeCodeObject||File contains statically linkable code objects also maybe DLL entries. All files of this property result from a compiler and may serve as input of linkers.|
|PlainText||True if file is a stream of characters.|
|UTF8Text||True, if file is a stream of UTF8 characters.|
|UTF16Text||True, if file is a stream of UTF16 characters.|
|Latin1Text||True, if file is a stream of ISO-8859-1 characters.|
|ASCIIText||True, if file is a stream of ASCII 8-bit characters but not using 128-255.|
|CodeObjectSrc||This is plain text containing source code to be compiled into a code object.|
|InlinedCodeSrc||This is a plain text that is not meant to be compiled to a code object but containing declarations and macros or code to be inlined.|
|Compressed||This property specifies that files of this type have been compressed by an appropriate algorithm. If this holds true, some actions might choose not to run another compression since this is, because of this property, assumed to have no effect.|
|Executable||This is an executable program.|
|NetExecutable||This is an executabl program requiring the .NET runtime environment to work.|
|NativeCodeExecutable||This is an executable program containing native code.|
|WindowsResourceObject||Contains RES-files and alternatives for other linkers. Everything that can be built from RC-files. wx.Build.Cxx.DynamicDllProject will identify all types of files that are appropriate to contain Windows resources by this flag.|
|XMLText||Text in XML syntax. This may also describe project files or data serializations as loong as the result can be parsed as XML.|
|NetRessource||A resource that can be linked into a .NET executable.|
|DependsOnOSAndProcessor||This is valid if files of this type may only be used on computers running a particular OS and a particular processor architecture. This is e.g. true for all native executables and code libraries.|
|NetCodeObj||This is valid for all files containing .NET code. This is a property of those files that have been created by a .NET framework.|
These options control, which projects will be achieved during the build process. Cf. BuildProject.Preference
|Default||Projects of this kind will be achieved by default. However, they may be deferred by user input.|
|Optional||Projects of this kind wlll not be built by default but if the user desires this explicitely.|
|DoNotOffer||Projects of this kind will only be built if required by actions. This projects will even not offered to the user for building.|
|delegate void wx.Build.ErrorHandler||(||ErrorObject||errorObject||)|
Type for means to produce output on errors and warnings. Refer to ErrorDataReceiver if you want to use error handlers with
System .Diagnostics.Process. summary> This class is a utility to use the ErrorHandler in
System.Diagnostics.Process.Start(). Shell commands are typically executed by the
System.Diagnostics.Process.Start() command. Build tools will usually do this specifying a
System.Diagnostics.Process.StartInfo disabling use of the command shell but redirecting output of errors and messages.
This handler may be used as asynchron receiver of messages from the error stream that redirects this output to an ErrorHandler. Sample code:
System.Diagnostics.Process process = new System.Diagnostics.Process(); process.StartInfo.FileName="commandToRun.exe"; process.StartInfo.ErrorDialog = false; process.StartInfo.CreateNoWindow = false; process.StartInfo.UseShellExecute = false; process.StartInfo.RedirectStandardError = true; process.StartInfo.RedirectStandardOutput = true; ErrorDataReceiver receiver=new ErrorDataReceiver(this.Name, messages); process.ErrorDataReceived += new System.Diagnostics.DataReceivedEventHandler(receiver.OnReceiveErrorStreamData); process.Start(); process.BeginErrorReadLine(); process.BeginOutputReadLine(); process.WaitForExit(); bool success=process.ExitCode == 0;