Show/Hide Toolbars

XSharp

The -target compiler option can be specified in one of four forms:

 

-target:appcontainerexeTo create an .exe file for Windows 8.x Store apps.
-target:exeTo create an .exe file.
-target:libraryTo create a code library.
-target:moduleTo create a module.
-target:winexeTo create a Windows program.
-target:winmdobjTo create an intermediate .winmdobj file.

 

Unless you specify -target:module, -target causes a .NET Framework assembly manifest to be placed in an output file. For more information, see Assemblies in the Common Language Runtime and Common Attributes.

The assembly manifest is placed in the first .exe output file in the compilation or in the first DLL, if there is no .exe output file. For example, in the following command line, the manifest will be placed in 1.exe:

 

xsc -out:1.exe t1.prg -out:2.netmodule t2.prg  

 

The compiler creates only one assembly manifest per compilation. Information about all files in a compilation is placed in the assembly manifest. All output files except those created with -target:module can contain an assembly manifest. When producing multiple output files at the command line, only one assembly manifest can be created and it must go into the first output file specified on the command line. No matter what the first output file is (/target:exe, -target:winexe, -target:library or -target:module), any other output files produced in the same compilation must be modules (/target:module).

 

If you create an assembly, you can indicate that all or part of your code is CLS compliant with the CLSCompliantAttribute attribute.

 

// target_clscompliant.prg  
[assembly:System.CLSCompliant(true)] // specify assembly compliance
 
[System.CLSCompliant(false)];   // specify compliance for an element  
CLASS TestClass  
 
  PUBLIC STATIC METHOD Start AS VOID
    RETURN
END CLASS

 

For more information about setting this compiler option programmatically, see OutputType.