From a0567b3d41a0379b6daf9cdec8b2dcb64ad36714 Mon Sep 17 00:00:00 2001 From: Steve Loughran Date: Wed, 24 Sep 2003 00:56:45 +0000 Subject: [PATCH] fuller docs of the tasks, with examples. If someone were to fiddle with the xdocs templates, having
 make it through without being coalesced onto a single line would be nice, as all the examples are ruined.


git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@275327 13f79535-47bb-0310-9956-ffa450edef68
---
 docs/manual/OptionalTasks/csc.html           | 514 +++++++++++++
 docs/manual/OptionalTasks/dotnet.html        | 750 +++++--------------
 docs/manual/OptionalTasks/ilasm.html         | 288 +++++++
 docs/manual/OptionalTasks/ildasm.html        | 338 +++++++++
 docs/manual/OptionalTasks/importtypelib.html | 206 +++++
 docs/manual/OptionalTasks/jsharp.html        | 454 +++++++++++
 docs/manual/OptionalTasks/vbc.html           | 490 ++++++++++++
 docs/manual/OptionalTasks/wsdltodotnet.html  | 230 ++++++
 8 files changed, 2695 insertions(+), 575 deletions(-)
 create mode 100644 docs/manual/OptionalTasks/csc.html
 create mode 100644 docs/manual/OptionalTasks/ilasm.html
 create mode 100644 docs/manual/OptionalTasks/ildasm.html
 create mode 100644 docs/manual/OptionalTasks/importtypelib.html
 create mode 100644 docs/manual/OptionalTasks/jsharp.html
 create mode 100644 docs/manual/OptionalTasks/vbc.html
 create mode 100644 docs/manual/OptionalTasks/wsdltodotnet.html

diff --git a/docs/manual/OptionalTasks/csc.html b/docs/manual/OptionalTasks/csc.html
new file mode 100644
index 000000000..8a7f9a952
--- /dev/null
+++ b/docs/manual/OptionalTasks/csc.html
@@ -0,0 +1,514 @@
+    
+
+
+  
+  Csc
+ Task
+
+
+
+
+
+
+  
+  
+    
+  
+
+  
+  
+    
+  
+  
+
+  
+  
+    
+  
+
+  
+  
+    
+  
+
+
+ + + +
+ Csc + Task +
Compiles C# source into executables or modules. +
+ + + Apache Ant + +
+
+ + + + + + + + + + +
 
+ + + Description +
+ Compiles C# source into executables or modules. csc.exe must be on the execute path, unless another executable or the full path to that executable is specified in the executable parameter

All parameters are optional: <csc/> should suffice to produce a debug build of all *.cs files. However, naming an destFilestops the csc compiler from choosing an output name from random, and allows the dependency checker to determine if the file is out of date.

The task is a directory based task, so attributes like includes="*.cs" and excludes="broken.cs" can be used to control the files pulled in. By default, all *.cs files from the project folder down are included in the command. When this happens the output file -if not specified- is taken as the first file in the list, which may be somewhat hard to control. Specifying the output file with destFile seems prudent.

For more complex source trees, nested src elemements can be supplied. When such an element is present, the implicit fileset is ignored. This makes sense, when you think about it :)

References to external files can be made through the references attribute, or (since Ant1.6), via nested <reference> filesets. With the latter, the timestamps of the references are also used in the dependency checking algorithm.

Example

<csc optimize="true" debug="false" docFile="documentation.xml" warnLevel="4" unsafe="false" targetType="exe" incremental="false" mainClass = "MainApp" destFile="NetApp.exe" > <src dir="src" includes="*.cs" /> <reference file="${testCSC.dll}" /> <define name="RELEASE" /> <define name="DEBUG" if="debug.property"/> <define name="def3" unless="def3.property"/> </csc> 
+
+ + + + + + + + +
 
+ + + Parameters +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Attribute + + Description + + Type + + Requirement +
+ additionalmodules + + Semicolon separated list of modules to refer to. + + String + + Optional +
+ debug + + set the debug flag on or off. + + boolean +
+ definitions + + Semicolon separated list of defined constants. + + String +
+ destdir + + Set the destination directory of files to be compiled. + + File +
+ destfile + + Set the name of exe/library to create. + + File +
+ docfile + + file for generated XML documentation + + File +
+ executable + + set the name of the program, overriding the defaults. Can be used to set the full path to a program, or to switch to an alternate implementation of the command, such as the Mono or Rotor versions -provided they use the same command line arguments as the .NET framework edition + + String +
+ extraoptions + + Any extra options which are not explicitly supported by this task. + + String +
+ failonerror + + If true, fail on compilation errors. + + boolean +
+ filealign + + Set the file alignment. Valid values are 0,512, 1024, 2048, 4096, 8192, and 16384, 0 means 'leave to the compiler' + + int +
+ fullpaths + + If true, print the full path of files on errors. + + boolean +
+ includedefaultreferences + + If true, automatically includes the common assemblies in dotnet, and tells the compiler to link in mscore.dll. set the automatic reference inclusion flag on or off this flag controls the /nostdlib option in CSC + + boolean +
+ incremental + + set the incremental compilation flag on or off. + + boolean +
+ mainclass + + Sets the name of main class for executables. + + String +
+ noconfig + + A flag that tells the compiler not to read in the compiler settings files 'csc.rsp' in its bin directory and then the local directory + + boolean +
+ optimize + + If true, enables optimization flag. + + boolean +
+ outputfile + + The output file. This is identical to the destFile attribute. + + File +
+ referencefiles + + Path of references to include. Wildcards should work. + + Path +
+ references + + Semicolon separated list of DLLs to refer to. + + String +
+ srcdir + + Set the source directory of the files to be compiled. + + File +
+ targettype + + set the target type to one of exe|library|module|winexe + + "exe", "library", "module", "winexe" +
+ unsafe + + If true, enables the unsafe keyword. + + boolean +
+ utf8output + + If true, require all compiler output to be in UTF8 format. + + boolean +
+ warnlevel + + Level of warning currently between 1 and 4 with 4 being the strictest. + + int +
+ win32icon + + Set the filename of icon to include. + + File +
+ win32res + + Sets the filename of a win32 resource (.RES) file to include. This is not a .NET resource, but what Windows is used to. + + File +
+
+ + + + + + + + + + +
 
+ + + Parameters as nested elements +
+ + + + + +
 
+ + define (org.apache.tools.ant.taskdefs.optional.dotnet.DotnetDefine) +
+ add a define to the list of definitions + + + + + +
+ + + + + + +
 
+ + reference (org.apache.tools.ant.types.FileSet) +
+ add a new reference fileset to the compilation + + + + + +
+ + + + + + +
 
+ + resource (org.apache.tools.ant.taskdefs.optional.dotnet.DotnetResource) +
+ link or embed a resource + + + + + +
+ + + + + + +
 
+ + src (org.apache.tools.ant.types.FileSet) +
+ add a new source directory to the compile + + + + + +
+ + +
+ + + +
+
+
+
+ Copyright © 2000-2003, Apache Software Foundation +
+
+ + + diff --git a/docs/manual/OptionalTasks/dotnet.html b/docs/manual/OptionalTasks/dotnet.html index f1143e028..2443ecf2a 100644 --- a/docs/manual/OptionalTasks/dotnet.html +++ b/docs/manual/OptionalTasks/dotnet.html @@ -3,619 +3,204 @@ .NET Tasks -

.NET tasks

+

Introduction

+ +Ant support for .NET goes back to before .NET was released, and +continues to be expanded based on user demand. Users writing nothing but +a .NET application, may want to look at the .NET-based +NAnt project, that supports +both the Microsoft and the Ximian managed Mono project's implementation of the +.NET framework. +

+Over time, the .NET tasks in Ant have tended to evolve to meet a few +limited needs. Firstly, developers working with complex deployment problems may +want to use ant to use the fairly advanced deployment tasks Ant ships +with. Secondly, anyone who has a cross-platform project can use these +tasks to cover the .NET side of the problem. Here, cross-platform can +mean more than just Java and .NET: the C++ tasks in the ant-contrib +project on sourceforge can be used with Ant to do native C++ and .NET +cross development if that is your need. Finally, Ant support for .NET +lets one automate .NET development under an automated build process, +such as AntHill or Cruise Control. -


-

<CSC>

+

-This task compiles CSharp source into executables or modules. +What this means is that the Ant tasks for .NET support do not get as +much rigorous use as the Java tools, and are evolving more slowly -that +includes the time for support calls to change. But as a consequence, +developers working on .NET support have more freedom to play around with +the code. It also means that the fairly unusual set of tasks supported +by ant enable a few interesting operations that can not be performed any +other way: +

    -This task compiles CSharp source into executables or modules. The task will -only work on win2K/XP or other platforms with csc.exe or an equivalent. -CSC must be on the execute path. +
  1. Integrating with a Java based SOAP Service -generating C# code from +the server's WSDL and running it against the server. +
  2. +
  3. Building and deploying a C#-based Web Service, then using the Apache +Axis tasks to create JUnit tests to call the endpoints. -

    -All parameters are optional: <csc/> should suffice to produce a debug -build of all *.cs files. References to external files do require explicit -enumeration, so are one of the first attributes to consider adding.

    +
  4. Patching .NET type libraries to work with more complex IDL than the +basic <importtypelib> wrapper around tlbimport supports. Hence the +disassembler and the reassembler. +
  5. -

    +

+Needless to say, possible does not mean easy. +Chapter 15 of +Java Development with Ant covers the first of these, using the Ant1.5 +version of the tasks. Going the other way -generating Java client +code and JUnit testcases is covered in +The Wondrous curse +of Interop. The final trick, IDL and Typelib abuse, is not +documented as we do not want to encourage such an ugly practise. It, +can, however, be done if absolutely necessary. -The task is a directory based task, so attributes like -includes="**/*.cs" and -excludes="broken.cs" can be used to control -the files pulled in. By default, -all *.cs files from the project folder down are included in the command. -When this happens the destFile -if not specified- -is taken as the first file in the list, which may be somewhat hard to control. -Specifying the output file with 'destfile' seems prudent.

-

-Also, dependency checking only works if destfile is set. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +

Task List

+ +
AttributeDescriptionExample Values
additionalModulesSemicolon separated list of modules to refer to
defaultexcludesindicates whether default excludes should be used or not - "true"(default) or "false"
definitionsdefined constants "RELEASE;BETA1"
debuginclude debug information"true"(default)
destFilename of exe/library to create"example.exe"
docFilename of file for documentation"doc.xml"
excludescomma- or space-separated list of patterns of files that must be - excluded. No files (except default excludes) are excluded when omitted.
excludesfilethe name of a file. Each line of this file is - taken to be an exclude pattern
extraOptionsAny extra options which aren't explicitly - supported by the CSharp task "/warnaserror+ /baseaddress:0x12840000"
failOnErrorShould a failed compile halt the build?"true"(default) or "false"
fileAlign - set the file alignment. - Valid values are 0,512, 1024, 2048, 4096, 8192, and 16384 - 0 means 'leave to the compiler' - 512
fullpathsprint the full path of files on on errors
includescomma- or space-separated list of patterns of files that must be - included. All files are included when omitted.
includeDefaultReferencesControls csc's /nostdlib argument, - "true"(default) implies /nostdlib-. - "true"(default) or "false"
includesfilethe name of a file. Each line of this file is - taken to be an include pattern
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + +
incrementalIncremental build flag. Avoid till it works"true" or "false"(default)
mainClassname of main class for executables"com.example.project.entrypoint"
noConfiga flag which tells the compiler not - to read in the compiler settings files 'csc.rsp' in its - bin directory and then the local directory"true" or "false"(default)
optimizeoptimisation flag"true" or "false"(default)
referencesSemicolon separated list of dlls to refer to"mylib.dll;nunit.dll"
referenceFiles Ant Path descriptioon of references to include. - Wildcards should work.
srcDirsource directory (default = project directory)"."
CscCompiles C# code
targetTypeType of target"exe", "module", "winexe" or "library"
vbcCompiles VB.Net code
unsafeenable the unsafe keyword"true" or "false"(default)
jsharpCompiles J# files
utf8outputrequire all compiler output to be in utf-8 format"true" or "false"(default)
ildasmDisassembles .NET executables and libraries
warnLevellevel of warning currently between 1 and 4 with 4 - being the strictest. "1"-"4"
ilasmAssembles .il files
win32Iconfilename of icon to include"res/myicon.ico"
WsdlToDotnetGenerates .NET code (C# or VB) from a WSDL file
win32resfilename of a win32 resource (.RES)file to include - This is not a .NET resource, but it what windows is used to."res/myapp.res"
ImportTypelib .htmlImports a COM type library into .NET
-

-Example -

-
<csc
-        optimize="true"
-        debug="false"
-        docFile="documentation.xml"
-        warnLevel="4"
-        unsafe="false"
-        targetType="exe"
-        incremental="false"
-        definitions="RELEASE"
-        excludes="src/unicode_class.cs"
-        mainClass = "MainApp"
-        destFile="NetApp.exe"
-        />   
-
-
-

<VBC>

-This task compiles VisualBasic.NET source into executables or modules. -This task compiles VisualBasic.NET source into executables or modules. -The task will only work on win2K/XP or other platforms with vbc.exe -or an equivalent. VBC must be on the execute path. - -

-All parameters are optional: <vbc/> should suffice to produce a debug -build of all *.vb files. References to external files do require explicit -enumeration, so are one of the first attributes to consider adding.

+
+

Change Log

+

Ant1.6

+This revision goes along with NET 1.1, though there is no reason why +it should not work on other versions.

-The task is a directory based task, so attributes like -includes="**/*.vb" and -excludes="broken.vb" can be used to control -the files pulled in. By default, -all *.vb files from the project folder down are included in the command. -When this happens the destFile -if not specified- -is taken as the first file in the list, which may be somewhat hard to control. -Specifying the output file with 'destfile' seems prudent.

-

-Also, dependency checking only works if destfile is set. +

    +
  1. vbc task
  2. +
  3. jsharp task
  4. +
  5. mono support
  6. +
  7. ilasm
  8. +
  9. tlbimport
  10. +
  11. Reference filesets in the compiler tasks
  12. +
  13. definitions in the compiler tasks
  14. +
  15. multiple source filesets in the compiler tasks. If these are used, the +implicit fileset is disabled
  16. +
- - - - - - +The compile tasks: vbc, jsharp, and csc, all contain lots of common code +in a shared base class: if you can use one you should be able to use +another. - - - - - - - - - - - - - - - - - - - +

Ant 1.5

+This revision goes along with NET 1.0 (SP1) +
    +
  1. CSC: added filealign
  2. +
  3. CSC: added reference to office.dll
  4. +
  5. CSC: dependency checking! only if destFile is set! +
  6. WsdlToDotnet written +
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +

Version 0.4

+This is the beta-2 revision of the tasks. +
    +
  1. ILASM: pulled the owner attribute, added keyfile for giving binaries a strong name +(MD5 hash of the checksum)
  2. +
  3. CSC: added win32res , noConfig, utf8output, fullpaths
  4. +
  5. CSC:
  6. +
+ +

Version 0.3

-
AttributeDescriptionExample Values
additionalModulesSemicolon separated list of modules to refer to
defaultexcludesindicates whether default excludes should be used or not - "true"(default) or "false"
definitionsdefined constants "RELEASE;BETA1"
debuginclude debug information"true"(default)
destFilename of exe/library to create"example.exe"
excludescomma- or space-separated list of patterns of files that must be - excluded. No files (except default excludes) are excluded when omitted.
excludesfilethe name of a file. Each line of this file is - taken to be an exclude pattern
extraOptionsAny extra options which aren't explicitly - supported by the VisualBasicCompile task "/warnaserror+ /baseaddress:0x12840000"
failOnErrorShould a failed compile halt the build?"true"(default) or "false"
importscomma-separated list of global imports for namespaces - in referenced metadata files.
includescomma- or space-separated list of patterns of files that must be - included. All files are included when omitted.
includesfilethe name of a file. Each line of this file is - taken to be an include pattern
mainClassname of main class for executables"com.example.project.entrypoint"
optimizeoptimisation flag"true" or "false"(default)
optionCompareText or binary string comparisons."text" or "binary"(default)
optionExplicitRequire explicit declaration of variables?"true" or "false"(default)
optionStrictEnforce strict language semantics?"true" or "false"(default)
referencesSemicolon separated list of dlls to refer to"mylib.dll;nunit.dll"
referenceFiles Ant Path descriptioon of references to include. - Wildcards should work.
removeIntChecksRemove integer checks?"true" or "false"(default)
rootNamespaceRoot namespace for all type declarations.com.example
srcDirsource directory (default = project directory)"."
targetTypeType of target"exe", "module", "winexe" or "library"
utf8outputrequire all compiler output to be in utf-8 format"true" or "false"(default)
warnLevellevel of warning currently between 1 and 4 with 4 - being the strictest. "1"-"4"
win32Iconfilename of icon to include"res/myicon.ico"
win32resfilename of a win32 resource (.RES)file to include - This is not a .NET resource, but it what windows is used to."res/myapp.res"
-

-Example -

-
<vbc
-        optimize="true"
-        debug="false"
-        warnLevel="4"
-        targetType="exe"
-        definitions="RELEASE"
-        excludes="src/unicode_class.vb"
-        mainClass = "MainApp"
-        destFile="NetApp.exe"
-        optionExplicit="true"
-        optionCompare="text"
-        />   
-
-
-

<ilasm>

-

Task to assemble .net 'Intermediate Language' files. -The task will only work on windows until other platforms support csc.exe or -an equivalent. ilasm.exe must be on the execute path too. -

+The changes here reflect Beta-1 of the dotnet SDK and experience of use in +more complex projects. This build does not work with the older SDK, +primarily because the automatic reference feature references libraries +only found in the new SDK version.

-All parameters are optional: <il/> should suffice to produce a debug -build of all *.il files. -The option set is roughly compatible with the CSharp class; -even though the command line options are only vaguely -equivalent. [The low level commands take things like /OUT=file, -csc wants /out:file ... /verbose is used some places; /quiet here in -ildasm... etc.] It would be nice if someone made all the command line -tools consistent (and not as brittle as the java cmdline tools) -

+External changes

+ -
+Internal changes + + +The test harness has been expanded to include unicode source file +(the build works but the rest of the system has 'issues' with high unicode +package and method names) + +

Version 0.2

+First public edition, added to the ant cvs tree. Tested on the PDC build of +the dotnet SDK only, and still immature. The command execution code was +refactored out into a 'NetCommand' class for re-use. The Ilasm task was added +at this time. +

Version 0.1

Initial proof of concept; very rudimentary support for CSC only. diff --git a/docs/manual/OptionalTasks/ilasm.html b/docs/manual/OptionalTasks/ilasm.html new file mode 100644 index 000000000..f88bf9fc7 --- /dev/null +++ b/docs/manual/OptionalTasks/ilasm.html @@ -0,0 +1,288 @@ + + + + + Ilasm + Task + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ Ilasm + Task +
Assembles .NET Intermediate Language files. +
+ + + Apache Ant + +
+
+ + + + + + + + + + +
 
+ + + Description +
+ Assembles .NET Intermediate Language files. ilasm.exe must be on the execute path, unless another executable or the full path to that executable is specified in the executable parameter

All parameters are optional: <il/> should suffice to produce a debug build of all *.il files. The option set is roughly compatible with the CSharp class; even though the command line options are only vaguely equivalent. [The low level commands take things like /OUT=file, csc wants /out:file ... /verbose is used some places; /quiet here in ildasm... etc.] It would be nice if someone made all the command line tools consistent (and not as brittle as the java cmdline tools)

The task is a directory based task, so attributes like includes="*.il" and excludes="broken.il" can be used to control the files pulled in. You can also use nested <src> filesets to refer to source.

+

+ + + + + + + + +
 
+ + + Parameters +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Attribute + + Description + + Type + + Requirement +
+ debug + + set the debug flag on or off. + + boolean + + Optional +
+ destfile + + Set the name of exe/library to create. + + File +
+ extraoptions + + Any extra options which are not explicitly supported by this task. + + String +
+ failonerror + + If true, fails if ilasm tool fails. + + boolean +
+ keyfile + + the name of a file containing a private key. + + File +
+ listing + + If true, produce a listing (off by default). + + boolean +
+ outputfile + + Set the output file; identical to setDestFile + + File +
+ resourcefile + + name of resource file to include. + + File +
+ srcdir + + Set the source directory of the files to be compiled. + + File +
+ verbose + + If true, enable verbose ILASM output. + + boolean +
+
+ + + + + + + + + + +
 
+ + + Parameters as nested elements +
+ + + + + +
 
+ + reference (org.apache.tools.ant.types.FileSet) +
+ add a new reference fileset to the compilation + + + + + +
+ + + + + + +
 
+ + src (org.apache.tools.ant.types.FileSet) +
+ add a new source directory to the compile + + + + + +
+ + +
+ + + +
+
+
+
+ Copyright © 2000-2003, Apache Software Foundation +
+
+ + + diff --git a/docs/manual/OptionalTasks/ildasm.html b/docs/manual/OptionalTasks/ildasm.html new file mode 100644 index 000000000..f143f47ce --- /dev/null +++ b/docs/manual/OptionalTasks/ildasm.html @@ -0,0 +1,338 @@ + + + + + Ildasm + Task + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ Ildasm + Task +
Task to take a .NET or Mono -generated managed executable and turn it into ILASM assembly code. +
+ + + Apache Ant + +
+
+ + + + + + + + + + +
 
+ + + Description +
+ Task to take a .NET or Mono -generated managed executable and turn it into ILASM assembly code. Useful when converting imported typelibs into assembler before patching and recompiling, as one has to do when doing advanced typelib work.

As well as generating the named output file, the ildasm program will also generate resource files Icons.resources Message.resources and a .res file whose filename stub is derived from the source in ways to obscure to determine. There is no way to control whether or not these files are created, or where they are created (they are created in the current directory; their names come from inside the executable and may be those used by the original developer). This task creates the resources in the directory specified by resourceDir if set, else in the same directory as the destFile.

This task requires the .NET SDK installed and ildasm on the path. To disassemble using alternate CLR systems, set the executable attribute to the name/path of the alternate implementation -one that must support all the classic ildasm commands.

Dependency logic: the task executes the command if the output file is missing or older than the source file. It does not take into account changes in the options of the task, or timestamp differences in resource files. When the underlying ildasm executable fails for some reason, it leaves the .il file in place with some error message. To prevent this from confusing the dependency logic, the file specified by the dest attribute is always deleted after an unsuccessful build. +

+ + + + + + + + +
 
+ + + Parameters +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Attribute + + Description + + Type + + Requirement +
+ assembler + + enable (default) or disable assembly language in the output + + boolean + + Optional +
+ bytes + + enable or disable (default) the original bytes as comments + + boolean +
+ destfile + + the output file (required) + + File +
+ encoding + + Select the output encoding: ascii, utf8 or unicode + + "ascii", "utf8", "unicode" +
+ executable + + override the name of the executable (normally ildasm) or set its full path. Do not set a relative path, as the ugly hacks needed to create resource files in the dest directory force us to change to this directory before running the application. i.e use <property location> to create an absolute path from a relative one before setting this value. + + String +
+ header + + include header information; default false. + + boolean +
+ item + + name a single item to decode; a class or a method e.g item="Myclass::method" or item="namespace1::namespace2::Myclass:method(void(int32)) + + String +
+ linenumbers + + include line number information; default=false + + boolean +
+ metadata + + include metadata information + + boolean +
+ progressbar + + show a graphical progress bar in a window during the process; off by default + + boolean +
+ quoteallnames + + quote all names. + + boolean +
+ rawexceptionhandling + + enable raw exception handling (default = false) + + boolean +
+ resourcedir + + Set the name of the directory for resources to be created. We cannot control their names, but we can say where they get created. If not set, the directory of the dest file is used + + File +
+ showsource + + include the source as comments (default=false) + + boolean +
+ sourcefile + + the file to disassemble -required + + File +
+ srcfile + + alternate name for sourceFile + + File +
+ visibility + + visibility options: one or more of the following, with + signs to concatenate them:
 pub : Public pri : Private fam : Family asm : Assembly faa : Family and Assembly foa : Family or Assembly psc : Private Scope 
e.g. visibility="pub+pri". Family means protected in C#;
+
+ String +
+
+ + + + + + + + + + +
 
+ + + Parameters as nested elements +
+ +
+ + + +
+
+
+
+ Copyright © 2000-2003, Apache Software Foundation +
+
+ + + diff --git a/docs/manual/OptionalTasks/importtypelib.html b/docs/manual/OptionalTasks/importtypelib.html new file mode 100644 index 000000000..83d00a554 --- /dev/null +++ b/docs/manual/OptionalTasks/importtypelib.html @@ -0,0 +1,206 @@ + + + + + Importtypelib + Task + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ Importtypelib + Task +
Import a COM type library into the .NET framework. +
+ + + Apache Ant + +
+
+ + + + + + + + + + +
 
+ + + Description +
+ Import a COM type library into the .NET framework.

This task is a wrapper to .NET's tlbimport; it imports a tlb file to a NET assembly by generating a binary assembly (.dll) that contains all the binding metadata. It uses date timestamps to minimise rebuilds.

Example

 <importtypelib srcfile="xerces.tlb" destfile="xerces.dll" namespace="Apache.Xerces"/> 
+
+ + + + + + + + +
 
+ + + Parameters +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Attribute + + Description + + Type + + Requirement +
+ destfile + + name the output file. required + + File + + Optional +
+ extraoptions + + set any extra options that are not yet supported by this task. + + String +
+ namespace + + what namespace is the typelib to be in. required + + String +
+ srcfile + + what is the source .tlb file? required. + + File +
+ unsafe + + do you want unsafe code. + + boolean +
+ usesysarray + + set this to map a COM SafeArray to the System.Array class + + boolean +
+
+ + + + + + + + + + +
 
+ + + Parameters as nested elements +
+ +
+ + + +
+
+
+
+ Copyright © 2000-2003, Apache Software Foundation +
+
+ + + diff --git a/docs/manual/OptionalTasks/jsharp.html b/docs/manual/OptionalTasks/jsharp.html new file mode 100644 index 000000000..2542f82e8 --- /dev/null +++ b/docs/manual/OptionalTasks/jsharp.html @@ -0,0 +1,454 @@ + + + + + Jsharp + Task + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ Jsharp + Task +
Compile J# source down to a managed .NET application. +
+ + + Apache Ant + +
+
+ + + + + + + + + + +
 
+ + + Description +
+ Compile J# source down to a managed .NET application.

J# is not Java. But it is the language closest to Java in the .NET framework. This task compiles jsharp source (.java files), and generates a .NET managed exe or dll.

+

+ + + + + + + + +
 
+ + + Parameters +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Attribute + + Description + + Type + + Requirement +
+ additionalmodules + + Semicolon separated list of modules to refer to. + + String + + Optional +
+ baseaddress + + + + String +
+ debug + + set the debug flag on or off. + + boolean +
+ destdir + + Set the destination directory of files to be compiled. + + File +
+ destfile + + Set the name of exe/library to create. + + File +
+ executable + + set the name of the program, overriding the defaults. Can be used to set the full path to a program, or to switch to an alternate implementation of the command, such as the Mono or Rotor versions -provided they use the same command line arguments as the .NET framework edition + + String +
+ extraoptions + + Any extra options which are not explicitly supported by this task. + + String +
+ failonerror + + If true, fail on compilation errors. + + boolean +
+ includedefaultreferences + + If true, automatically includes the common assemblies in dotnet, and tells the compiler to link in mscore.dll. set the automatic reference inclusion flag on or off this flag controls the /nostdlib option in CSC + + boolean +
+ mainclass + + Sets the name of main class for executables. + + String +
+ optimize + + If true, enables optimization flag. + + boolean +
+ purejava + + do we want pure java (default, true) or corrupted J#? + + boolean +
+ referencefiles + + Path of references to include. Wildcards should work. + + Path +
+ references + + Semicolon separated list of DLLs to refer to. + + String +
+ securescoping + + Make package scoped code visible to the current assembly only (default: false) .NET does not have package scoping. Instead it has assembly, private and public. By default, package content is public to all. + + boolean +
+ srcdir + + Set the source directory of the files to be compiled. + + File +
+ targettype + + set the target type to one of exe|library|module|winexe + + "exe", "library", "module", "winexe" +
+ utf8output + + If true, require all compiler output to be in UTF8 format. + + boolean +
+ warnlevel + + Level of warning currently between 1 and 4 with 4 being the strictest. + + int +
+ win32icon + + Set the filename of icon to include. + + File +
+ win32res + + Sets the filename of a win32 resource (.RES) file to include. This is not a .NET resource, but what Windows is used to. + + File +
+
+ + + + + + + + + + +
 
+ + + Parameters as nested elements +
+ + + + + +
 
+ + define (org.apache.tools.ant.taskdefs.optional.dotnet.DotnetDefine) +
+ add a define to the list of definitions + + + + + +
+ + + + + + +
 
+ + reference (org.apache.tools.ant.types.FileSet) +
+ add a new reference fileset to the compilation + + + + + +
+ + + + + + +
 
+ + resource (org.apache.tools.ant.taskdefs.optional.dotnet.DotnetResource) +
+ link or embed a resource + + + + + +
+ + + + + + +
 
+ + src (org.apache.tools.ant.types.FileSet) +
+ add a new source directory to the compile + + + + + +
+ + +
+ + + +
+
+
+
+ Copyright © 2000-2003, Apache Software Foundation +
+
+ + + diff --git a/docs/manual/OptionalTasks/vbc.html b/docs/manual/OptionalTasks/vbc.html new file mode 100644 index 000000000..b643d17c8 --- /dev/null +++ b/docs/manual/OptionalTasks/vbc.html @@ -0,0 +1,490 @@ + + + + + Vbc + Task + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ Vbc + Task +
This task compiles Visual Basic.NET source into executables or modules. +
+ + + Apache Ant + +
+
+ + + + + + + + + + +
 
+ + + Description +
+ This task compiles Visual Basic.NET source into executables or modules. The task requires vbc.exe on the execute path, unless it or an equivalent program is specified in the executable parameter

All parameters are optional: <vbc/> should suffice to produce a debug build of all *.vb files.

The task is a directory based task, so attributes like includes="**\/*.vb" and excludes="broken.vb" can be used to control the files pulled in. By default, all *.vb files from the project folder down are included in the command. When this happens the destFile -if not specified- is taken as the first file in the list, which may be somewhat hard to control. Specifying the output file with destfile is prudent.

Also, dependency checking only works if destfile is set. As with <csc> nested src filesets of source, reference filesets, definitions and resources can be provided.

Example

<vbc optimize="true" debug="false" warnLevel="4" targetType="exe" definitions="RELEASE" excludes="src/unicode_class.vb" mainClass = "MainApp" destFile="NetApp.exe" optionExplicit="true" optionCompare="text" references="System.Xml,System.Web.Xml" > <reference file="${testCSC.dll}" /> <define name="RELEASE" /> <define name="DEBUG" if="debug.property"/> <define name="def3" unless="def2.property"/> </vbc> 
+
+ + + + + + + + +
 
+ + + Parameters +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Attribute + + Description + + Type + + Requirement +
+ additionalmodules + + Semicolon separated list of modules to refer to. + + String + + Optional +
+ debug + + set the debug flag on or off. + + boolean +
+ destdir + + Set the destination directory of files to be compiled. + + File +
+ destfile + + Set the name of exe/library to create. + + File +
+ executable + + set the name of the program, overriding the defaults. Can be used to set the full path to a program, or to switch to an alternate implementation of the command, such as the Mono or Rotor versions -provided they use the same command line arguments as the .NET framework edition + + String +
+ extraoptions + + Any extra options which are not explicitly supported by this task. + + String +
+ failonerror + + If true, fail on compilation errors. + + boolean +
+ imports + + Declare global imports for namespaces in referenced metadata files. + + String +
+ includedefaultreferences + + If true, automatically includes the common assemblies in dotnet, and tells the compiler to link in mscore.dll. set the automatic reference inclusion flag on or off this flag controls the /nostdlib option in CSC + + boolean +
+ mainclass + + Sets the name of main class for executables. + + String +
+ optimize + + If true, enables optimization flag. + + boolean +
+ optioncompare + + Specify binary- or text-style string comparisons. Defaults to "binary" + + String +
+ optionexplicit + + Whether to require explicit declaration of variables. + + boolean +
+ optionstrict + + Enforce strict language semantics. + + boolean +
+ referencefiles + + Path of references to include. Wildcards should work. + + Path +
+ references + + Semicolon separated list of DLLs to refer to. + + String +
+ removeintchecks + + Whether to remove integer checks. Default false. + + boolean +
+ rootnamespace + + Specifies the root namespace for all type declarations. + + String +
+ srcdir + + Set the source directory of the files to be compiled. + + File +
+ targettype + + set the target type to one of exe|library|module|winexe + + "exe", "library", "module", "winexe" +
+ utf8output + + If true, require all compiler output to be in UTF8 format. + + boolean +
+ warnlevel + + Level of warning currently between 1 and 4 with 4 being the strictest. + + int +
+ win32icon + + Set the filename of icon to include. + + File +
+ win32res + + Sets the filename of a win32 resource (.RES) file to include. This is not a .NET resource, but what Windows is used to. + + File +
+
+ + + + + + + + + + +
 
+ + + Parameters as nested elements +
+ + + + + +
 
+ + define (org.apache.tools.ant.taskdefs.optional.dotnet.DotnetDefine) +
+ add a define to the list of definitions + + + + + +
+ + + + + + +
 
+ + reference (org.apache.tools.ant.types.FileSet) +
+ add a new reference fileset to the compilation + + + + + +
+ + + + + + +
 
+ + resource (org.apache.tools.ant.taskdefs.optional.dotnet.DotnetResource) +
+ link or embed a resource + + + + + +
+ + + + + + +
 
+ + src (org.apache.tools.ant.types.FileSet) +
+ add a new source directory to the compile + + + + + +
+ + +
+ + + +
+
+
+
+ Copyright © 2000-2003, Apache Software Foundation +
+
+ + + diff --git a/docs/manual/OptionalTasks/wsdltodotnet.html b/docs/manual/OptionalTasks/wsdltodotnet.html new file mode 100644 index 000000000..3cd786ed2 --- /dev/null +++ b/docs/manual/OptionalTasks/wsdltodotnet.html @@ -0,0 +1,230 @@ + + + + + Wsdltodotnet + Task + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ Wsdltodotnet + Task +
Converts a WSDL file or URL resource into a .NET language. +
+ + + Apache Ant + +
+
+ + + + + + + + + + +
 
+ + + Description +
+ Converts a WSDL file or URL resource into a .NET language. Why add a wrapper to the MS WSDL tool? So that you can verify that your web services, be they written with Axis or anyone else's SOAP toolkit, work with .NET clients. This task is dependency aware when using a file as a source and destination; so if you <get> the file (with usetimestamp="true") then you only rebuild stuff when the WSDL file is changed. Of course, if the server generates a new timestamp every time you ask for the WSDL, this is not enough...use the <filesmatch> <condition> to to byte for byte comparison against a cached WSDL file then make the target conditional on that test failing. See "Creating an XML Web Service Proxy", "wsdl.exe" docs in the framework SDK documentation +
+ + + + + + + + +
 
+ + + Parameters +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Attribute + + Description + + Type + + Requirement +
+ destfile + + Name of the file to generate. Required + + File + + Optional +
+ extraoptions + + Any extra WSDL.EXE options which aren't explicitly supported by the ant wrapper task; optional + + String +
+ failonerror + + Whether or not a failure should halt the build. Optional - default is true. + + boolean +
+ language + + set the language; one of "CS", "JS", or "VB" optional, default is CS for C# source + + String +
+ namespace + + namespace to place the source in. optional; default "" + + String +
+ server + + flag to enable server side code generation; optional, default=false + + boolean +
+ srcfile + + The local WSDL file to parse; either url or srcFile is required. + + File +
+ url + + Sets the URL to fetch. Fetching is by wsdl.exe; Ant proxy settings are ignored; either url or srcFile is required. + + String +
+
+ + + + + + + + + + +
 
+ + + Parameters as nested elements +
+ +
+ + + +
+
+
+
+ Copyright © 2000-2003, Apache Software Foundation +
+
+ + +