diff --git a/build-support/tools/nant/COPYING.txt b/build-support/tools/nant/COPYING.txt
new file mode 100644
index 00000000..45645b4b
--- /dev/null
+++ b/build-support/tools/nant/COPYING.txt
@@ -0,0 +1,340 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+
+ Copyright (C)
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ , 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
diff --git a/build-support/tools/nant/README.txt b/build-support/tools/nant/README.txt
new file mode 100644
index 00000000..2d53720d
--- /dev/null
+++ b/build-support/tools/nant/README.txt
@@ -0,0 +1,144 @@
+NAnt
+
+What is it?
+-----------
+NAnt is a .NET based build tool. In theory it is kind of like make without
+make's wrinkles. In practice it's a lot like Ant.
+
+If you are not familiar with Jakarta Ant you can get more information at the
+Ant project web site (http://ant.apache.org/).
+
+
+Why NAnt?
+---------
+Because Ant was too Java specific.
+Because Ant needed the Java runtime. NAnt only needs the .NET
+or Mono runtime.
+
+
+The Latest Version
+------------------
+Details of the latest version can be found on the NAnt project web site
+http://nant.sourceforge.net/
+
+
+Compilation and Installation
+-------------------------------
+
+ a. Build Requirements
+ --------------------
+ To build NAnt, you will need the following components:
+
+ on Windows
+
+ * A version of the Microsoft .NET Framework
+
+ Available from http://msdn.microsoft.com/netframework/
+
+ you will need the .NET Framework SDK as well as the runtime components
+ if you intend to compile programs.
+
+ note that NAnt currently supports versions 1.0, 1.1 and 2.0 (Beta 1)
+ of the Microsoft .NET Framework.
+
+ or
+
+ * Mono for Windows (version 1.0 or higher)
+
+ Available from http://www.mono-project.com/downloads/
+
+ Linux/Unix
+
+ * GNU toolchain - including GNU make
+
+ * pkg-config
+
+ Available from: http://www.freedesktop.org/Software/pkgconfig
+
+ * A working Mono installation and development libraries (version 1.0 or higher)
+
+ Available from: http://www.mono-project.com/downloads/
+
+
+ b. Building the Software
+ ------------------------
+
+ Build NAnt using Microsoft .NET
+
+ GNU Make
+ --------
+
+ make install MONO= MCS=csc prefix=
+
+ eg. make install MONO= MCS=csc prefix="c:\Program Files"
+
+ NMake
+ -----
+
+ nmake -f Makefile.nmake install prefix=
+
+ eg. nmake -f Makefile.nmake install prefix="c:\Program Files"
+
+
+ Building NAnt using Mono
+
+ GNU Make
+ --------
+
+ make install prefix=
+
+ eg. make install prefix="c:\Program Files"
+
+ NMake
+ -----
+
+ nmake -f Makefile.nmake install MONO=mono CSC=mcs prefix=
+
+ eg. nmake -f Makefile.nmake install MONO=mono CSC=mcs prefix=/usr/local/
+
+Note:
+
+These instructions only apply to the source distribution of NAntContrib, as the binary distribution
+contains pre-built assemblies.
+
+
+Documentation
+-------------
+Documentation is available in HTML format, in the doc/ directory.
+
+
+License
+-------
+Copyright (C) 2001-2005 Gerry Shaw
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+As a special exception, the copyright holders of this software give you
+permission to link the assemblies with independent modules to produce new
+assemblies, regardless of the license terms of these independent modules,
+and to copy and distribute the resulting assemblies under terms of your
+choice, provided that you also meet, for each linked independent module,
+the terms and conditions of the license of that module. An independent
+module is a module which is not derived from or based on these assemblies.
+If you modify this software, you may extend this exception to your version
+of the software, but you are not obligated to do so. If you do not wish to
+do so, delete this exception statement from your version.
+
+A copy of the GNU General Public License is available in the COPYING.txt file
+included with all NAnt distributions.
+
+For more licensing information refer to the GNU General Public License on the
+GNU Project web site.
+http://www.gnu.org/copyleft/gpl.html
diff --git a/build-support/tools/nant/bin/NAnt.CompressionTasks.dll b/build-support/tools/nant/bin/NAnt.CompressionTasks.dll
new file mode 100644
index 00000000..acbb3319
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.CompressionTasks.dll differ
diff --git a/build-support/tools/nant/bin/NAnt.CompressionTasks.xml b/build-support/tools/nant/bin/NAnt.CompressionTasks.xml
new file mode 100644
index 00000000..7189682a
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.CompressionTasks.xml
@@ -0,0 +1,609 @@
+
+
+
+ NAnt.CompressionTasks
+
+
+
+
+ Expands a file packed using GZip compression.
+
+
+ Expands "test.tar.gz" to "test2.tar".
+
+
+ ]]>
+
+
+
+
+
+ Extracts the file from the gzip archive.
+
+
+
+
+ The file to expand.
+
+
+
+
+ The destination file.
+
+
+
+
+ Creates a tar file from the specified filesets.
+
+
+ Uses #ziplib (SharpZipLib), an open source Tar/Zip/GZip library written entirely in C#.
+
+
+
+ Tar all files in ${build.dir} and ${doc.dir} into a file
+ called "backup.tar.gz", and apply gzip compression to it.
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Creates the tar file.
+
+
+
+
+ The tar file to create.
+
+
+
+
+ Include empty directories in the generated tar file. The default is
+ .
+
+
+
+
+ The set of files to be included in the archive.
+
+
+
+
+ The compression method. The default is .
+
+
+
+
+ Specifies the compression methods supported by .
+
+
+
+
+ No compression.
+
+
+
+
+ GZIP compression.
+
+
+
+
+ BZIP2 compression.
+
+
+
+
+ Extracts files from a zip file.
+
+
+ Uses #ziplib (SharpZipLib), an open source Zip/GZip library written entirely in C#.
+
+
+ Extracts all the file from the zip, preserving the directory structure.
+
+
+ ]]>
+
+
+
+
+
+ Extracts the files from the zip file.
+
+
+
+
+ Extracts a file entry from the specified stream.
+
+ The containing the compressed entry.
+ The name of the entry including directory information.
+ The date of the entry.
+ The uncompressed size of the entry.
+
+ The destination directory for the entry could not be created.
+ -or-
+ The entry could not be extracted.
+
+
+ We cannot rely on the fact that the directory entry of a given file
+ is created before the file is extracted, so we should create the
+ directory if it doesn't yet exist.
+
+
+
+
+ Extracts a directory entry from the specified stream.
+
+ The containing the directory entry.
+ The name of the directory entry.
+ The date of the entry.
+
+ The destination directory for the entry could not be created.
+
+
+
+
+ The archive file to expand.
+
+
+
+
+ The directory where the expanded files should be stored. The
+ default is the project base directory.
+
+
+
+
+ Overwrite files, even if they are newer than the corresponding
+ entries in the archive. The default is .
+
+
+
+
+ The character encoding that has been used for filenames inside the
+ zip file. The default is the system's OEM code page.
+
+
+
+
+ Creates a zip file from the specified filesets.
+
+
+ Uses #ziplib (SharpZipLib), an open source Tar/Zip/GZip library written entirely in C#.
+
+
+
+ Zip all files in ${build.dir} and ${doc.dir} into a file
+ called "backup.zip".
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Creates the zip file.
+
+
+
+
+ The zip file to create.
+
+
+
+
+ The comment for the file.
+
+
+
+
+ Date/time stamp for the files in the format MM/DD/YYYY HH:MM:SS.
+
+
+
+
+ Desired level of compression. Possible values are 0 (STORE only)
+ to 9 (highest). The default is 6.
+
+
+
+
+ Include empty directories in the generated zip file. The default is
+ .
+
+
+
+
+ The set of files to be included in the archive.
+
+
+
+
+ Specifies the behaviour when a duplicate file is found. The default
+ is .
+
+
+
+
+ The character encoding to use for filenames and comment inside the
+ zip file. The default is the system's OEM code page.
+
+
+
+
+ Specifies how entries with the same name should be processed.
+
+
+
+
+ Overwrite existing entry with same name.
+
+
+
+
+ Preserve existing entry with the same name.
+
+
+
+
+ Report failure when two entries have the same name.
+
+
+
+
+ A is a with extra
+ attributes useful in the context of the .
+
+
+
+
+ A 3 digit octal string, specify the user, group and other modes
+ in the standard Unix fashion. Only applies to plain files. The
+ default is 644.
+
+
+
+
+ A 3 digit octal string, specify the user, group and other modes
+ in the standard Unix fashion. Only applies to directories. The
+ default is 755.
+
+
+
+
+ The username for the tar entry.
+
+
+
+
+ The user identifier (UID) for the tar entry.
+
+
+
+
+ The groupname for the tar entry.
+
+
+
+
+ The group identifier (GID) for the tar entry.
+
+
+
+
+ The top level directory prefix. If set, all file and directory paths
+ in the fileset will have this value prepended. Can either be a single
+ directory name or a "/" separated path.
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Get the total number of files that are represented by the
+ filesets in this collection.
+
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ A is a with extra
+ attributes useful in the context of the .
+
+
+
+
+ The top level directory prefix. If set, all file and directory paths
+ in the fileset will have this value prepended. Can either be a single
+ directory name or a "/" separated path.
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Get the total number of files that are represented by the
+ filesets in this collection.
+
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.Core.dll b/build-support/tools/nant/bin/NAnt.Core.dll
new file mode 100644
index 00000000..df9936bd
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.Core.dll differ
diff --git a/build-support/tools/nant/bin/NAnt.Core.xml b/build-support/tools/nant/bin/NAnt.Core.xml
new file mode 100644
index 00000000..4f8441fe
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.Core.xml
@@ -0,0 +1,14880 @@
+
+
+
+ NAnt.Core
+
+
+
+
+ Used to indicate that a property should be able to be converted into a
+ .
+
+
+
+
+ Base class for all validator attributes.
+
+
+
+
+ Validates the specified value.
+
+ The value to be validated.
+ The validation fails.
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Checks if the specified value can be converted to a .
+
+ The value to be checked.
+ cannot be converted to a .
+
+
+
+ Indicates that property should be treated as a XML attribute for the
+ task.
+
+
+ Examples of how to specify task attributes
+
+ #region Public Instance Properties
+
+ [BuildAttribute("out", Required=true)]
+ public string Output {
+ get { return _out; }
+ set { _out = value; }
+ }
+
+ [BuildAttribute("optimize")]
+ [BooleanValidator()]
+ public bool Optimize {
+ get { return _optimize; }
+ set { _optimize = value; }
+ }
+
+ [BuildAttribute("warnlevel")]
+ [Int32Validator(0,4)] // limit values to 0-4
+ public int WarnLevel {
+ get { return _warnLevel; }
+ set { _warnLevel = value; }
+ }
+
+ [BuildElement("sources")]
+ public FileSet Sources {
+ get { return _sources; }
+ set { _sources = value; }
+ }
+
+ #endregion Public Instance Properties
+
+ #region Private Instance Fields
+
+ private string _out = null;
+ private bool _optimize = false;
+ private int _warnLevel = 4;
+ private FileSet _sources = new FileSet();
+
+ #endregion Private Instance Fields
+
+
+
+
+
+ Initializes a new instance of the with the
+ specified name.
+
+ The name of the attribute.
+ is .
+ is a zero-length .
+
+
+
+ Gets or sets the name of the XML attribute.
+
+
+ The name of the XML attribute.
+
+
+
+
+ Gets or sets a value indicating whether the attribute is required.
+
+
+ if the attribute is required; otherwise,
+ . The default is .
+
+
+
+
+ Gets or sets a value indicating whether property references should
+ be expanded.
+
+
+ if properties should be expanded; otherwise
+ . The default is .
+
+
+
+
+ Used to specify how this attribute will be handled as the XML is
+ parsed and given to the element.
+
+
+ if XML should be processed; otherwise
+ . The default is .
+
+
+
+
+ Indicates that property should be treated as a XML arrayList
+
+
+
+ Should only be applied to properties exposing strongly typed arrays or
+ strongly typed collections.
+
+
+ The XML format is like this:
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+ Indicates that the property should be treated as an XML element and
+ further processing should be done.
+
+
+
+ Should only be applied to properties exposing strongly typed arrays or
+ strongly typed collections.
+
+
+ The XML format is like this:
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+ Initializes a new instance of the with the
+ specified name.
+
+ The name of the attribute.
+ is .
+ is a zero-length .
+
+
+
+ Gets or sets the name of the attribute.
+
+
+ The name of the attribute.
+
+
+
+
+ Gets or sets a value indicating whether the attribute is required.
+
+
+ if the attribute is required; otherwise,
+ . The default is .
+
+
+
+
+ Used to specify how this element will be handled as the XML is parsed
+ and given to the element.
+
+
+ if XML should be processed; otherwise
+ . The default is .
+
+
+
+
+ Initializes a new instance of the
+ with the specified name.
+
+ The name of the attribute.
+ is .
+ is a zero-length .
+
+
+
+ Gets or sets the type of objects that this container holds.
+
+
+ The type of the elements that this container holds.
+
+
+
+ This can be used for validation and schema generation.
+
+
+ If not specified, the type of the elements will be determined using
+ reflection.
+
+
+ is .
+
+
+
+ Indicates that the property should be treated as a container for a
+ collection of build elements.
+
+
+
+ Should only be applied to properties exposing strongly typed arrays or
+ strongly typed collections.
+
+
+ The XML format is like this:
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+ Initializes a new instance of the with the
+ specified name and child element name.
+
+ The name of the collection.
+ The name of the child elements in the collection
+ is .
+ is a zero-length .
+
+
+
+ The name of the child element within the collection.
+
+
+ The name to check for in the XML of the elements in the collection.
+
+
+ This can be used for validation and schema generation.
+
+
+
+
+ Used to indicate that a property should be able to be converted into a
+ .
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Checks if the specified value can be converted to a .
+
+ The value to be checked.
+ cannot be converted to a .
+
+
+
+ Indicates that class should be treated as a NAnt element.
+
+
+ Attach this attribute to a subclass of Element to have NAnt be able
+ to recognize it. The name should be short but must not confict
+ with any other element already in use.
+
+
+
+
+ Initializes a new instance of the
+ with the specified name.
+
+ The name of the element.
+ is .
+ is a zero-length .
+
+
+
+ Gets or sets the name of the element.
+
+
+ The name of the element.
+
+
+
+
+ Indicates that a property should be treated as a XML file set for the
+ task.
+
+
+
+
+ Initializes a new instance of the with the
+ specified name.
+
+ The name of the attribute.
+ is .
+ is a zero-length .
+
+
+
+ Indicates that the value of the property to which the attribute is
+ assigned, can be configured on the framework-level in the NAnt application
+ configuration file.
+
+
+
+ The following example shows a property of which the value can be
+ configured for a specific framework in the NAnt configuration file.
+
+
+ [FrameworkConfigurable("exename", Required=true)]
+ public virtual string ExeName {
+ get { return _exeName; }
+ set { _exeName = value; }
+ }
+
+
+
+
+
+ Initializes a new instance of the
+ with the specified attribute name.
+
+ The name of the framework configuration attribute.
+ is a .
+ is a zero-length .
+
+
+
+ Gets or sets the name of the framework configuration attribute.
+
+ The name of the framework configuration attribute.
+
+
+
+ Gets or sets a value indicating whether the configuration attribute
+ is required.
+
+
+ if the configuration attribute is required;
+ otherwise, . The default is .
+
+
+
+
+ Gets or sets a value indicating whether property references should
+ be expanded.
+
+
+ if properties should be expanded; otherwise
+ . The default is .
+
+
+
+
+ Indicates that the method should be exposed as a function in NAnt build
+ files.
+
+
+ Attach this attribute to a method of a class that derives from
+ to have NAnt be able to recognize it.
+
+
+
+
+ Initializes a new instance of the
+ class with the specified name.
+
+ The name of the function.
+ is .
+ is a zero-length .
+
+
+
+ Gets or sets the name of the function.
+
+
+ The name of the function.
+
+
+
+
+ Indicates that class should be treated as a set of functions.
+
+
+ Attach this attribute to a class that derives from
+ to have NAnt be able to recognize it as containing custom functions.
+
+
+
+
+ Initializes a new instance of the
+ class with the specified name.
+
+ The prefix used to distinguish the functions.
+ The category of the functions.
+
+ is .
+ -or-
+ is .
+
+
+ is a zero-length .
+ -or-
+ is a zero-length .
+
+
+
+
+ Gets or sets the category of the function set.
+
+
+ The name of the category of the function set.
+
+
+ This will be displayed in the user docs.
+
+
+
+
+ Gets or sets the prefix of all functions in this function set.
+
+
+ The prefix of the functions in this function set.
+
+
+
+
+ Indicates that property should be able to be converted into a
+ within the given range.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Initializes a new instance of the
+ class with the specied minimum and maximum values.
+
+ The minimum value.
+ The maximum value.
+
+
+
+ Checks whether the specified value can be converted to an
+ and whether the value lies within the range defined by the
+ and properties.
+
+ The value to be checked.
+
+
+ cannot be converted to an .
+
+ -or-
+
+ is not in the range defined by
+ and .
+
+
+
+
+
+ Gets or sets the minimum value.
+
+
+ The minimum value. The default is .
+
+
+
+
+ Gets or sets the maximum value.
+
+
+ The maximum value. The default is .
+
+
+
+
+ The base of the number to validate, which must be 2, 8, 10, or 16.
+
+
+ The base of the number to validate.
+
+
+ The default is 10.
+
+
+
+
+ Defines possible locations in which a task executable can be located.
+
+
+
+
+ Locates the task executable in the current Framework directory.
+
+
+
+
+ Locates the task executable in the current Framework SDK directory.
+
+
+
+
+ Indicates the location that a task executable can be located in.
+
+
+
+
+ Initializes a new instance of the
+ with the specified location.
+
+ The of the attribute.
+
+
+
+ Gets or sets the of the task.
+
+
+ The location type of the task to which the attribute is assigned.
+
+
+
+
+ Used to indicate whether a property should allow
+ an empty string value or not.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Checks if the specified value adheres to the rules defined by the
+ properties of the .
+
+ The value to be checked.
+ is an empty string value and is set to .
+
+
+
+ Gets or sets a value indicating whether an empty string or
+ should be a considered a valid value.
+
+
+ if an empty string or
+ should be considered a valid value; otherwise, .
+ The default is .
+
+
+
+
+ Gets or sets a regular expression. The string will be validated to
+ determine if it matches the expression.
+
+
+
+
+
+
+
+ An optional error message that can be used to better describe the
+ regular expression error.
+
+
+
+
+ Indicates that property should be treated as a XML attribute for the
+ task.
+
+
+ Examples of how to specify task attributes
+
+ // task XmlType default is string
+ [TaskAttribute("out", Required=true)]
+ string _out = null; // assign default value here
+
+ [TaskAttribute("optimize")]
+ [BooleanValidator()]
+ // during ExecuteTask you can safely use Convert.ToBoolean(_optimize)
+ string _optimize = Boolean.FalseString;
+
+ [TaskAttribute("warnlevel")]
+ [Int32Validator(0,4)] // limit values to 0-4
+ // during ExecuteTask you can safely use Convert.ToInt32(_optimize)
+ string _warnlevel = "0";
+
+ [BuildElement("sources")]
+ FileSet _sources = new FileSet();
+
+ NOTE: Attribute values must be of type of string if you want
+ to be able to have macros. The field stores the exact value during
+ InitializeTask. Just before ExecuteTask is called NAnt will expand
+ all the macros with the current values.
+
+
+
+
+ Initializes a new instance of the
+ with the specified attribute name.
+
+ The name of the task attribute.
+ is a .
+ is a zero-length .
+
+
+
+ Indicates that class should be treated as a task.
+
+
+ Attach this attribute to a subclass of Task to have NAnt be able
+ to recognize it. The name should be short but must not confict
+ with any other task already in use.
+
+
+
+
+ Initializes a new instance of the
+ with the specified name.
+
+ The name of the task.
+ is .
+ is a zero-length .
+
+
+
+ Functions as a chainable TextReader
+
+
+ Implements a abstraction over a TextReader that allows the class to represent
+ either a TextReader or another ChainableReader to which it is chained.
+
+ By passing a ChainableReader as a constructor paramater it is possiable to
+ chain many ChainableReaders together. The last ChainableReader in the chain must
+ be based on a TextReader.
+
+
+
+
+ Models a NAnt XML element in the build file.
+
+
+
+ Automatically validates attributes in the element based on attributes
+ applied to members in derived classes.
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ from the specified element.
+
+ The element that should be used to create a new instance of the class.
+
+
+
+ Performs default initialization.
+
+
+ Derived classes that wish to add custom initialization should override
+ the method.
+
+
+
+
+ Logs a message with the given priority.
+
+ The message priority at which the specified message is to be logged.
+ The message to be logged.
+
+ The actual logging is delegated to the project.
+
+
+
+
+ Logs a message with the given priority.
+
+ The message priority at which the specified message is to be logged.
+ The message to log, containing zero or more format items.
+ An array containing zero or more objects to format.
+
+ The actual logging is delegated to the project.
+
+
+
+
+ Derived classes should override to this method to provide extra
+ initialization and validation not covered by the base class.
+
+ The XML node of the element to use for initialization.
+
+
+
+ Copies all instance data of the to a given
+ .
+
+
+
+
+ Performs initialization using the given set of properties.
+
+
+
+
+ Initializes all build attributes and child elements.
+
+
+
+
+ Locates the XML node for the specified attribute in the project
+ configuration node.
+
+ The name of attribute for which the XML configuration node should be located.
+ The framework to use to obtain framework specific information, or if no framework specific information should be used.
+
+ The XML configuration node for the specified attribute, or
+ if no corresponding XML node could be
+ located.
+
+
+ If there's a valid current framework, the configuration section for
+ that framework will first be searched. If no corresponding
+ configuration node can be located in that section, the framework-neutral
+ section of the project configuration node will be searched.
+
+
+
+
+ Returns the of the
+ assigned to the specified
+ .
+
+ The of which the assigned should be retrieved.
+
+ The assigned to the specified
+ or a null reference is no
+ is assigned to the .
+
+
+
+
+ Gets or sets the parent of the element.
+
+
+ The parent of the element.
+
+
+ This will be the parent , , or
+ depending on where the element is defined.
+
+
+
+
+ Gets the name of the XML element used to initialize this element.
+
+
+ The name of the XML element used to initialize this element.
+
+
+
+
+ Gets or sets the to which this element belongs.
+
+
+ The to which this element belongs.
+
+
+
+
+ Gets the properties local to this and the
+ .
+
+
+ The properties local to this and the .
+
+
+
+
+ Gets or sets the .
+
+
+ The .
+
+
+ The defines the current namespace
+ scope and provides methods for looking up namespace information.
+
+
+
+
+ Gets or sets the XML node of the element.
+
+
+ The XML node of the element.
+
+
+
+
+ Gets or sets the location in the build file where the element is
+ defined.
+
+
+ The location in the build file where the element is defined.
+
+
+
+
+ Gets a value indicating whether the element is performing additional
+ processing using the that was used to
+ initialize the element.
+
+
+ .
+
+
+
+ Elements that need to perform additional processing of the
+ that was used to initialize the element, should
+ override this property and return .
+
+
+ When , no build errors will be reported for
+ unknown nested build elements.
+
+
+
+
+
+ Configures an using meta-data provided by
+ assigned attributes.
+
+
+
+
+ Initializes a new instance of the
+ class for the given .
+
+ The for which an should be created.
+ The to initialize the with.
+ The to use for property expansion.
+ The framework that the should target.
+
+ is .
+ -or-
+ is .
+ -or-
+ is .
+
+
+
+
+ Creates a child using property set/get methods.
+
+ The instance that represents the property of the current class.
+ The used to initialize the new instance.
+ The collection of property values to use for macro expansion.
+ The from which to obtain framework-specific information.
+ The child.
+
+
+
+ Creates an for the given
+ .
+
+ The for which an should be created.
+
+ An for the given .
+
+
+
+
+ Holds the that should be initialized.
+
+
+
+
+ Holds the that should be used to initialize
+ the .
+
+
+
+
+ Holds the dictionary that should be used for property
+ expansion.
+
+
+
+
+ Holds the framework that should be targeted by the
+ that we're configuring, or
+ if there's no current target
+ framework.
+
+
+
+
+ Holds the names of the attributes that still need to be
+ processed.
+
+
+
+
+ Holds the names of the child nodes that still need to be
+ processed.
+
+
+
+
+ Holds the logger for the current class.
+
+
+
+
+ Holds the cache of instances.
+
+
+
+
+ Gets the .
+
+
+ The .
+
+
+ The defines the current namespace
+ scope and provides methods for looking up namespace information.
+
+
+
+
+ Internal interface used for setting element attributes.
+
+
+
+
+ Makes it so all calls to Read and Peek are passed the ChainableReader
+ passed as a parameter.
+
+ ChainableReader to forward calls to
+
+
+
+ Makes it so all calls to Read and Peek are passed the TextReader
+ passed as a parameter.
+
+ TextReader to forward calls to
+
+
+
+ Forwards Peek calls to the TextReader or ChainableReader passed in the corresponding constructor.
+
+ Character or -1 if end of stream
+
+
+
+ Forwards Read calls to the TextReader or ChainableReader passed in the corresponding constructor.
+
+
+ Character or -1 if end of stream.
+
+
+
+
+ Closes the reader.
+
+
+
+
+ Calls close and supresses the finalizer for the object.
+
+
+
+
+ Gets a value indicating if the reader is backed by a stream in the
+ chain.
+
+
+ if the reader is backed by a stream;
+ otherwise, .
+
+
+
+
+ Allows a file's content to be modified while performing an operation.
+
+
+
+
+ Called after construction and after properties are set. Allows
+ for filter initialization.
+
+
+
+
+ If then the filter will be used; otherwise,
+ skipped. The default is .
+
+
+
+
+ Opposite of . If
+ then the filter will be executed; otherwise, skipped. The default
+ is .
+
+
+
+
+ Creates a new instance of the class
+ for the specified class in the
+ specified.
+
+ The containing the .
+ The class representing the .
+
+
+
+ Gets the name of the class that can be created
+ using this .
+
+
+ The name of the class that can be created using
+ this .
+
+
+
+
+ Gets the from which the filter will be
+ created.
+
+
+ The containing the filter.
+
+
+
+
+ Gets the name of the filter which the
+ can create.
+
+
+ The name of the task which the can
+ create.
+
+
+
+
+ Contains a strongly typed collection of objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a for the specified
+ task is in the collection.
+
+ The name of task for which the should be located in the collection.
+
+ if a for
+ the specified task is found in the collection; otherwise,
+ .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the for the specified task.
+
+ The name of the filter for which the should be located in the collection.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Represent a chain of NAnt filters that can be applied to a .
+
+
+
+ A FilterChain represents a collection of one or more filters that can
+ be appled to a such as the .
+ In the case of the , the contents of the copied
+ files are filtered through each filter specified in the filter chain.
+ Filtering occurs in the order the filters are specified with filtered
+ output of one filter feeding into another.
+
+
+ :--------:--->:----------:--->:----------: ... :----------:--->:--------:
+ :.Source.:--->:.Filter 1.:--->:.Filter 2.: ... :.Filter n.:--->:.target.:
+ :--------:--->:----------:--->:----------: ... :----------:--->:--------:
+
+
+ A list of all filters that come with NAnt is available here.
+
+
+ The following tasks support filtering with a FilterChain:
+
+
+
+
+
+
+
+
+
+
+
+
+ Replace all occurrences of @NOW@ with the current date/time and
+ replace tabs with spaces in all copied files.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Provides the abstract base class for types.
+
+
+
+
+ Should be overridden by derived classes. clones the referenced types
+ data into the current instance.
+
+
+
+
+ Copies all instance data of the to a given
+ .
+
+
+
+
The ID used to be referenced later.
+
+
+
The ID to use as the reference.
+
+
+
+ Gets a value indicating whether a reference to the type can be
+ defined.
+
+
+ Only types with an assigned
+ to it, can be referenced.
+
+
+
+
+ Gets the name of the datatype.
+
+
+ The name of the datatype.
+
+
+
+
+ Initializes all build attributes and child elements.
+
+
+ needs to maintain the order in which the
+ filters are specified in the build file.
+
+
+
+
+ Used to to instantiate and return the chain of stream based filters.
+
+ The that is the source of input to the filter chain.
+
+ The is the first
+ in the chain, which is based on a physical stream that feeds the chain.
+
+
+ The last in the chain.
+
+
+
+
+ The filters to apply.
+
+
+
+
+ The encoding to assume when filter-copying files. The default is
+ system's current ANSI code page.
+
+
+
+
+ Configurator that initializes filters in the order in which they've
+ been specified in the build file.
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Represents a physical . That is a reader based
+ on a stream.
+
+
+ Used by to represent a
+ based on a in the chain.
+
+
+
+
+ Parses NAnt properties and expressions
+
+
+
+ This filter parses any NAnt properties or expressions found in its input,
+ inlining their values in its output.
+
+
+ Note: Due to limitations on buffering, expressions longer than 2048
+ characters are not guaranteed to be expanded.
+
+ Filters are intended to be used as a element of a .
+
+
+ Replace all properties with their corresponding values.
+
+
+ ]]>
+
+
+
+
+
+ Holds data for expression expansion between input and output.
+
+
+
+
+ Called after construction and after properties are set. Allows
+ for filter initialization.
+
+
+
+
+ Reads the next character applying the filter logic.
+
+ Char as an int or -1 if at the end of the stream
+
+
+
+ Reads the next character applying the filter logic without advancing the current position in the stream.
+
+ Char as an int or -1 if at the end of the stream
+
+
+
+ Moves to the next character.
+
+
+
+
+ Refills the buffer, running our input through
+ .)
+
+
+
+
+ Determines whether we've passed the end of our data.
+
+
+
+
+ Replaces all occurrences of a given string in the original input with
+ user-supplied replacement string.
+
+
+
+ This filter replaces all occurrences of a given string in the original
+ input stream with a user-supplied replacement string. By default string
+ comparisons are case sensitive but this can be changed by setting the
+ optional attribute to .
+
+
+ To use this filter specify the string to be replaced with the
+ attribute and the string to replace it with using the
+ attribute.
+
+
+ Filters are intended to be used as a element of a .
+
+
+
+
+ Replace all occurrences of "3.14" with "PI".
+
+
+
+ ]]>
+
+
+
+
+ Replace all occurrences of "string", "String", etc. with "System.String".
+
+
+
+ ]]>
+
+
+
+
+
+ Construct that allows this filter to be chained to the one
+ in the parameter chainedReader.
+
+ Filter that the filter will be chained to
+
+
+
+ Reads the next character applying the filter logic.
+
+ Char as an int or -1 if at the end of the stream
+
+
+
+ Reads the next character applying the filter logic without
+ advancing the current position in the stream.
+
+ Peek currently is not supported.
+
+
+ Char as an int or -1 if at the end of the stream.
+
+
+
+
+
+ Helper function used to search for the filter's traget string. If the string
+ is found the result is true. If the string was not found false is returned and
+ nonMatchingChars contains the characters that were read to determine if the
+ string is present.
+
+
+
+ It is assumed the stream is positioned at the character after the first character
+ in the target string.
+
+
+ First character in target string
+ Ture if the stream ended while search for the string.
+ Characters that were read while searching for the string.
+
+
+
+
+ Returns the next character in the stream replacing the specified character. Using the
+ allows for the same implementation for Read and Peek
+
+ Delegate to acquire the next character. (Read/Peek)
+ Char as an int or -1 if at the end of the stream
+
+
+
+ Compares to characters taking into account the _ignoreCase flag.
+
+
+
+
+
+
+
+ The string to be replaced.
+
+
+
+
+ The new value for the replaced string.
+ Am empty string is permissible.
+
+
+
+
+ Determines if case will be ignored.
+ The default is .
+
+
+
+
+ Delegate for Read and Peek. Allows the same implementation
+ to be used for both methods.
+
+
+
+
+ Replaces tokens in the original input with user-supplied values.
+
+
+
+ This filter replaces all token surrounded by a beginning and ending
+ token. The default beginning and ending tokens both default to '@'. The
+ optional and attributes
+ can be specified to change either token. By default string
+ comparisons are case sensitive but this can be changed by setting the
+ optional attribute to .
+
+
+ Tokens are specified by using the element. It is
+ possible to specify from 1 to n tokens and replacement values. Values can
+ be any valid NAnt expression.
+
+
+ Filters are intended to be used as a element of a .
+
+
+
+
+ Replace all occurrences of the string @DATE@ with the value of property
+ "TODAY".
+
+
+
+
+
+ ]]>
+
+
+
+
+ Replace all occurrences of the string <DATE> with the value of
+ property "TODAY".
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Construct that allows this filter to be chained to the one
+ in the parameter chainedReader.
+
+ Filter that the filter will be chained to
+
+
+
+ Reads the next character applying the filter logic.
+
+ Char as an int or -1 if at the end of the stream
+
+
+
+ Reads the next character applying the filter logic without
+ advancing the current position in the stream.
+
+ Peek currently is not supported.
+
+
+ Char as an int or -1 if at the end of the stream.
+
+
+
+
+ Initialize the filter by setting its parameters.
+
+
+
+
+ Finds a token give that we are positioned at a beginning token character. Either a
+ token replacement is returned or the characters that were read looking for the token.
+
+ A token was not found
+ A token was found by there is no replacement
+ The stream ended while looking for the token
+ Either the replacement token or the characters that were read looking for the token
+
+
+
+ Returns the next character in the stream replacing the specified character. Using the
+ allows for the same implementation for Read and Peek
+
+ Delegate to acquire the next character. (Read/Peek)
+ Char as an int or -1 if at the end of the stream
+
+
+
+ Compares to characters taking into account.
+
+
+
+
+
+
+
+
+ Marks the beginning of a token. The default is "@".
+
+
+
+
+ Marks the end of a token. The default is "@".
+
+
+
+
+ Tokens and replacement values.
+
+
+
+
+ Determines if case will be ignored.
+ The default is .
+
+
+
+
+ Delegate for Read and Peek. Allows the same implementation
+ to be used for both methods.
+
+
+
+
+ Converts tabs to spaces.
+
+
+
+ The filter replaces tabs in a text file
+ with spaces.
+
+
+ Filters are intended to be used as a element of a .
+
+
+
+ Replace all tabs with four spaces.
+
+
+ ]]>
+
+
+
+
+
+ Construct that allows this filter to be chained to the one
+ in the parameter chainedReader.
+
+ Filter that the filter will be chained to
+
+
+
+ Retrieves the next character with moving the position in the stream.
+ This method is not implemented
+
+ -1 if end of stream otherwise a character
+
+
+
+ Retrieves the next character in the stream.
+
+ -1 if end of stream otherwise a character
+
+
+
+ Returns the next character in the stream replacing the specified character. Using the
+ allows for the same implementation for Read and Peek
+
+ Delegate to acquire the next character. (Read/Peek)
+ Char as an int or -1 if at the end of the stream
+
+
+
+ The number of spaces used when converting a tab. The default is
+ "8".
+
+
+
+
+ Delegate for Read and Peek. Allows the same implementation
+ to be used for both methods.
+
+
+
+
+ Functions to return information for a given assembly.
+
+
+
+
+ Gets or sets the that this functionset will
+ reference.
+
+
+ The that this functionset will reference.
+
+
+
+
+ Loads an assembly given its file name or path.
+
+ The name or path of the file that contains the manifest of the assembly.
+
+ The loaded assembly.
+
+ is an empty .
+ is not found, or the module you are trying to load does not specify a filename extension.
+ is not a valid assembly.
+ An assembly or module was loaded twice with two different evidences, or the assembly name is longer than MAX_PATH characters.
+
+
+
+ Loads an assembly given the long form of its name.
+
+ The long form of the assembly name.
+
+ The loaded assembly.
+
+ is a .
+ is not found.
+
+
+ Determine the location of the Microsoft Access 11 Primary Interop
+ Assembly by loading it using its fully qualified name, and copy it
+ to the build directory.
+
+
+
+
+ ]]>
+
+
+
+
+
+ Gets the full name of the assembly, also known as the display name.
+
+ The assembly to get the full name for.
+
+ The full name of the assembly, also known as the display name.
+
+
+
+
+ Gets an for the specified assembly.
+
+ The assembly to get an for.
+
+ An for the specified assembly.
+
+
+
+
+
+ Gets the physical location, in codebase format, of the loaded file
+ that contains the manifest.
+
+ The assembly to get the location for.
+
+ The location of the specified assembly.
+
+
+
+
+ Functions that return information about an assembly's identity.
+
+
+
+
+ Gets the location of the assembly as a URL.
+
+ The of the assembly.
+
+ The location of the assembly as a URL.
+
+
+
+
+
+ Gets the URI, including escape characters, that represents the codebase.
+
+ The of the assembly.
+
+ The URI, including escape characters, that represents the codebase.
+
+
+
+
+
+ Gets the full name of the assembly, also known as the display name.
+
+ The of the assembly.
+
+ The full name of the assembly, also known as the display name.
+
+
+
+ Output the full name of the nunit.framework assembly to the
+ build log.
+
+
+
+ ]]>
+
+
+
+
+
+
+ Gets the simple, unencrypted name of the assembly.
+
+ The of the assembly.
+
+ The simple, unencrypted name of the assembly.
+
+
+
+ Output the simple name of the nunit.framework assembly to
+ the build log.
+
+
+
+ ]]>
+
+
+
+
+
+
+ Gets the version of the assembly.
+
+ The of the assembly.
+
+ The version of the assembly.
+
+
+
+ Output the major version of the nunit.framework assembly
+ to the build log.
+
+
+
+ ]]>
+
+
+
+
+
+
+
+ Gets the for a given file.
+
+ The assembly file for which to get the .
+
+ An object representing the given file.
+
+ is an empty .
+ does not exist.
+ is not a valid assembly.
+
+ The assembly is not added to this domain.
+
+
+
+ Output the full name of the nunit.framework assembly to the
+ build log.
+
+
+
+ ]]>
+
+
+
+
+
+ Converts the specified string representation of a logical value to
+ its equivalent.
+
+ A string containing the value to convert.
+
+ if is equivalent to
+ "True"; otherwise, .
+
+ is not equivalent to or .
+
+
+
+ Converts the specified to its equivalent string
+ representation.
+
+ A to convert.
+
+ "True" if is , or
+ "False" if is .
+
+
+
+
+ Converts the argument to an integer.
+
+ value to be converted
+ converted to integer. The function fails with an exception when the conversion is not possible.
+
+
+
+ Converts the argument to double
+
+ The value to be converted.
+ converted to double. The function fails with an exception when the conversion is not possible.
+
+
+
+ Converts the argument to a string.
+
+ The value to be converted.
+
+ converted to string. The function fails
+ with an exception when the conversion is not possible.
+
+
+ Named method ConvertToString as a static ToString method would break
+ CLS compliance.
+
+
+
+
+ Converts the argument to a datetime.
+
+ value to be converted
+ converted to datetime. The function fails with an exception when the conversion is not possible.
+
+
+
+ Converts the argument to a boolean
+
+ The string value to be converted to boolean. Must be 'true' or 'false'.
+
+ converted to boolean. The function fails
+ with an exception when the conversion is not possible.
+
+
+
+
+ Gets a that is the current local date and
+ time on this computer.
+
+
+ A whose value is the current date and time.
+
+
+
+
+ Gets the year component of the specified date.
+
+ The date of which to get the year component.
+
+ The year, between 1 and 9999.
+
+
+
+
+ Gets the month component of the specified date.
+
+ The date of which to get the month component.
+
+ The month, between 1 and 12.
+
+
+
+
+ Gets the day of the month represented by the specified date.
+
+ The date of which to get the day of the month.
+
+ The day value, between 1 and 31.
+
+
+
+
+ Gets the hour component of the specified date.
+
+ The date of which to get the hour component.
+
+ The hour, between 0 and 23.
+
+
+
+
+ Gets the minute component of the specified date.
+
+ The date of which to get the minute component.
+
+ The minute, between 0 and 59.
+
+
+
+
+ Gets the seconds component of the specified date.
+
+ The date of which to get the seconds component.
+
+ The seconds, between 0 and 59.
+
+
+
+
+ Gets the milliseconds component of the specified date.
+
+ The date of which to get the milliseconds component.
+
+ The millisecond, between 0 and 999.
+
+
+
+
+ Gets the number of ticks that represent the specified date.
+
+ The date of which to get the number of ticks.
+
+ The number of ticks that represent the date and time of the
+ specified date.
+
+
+
+
+ Gets the day of the week represented by the specified date.
+
+ The date of which to get the day of the week.
+
+ The day of the week, ranging from zero, indicating Sunday, to six,
+ indicating Saturday.
+
+
+
+
+ Gets the day of the year represented by the specified date.
+
+ The date of which to get the day of the year.
+
+ The day of the year, between 1 and 366.
+
+
+
+
+ Returns the number of days in the specified month of the specified
+ year.
+
+ The year.
+ The month (a number ranging from 1 to 12).
+
+ The number of days in for the specified
+ .
+
+ is less than 1 or greater than 12.
+
+
+
+ Returns an indication whether the specified year is a leap year.
+
+ A 4-digit year.
+
+ if is a leap year;
+ otherwise, .
+
+
+
+
+ Converts the specified string representation of a date and time to
+ its equivalent.
+
+ A string containing a date and time to convert.
+
+ A equivalent to the date and time contained
+ in .
+
+ does not contain a valid string representation of a date and time.
+
+ The for the invariant culture is
+ used to supply formatting information about .
+
+
+
+
+ Converts the specified to its equivalent
+ string representation.
+
+ A to convert.
+
+ A string representation of formatted using
+ the general format specifier ("G").
+
+
+ is formatted with the
+ for the invariant culture.
+
+
+
+
+ Groups a set of functions for dealing with directories.
+
+
+
+
+ Returns the creation date and time of the specified directory.
+
+ The directory for which to obtain creation date and time information.
+
+ The creation date and time of the specified directory.
+
+ The specified directory does not exist.
+ is a zero-length string, contains only white space, or contains one or more invalid characters.
+ The specified path, file name, or both exceed the system-defined maximum length.
+
+
+
+ Returns the date and time the specified directory was last written to.
+
+ The directory for which to obtain write date and time information.
+
+ The date and time the specified directory was last written to.
+
+ The specified directory does not exist.
+ is a zero-length string, contains only white space, or contains one or more invalid characters.
+ The specified path, file name, or both exceed the system-defined maximum length.
+
+
+
+ Returns the date and time the specified directory was last accessed.
+
+ The directory for which to obtain access date and time information.
+
+ The date and time the specified directory was last accessed.
+
+ The specified directory does not exist.
+ is a zero-length string, contains only white space, or contains one or more invalid characters.
+ The specified path, file name, or both exceed the system-defined maximum length.
+ The parameter is in an invalid format.
+
+
+
+ Gets the current working directory.
+
+
+ A containing the path of the current working
+ directory.
+
+
+
+
+ Retrieves the parent directory of the specified path.
+
+ The path for which to retrieve the parent directory.
+
+ The parent directory, or an empty if
+ is the root directory, including the root
+ of a UNC server or share name.
+
+ The directory specified by is read-only.
+ is a zero-length string, contains only white space, or contains one or more invalid characters.
+ The specified path, file name, or both exceed the system-defined maximum length.
+ The specified path was not found.
+
+
+ Copy "readme.txt" from the current working directory to
+ its parent directory.
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Returns the volume information, root information, or both for the
+ specified path.
+
+ The path for which to retrieve the parent directory.
+
+ A string containing the volume information, root information, or
+ both for the specified path.
+
+ is a zero-length string, contains only white space, or contains one or more invalid characters.
+ The specified path, file name, or both exceed the system-defined maximum length.
+
+
+
+ Determines whether the given path refers to an existing directory
+ on disk.
+
+ The path to test.
+
+ if refers to an
+ existing directory; otherwise, .
+
+
+ Remove directory "test", if it exists.
+
+
+ ]]>
+
+
+
+
+
+ Converts the specified string representation of a number to its
+ double-precision floating point number equivalent.
+
+ A string containing a number to convert.
+
+ A double-precision floating point number equivalent to the numeric
+ value or symbol specified in .
+
+ is not a number in a valid format.
+ represents a number less than or greater than .
+
+ The for the invariant culture is
+ used to supply formatting information about .
+
+
+
+
+ Converts the specified to its equivalent
+ string representation.
+
+ A to convert.
+
+ The string representation of formatted
+ using the general format specifier ("G").
+
+
+ is formatted with the
+ for the invariant culture.
+
+
+
+
+ Provide information about the current environment and platform.
+
+
+
+
+ Gets the path to the system special folder identified by the
+ specified enumeration.
+
+ An enumerated constant that identifies a system special folder.
+
+ The path to the specified system special folder, if that folder
+ physically exists on your computer; otherwise, the empty string ("").
+
+ is not a member of .
+
+
+ Copy "out.log" from the project base directory to the
+ program files directory.
+
+
+
+ ]]>
+
+
+
+
+
+ Gets the NetBIOS name of this local computer.
+
+
+ The NetBIOS name of this local computer.
+
+ The name of this computer cannot be obtained.
+
+
+
+ Gets an object that represents the
+ current operating system.
+
+
+ An object that contains the current
+ platform identifier and version number.
+
+
+
+ Output string representation of the current operating system.
+
+
+
+ ]]>
+
+ If the operating system is Windows 2000, the output is:
+
+ Microsoft Windows NT 5.0.2195.0
+
+
+
+
+
+
+ Gets the user name of the person who started the current thread.
+
+
+ The name of the person logged on to the system who started the
+ current thread.
+
+
+
+ Modify the home directory of the current user on unix-based systems.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Returns the value of the specified environment variable.
+
+ The environment variable of which the value should be returned.
+
+ The value of the specified environment variable.
+
+ Environment variable does not exist.
+
+
+
+ Gets a value indicating whether the specified environment variable
+ exists.
+
+ The environment variable that should be checked.
+
+ if the environment variable exists; otherwise,
+ .
+
+
+
+ Execute a set of tasks only if the "BUILD_DEBUG" environment
+ variable is set.
+
+
+
+ ...
+
+ ]]>
+
+
+
+
+
+ Gets a object that describes the major,
+ minor, build, and revision numbers of the Common Language Runtime.
+
+
+ A Version object.
+
+
+ Output the major version of the CLR.
+
+
+ ]]>
+
+
+
+
+
+ Groups a set of functions for dealing with files.
+
+
+
+
+ Returns the creation date and time of the specified file.
+
+ The file for which to obtain creation date and time information.
+
+ The creation date and time of the specified file.
+
+ The specified file does not exist.
+ is a zero-length string, contains only white space, or contains one or more invalid characters.
+ The specified path, file name, or both exceed the system-defined maximum length.
+ The parameter is in an invalid format.
+
+
+
+ Returns the date and time the specified file was last written to.
+
+ The file for which to obtain write date and time information.
+
+ The date and time the specified file was last written to.
+
+ The specified file does not exist.
+ is a zero-length string, contains only white space, or contains one or more invalid characters.
+ The specified path, file name, or both exceed the system-defined maximum length.
+
+
+
+ Returns the date and time the specified file was last accessed.
+
+ The file for which to obtain access date and time information.
+
+ The date and time the specified file was last accessed.
+
+ The specified file does not exist.
+ is a zero-length string, contains only white space, or contains one or more invalid characters.
+ The specified path, file name, or both exceed the system-defined maximum length.
+ The parameter is in an invalid format.
+
+
+
+ Determines whether the specified file exists.
+
+ The file to check.
+
+ if refers to an
+ existing file; otherwise, .
+
+
+ Execute a set of tasks, if file "output.xml" does not exist.
+
+
+ ...
+
+ ]]>
+
+
+
+
+
+ Determines whether is more or equal
+ up-to-date than .
+
+ The file to check against the target file.
+ The file for which we want to determine the status.
+
+ if is more
+ or equal up-to-date than ; otherwise,
+ .
+
+ or is a zero-length string, contains only white space, or contains one or more invalid characters.
+ The specified path, file name, or both of either or exceed the system-defined maximum length.
+
+
+
+ Gets the length of the file.
+
+ filename
+
+ Length in bytes, of the file named .
+
+ The file specified cannot be found.
+
+
+
+ Checks if a given file is an assembly.
+
+ The name or path of the file to be checked.
+ True if the file is a valid assembly, false if it's not or if the assembly seems corrupted (invalid headers or metadata).
+ is a null .
+ is an empty .
+ is not found, or the file you are trying to check does not specify a filename extension.
+ The caller does not have path discovery permission.
+
+
+
+ Functions that provide version information for a physical file on disk.
+
+
+
+
+ Returns a representing the version
+ information associated with the specified file.
+
+ The file to retrieve the version information for.
+
+ A containing information about the file.
+
+ The file specified cannot be found.
+
+
+
+ Gets the name of the company that produced the file.
+
+ A instance containing version information about a file.
+
+ The name of the company that produced the file.
+
+
+
+
+ Gets the file version of a file.
+
+ A instance containing version information about a file.
+
+ The file version of a file.
+
+
+
+
+
+ Gets the name of the product the file is distributed with.
+
+ A instance containing version information about a file.
+
+ The name of the product the file is distributed with.
+
+
+
+
+ Gets the product version of a file.
+
+ A instance containing version information about a file.
+
+ The product version of a file.
+
+
+
+
+
+ Converts the specified string representation of a number to its
+ 32-bit signed integer equivalent.
+
+ A string containing a number to convert.
+
+ A 32-bit signed integer equivalent to the number contained in
+ .
+
+ is not of the correct format.
+ represents a number less than or greater than .
+
+ The for the invariant culture is
+ used to supply formatting information about .
+
+
+
+
+ Converts the specified to its equivalent string
+ representation.
+
+ A to convert.
+
+ The string representation of , consisting
+ of a negative sign if the value is negative, and a sequence of
+ digits ranging from 0 to 9 with no leading zeroes.
+
+
+ is formatted with the
+ for the invariant culture.
+
+
+
+
+ Converts the specified string representation of a number to its
+ 64-bit signed integer equivalent.
+
+ A string containing a number to convert.
+
+ A 64-bit signed integer equivalent to the number contained in
+ .
+
+ is not of the correct format.
+ represents a number less than or greater than .
+
+ The for the invariant culture is
+ used to supply formatting information about .
+
+
+
+
+ Converts the specified to its equivalent string
+ representation.
+
+ A to convert.
+
+ The string representation of , consisting
+ of a negative sign if the value is negative, and a sequence of
+ digits ranging from 0 to 9 with no leading zeroes.
+
+
+ is formatted with the
+ for the invariant culture.
+
+
+
+
+ Rounds the value to the nearest whole number
+
+ Number to be rounded, can be anything convertible to a double.
+
+ Rounded value.
+
+
+
+
+ Returns the largest whole number less than or equal to the specified
+ number.
+
+ value to be , can be anything convertible to a double
+
+ The largest whole number less than or equal to the specified number.
+
+
+
+
+ Returns the smallest whole number greater than or equal to the specified number
+
+ value
+
+ The smallest whole number greater than or equal to the specified number.
+
+
+
+
+ Returns the absolute value of the specified number
+
+ value to take the absolute value from
+
+ when is greater
+ than or equal to zero; otherwise, -.
+
+
+
+
+ Gets the base directory of the appdomain in which NAnt is running.
+
+
+ The base directory of the appdomain in which NAnt is running.
+
+
+
+
+ Gets the NAnt assembly.
+
+
+ The NAnt assembly.
+
+
+
+
+ Gets the name of the current project.
+
+
+ The name of the current project, or an empty
+ if no name is specified in the build file.
+
+
+
+
+ Gets the form of the build file.
+
+
+ The form of the build file, or
+ an empty if the project is not file backed.
+
+
+
+
+ Gets the local path to the build file.
+
+
+ The local path of the build file, or an empty
+ if the project is not file backed.
+
+
+
+
+ Gets the name of the target that will be executed when no other
+ build targets are specified.
+
+
+ The name of the target that will be executed when no other build
+ targets are specified, or an empty if no
+ default target is defined for the project.
+
+
+
+
+ Gets the base directory of the current project.
+
+
+ The base directory of the current project.
+
+
+
+
+ Checks whether the specified target exists.
+
+ The target to test.
+
+ if the specified target exists; otherwise,
+ .
+
+
+
+ Execute target "clean", if it exists.
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Gets the name of the target being executed.
+
+
+ A that contains the name of the target
+ being executed.
+
+ No target is being executed.
+
+
+
+ Checks whether the specified target has already been executed.
+
+ The target to test.
+
+ if the specified target has already been
+ executed; otherwise, .
+
+ Target does not exist.
+
+
+
+ Checks whether the specified task exists.
+
+ The task to test.
+
+ if the specified task exists; otherwise,
+ .
+
+
+
+
+ Returns the from which the specified task
+ was loaded.
+
+ The name of the task to get the of.
+
+ The from which the specified task was loaded.
+
+ Task is not available.
+
+
+
+ Checks whether the specified property exists.
+
+ The property to test.
+
+ if the specified property exists; otherwise,
+ .
+
+
+
+ Execute a set of tasks if the "build.debug" property
+ exists.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Checks whether the specified property is read-only.
+
+ The property to test.
+
+ if the specified property is read-only;
+ otherwise, .
+
+
+ Check whether the "debug" property is read-only.
+ property::is-readonly('debug')
+
+ Property has not been set.
+
+
+
+ Checks whether the specified property is a dynamic property.
+
+ The property to test.
+
+ if the specified property is a dynamic
+ property; otherwise, .
+
+ Property has not been set.
+
+
+ Check whether the "debug" property is a dynamic property.
+
+ property::is-dynamic('debug')
+
+
+
+
+ Checks whether the specified framework exists.
+
+ The framework to test.
+
+ if the specified framework exists; otherwise,
+ .
+
+
+
+
+ Checks whether the SDK for the specified framework is installed.
+
+ The framework to test.
+
+ if the SDK for specified framework is installed;
+ otherwise, .
+
+
+
+
+
+
+ Gets the identifier of the current target framework.
+
+
+ The identifier of the current target framework.
+
+
+
+
+ Gets the identifier of the runtime framework.
+
+
+ The identifier of the runtime framework.
+
+
+
+
+ Gets the family of the specified framework.
+
+ The framework of which the family should be returned.
+
+ The family of the specified framework.
+
+ is not a valid framework identifier.
+
+
+
+
+
+ Gets the version of the specified framework.
+
+ The framework of which the version should be returned.
+
+ The version of the specified framework.
+
+ is not a valid framework identifier.
+
+
+
+
+
+ Gets the description of the specified framework.
+
+ The framework of which the description should be returned.
+
+ The description of the specified framework.
+
+ is not a valid framework identifier.
+
+
+
+
+
+ Gets the Common Language Runtime version of the specified framework.
+
+ The framework of which the Common Language Runtime version should be returned.
+
+ The Common Language Runtime version of the specified framework.
+
+ is not a valid framework identifier.
+
+
+
+
+
+ Gets the framework directory of the specified framework.
+
+ The framework of which the framework directory should be returned.
+
+ The framework directory of the specified framework.
+
+ is not a valid framework identifier.
+
+
+
+
+
+ Gets the assembly directory of the specified framework.
+
+ The framework of which the assembly directory should be returned.
+
+ The assembly directory of the specified framework.
+
+ is not a valid framework identifier.
+
+
+
+
+
+ Gets the SDK directory of the specified framework.
+
+ The framework of which the SDK directory should be returned.
+
+ The SDK directory of the specified framework, or an empty
+ if the SDK of the specified framework is not
+ installed.
+
+ is not a valid framework identifier.
+
+
+
+
+
+ Gets the runtime engine of the specified framework.
+
+ The framework of which the runtime engine should be returned.
+
+ The full path to the runtime engine of the specified framework, or
+ an empty if no runtime engine is defined
+ for the specified framework.
+
+ is not a valid framework identifier.
+
+
+
+
+
+ Checks whether the specified framework is valid.
+
+ The framework to check.
+ is not a valid framework identifier.
+
+
+
+ Gets the name of the platform on which NAnt is running.
+
+
+ The name of the platform on which NAnt is running.
+
+
+
+
+ Checks whether NAnt is running on the win32 platform.
+
+
+ if NAnt is running on the win32 platform;
+ otherwise, .
+
+
+
+
+ Checks whether NAnt is running on unix.
+
+
+ if NAnt is running on unix;
+ otherwise, .
+
+
+
+
+ Functions that return information about an operating system.
+
+
+
+
+ Gets a value that identifies the operating
+ system platform.
+
+ The operating system.
+
+ value that identifies the operating system
+ platform.
+
+
+
+
+
+ Gets a object that identifies this operating
+ system.
+
+ The operating system.
+
+ A object that describes the major version,
+ minor version, build, and revision of the operating system.
+
+
+
+
+
+ Converts the value of the specified operating system to its equivalent
+ representation.
+
+ The operating system.
+
+ The representation of
+ .
+
+
+
+ Output string representation of the current operating system.
+
+
+
+ ]]>
+
+ If the operating system is Windows 2000, the output is:
+
+ Microsoft Windows NT 5.0.2195.0
+
+
+
+
+
+
+ Returns the fully qualified path.
+
+ The file or directory for which to obtain absolute path information.
+
+ A string containing the fully qualified location of ,
+ such as "C:\MyFile.txt".
+
+ is a zero-length string, contains only white space, or contains one or more invalid characters.
+ contains a colon (":").
+ The specified path, file name, or both exceed the system-defined maximum length.
+
+
+
+ Combines two paths.
+
+ first path
+ second path
+
+ A string containing the combined paths. If one of the specified paths
+ is a zero-length string, this method returns the other path. If
+ contains an absolute path, this method
+ returns .
+
+ or contain one or more invalid characters.
+
+
+
+ Changes the extension of the path string.
+
+ The path information to modify. The path cannot contain any of the characters
+ defined in InvalidPathChars.
+ The new extension (with a leading period). Specify a null reference
+ to remove an existing extension from .
+
+
+ A string containing the modified path information.
+
+
+ On Windows-based desktop platforms, if is
+ an empty , the path information is returned
+ unmodified. If has no extension, the returned
+ path contains
+ appended to the end of .
+
+
+
+ For more information see the documentation.
+
+ contains one or more invalid characters.
+
+
+
+ Returns the directory information for the specified path string.
+
+ The path of a file or directory.
+
+ A containing directory information for
+ , or an empty if
+ denotes a root directory, or does not
+ contain directory information.
+
+ contains invalid characters, is empty, or contains only white spaces.
+
+
+
+ Returns the extension for the specified path string.
+
+ The path string from which to get the extension.
+
+ A containing the extension of the specified
+ (including the "."), or an empty
+ if does not have
+ extension information.
+
+ contains one or more invalid characters.
+
+
+
+ Returns the filename for the specified path string.
+
+ The path string from which to obtain the file name and extension.
+
+
+ A consisting of the characters after the last
+ directory character in path.
+
+
+ If the last character of is a directory or
+ volume separator character, an empty is returned.
+
+
+ contains one or more invalid characters.
+
+
+
+ Returns the filename without extension for the specified path string.
+
+ The path of the file.
+
+ A containing the returned
+ by , minus the last period (.) and all
+ characters following it.
+
+ contains one or more invalid characters.
+
+
+
+ Gets the root directory of the specified path.
+
+ The path from which to obtain root directory information.
+
+ A containing the root directory of
+ , such as "C:\", or an empty
+ if does not contain root directory information.
+
+ contains invalid characters, or is empty.
+
+
+
+ Returns a uniquely named zero-byte temporary file on disk and returns the full path to that file.
+
+
+ A containing the name of the temporary file.
+
+
+
+
+ Gets the path to the temporary directory.
+
+
+ A containing the path information of a
+ temporary directory.
+
+
+
+
+ Determines whether a path string includes an extension.
+
+ The path to search for an extension.
+
+ . if the characters that follow the last
+ directory separator or volume separator in the
+ include a period (.) followed by one or more characters;
+ otherwise, .
+
+ contains one or more invalid characters.
+
+
+
+ Determines whether a path string is absolute.
+
+ The path to test.
+
+ if path contains an absolute ;
+ otherwise, .
+
+ contains one or more invalid characters.
+
+
+
+ Gets the value of a variable for the specified package.
+
+ The package for which the variable should be retrieved.
+ The name of the variable.
+
+ The value of variable for the specified
+ package.
+
+ pkg-config could not be started.
+ does not exist.
+
+
+
+ Gets the link flags required to compile the package, including all
+ its dependencies.
+
+ The package for which the link flags should be retrieved.
+
+ The link flags required to compile the package.
+
+ pkg-config could not be started.
+ does not exist.
+
+
+
+ Gets the compile flags required to compile the package, including all
+ its dependencies.
+
+ The package for which the compile flags should be retrieved.
+
+ The pre-processor and compile flags required to compile the package.
+
+ pkg-config could not be started.
+ does not exist.
+
+
+
+ Determines the version of the given package.
+
+ The package to get the version of.
+
+ The version of the given package.
+
+ pkg-config could not be started.
+ does not exist.
+
+
+
+ Determines whether the given package is at least version
+ .
+
+ The package to check.
+ The version the package should at least have.
+
+ if the given package is at least version
+ ; otherwise, .
+
+ pkg-config could not be started.
+
+
+
+ Determines whether the given package is exactly version
+ .
+
+ The package to check.
+ The version the package should have.
+
+ if the given package is exactly version
+ ; otherwise, .
+
+ pkg-config could not be started.
+
+
+
+ Determines whether the given package is at no newer than version
+ .
+
+ The package to check.
+ The version the package should maximum have.
+
+ if the given package is at no newer than
+ version ; otherwise, .
+
+ pkg-config could not be started.
+
+
+
+ Determines whether the given package is between two versions.
+
+ The package to check.
+ The version the package should at least have.
+ The version the package should maximum have.
+
+ if the given package is between
+ and ; otherwise, .
+
+ pkg-config could not be started.
+
+
+
+ Determines whether the given package exists.
+
+ The package to check.
+
+ if the package exists; otherwise,
+ .
+
+ pkg-config could not be started.
+
+
+
+ Runs pkg-config with the specified arguments and returns a
+ based on the exit code.
+
+ The arguments to pass to pkg-config.
+
+ if pkg-config exited with exit code 0;
+ otherwise,
+
+
+
+
+ Runs pkg-config with the specified arguments and returns the result
+ as a .
+
+ The arguments to pass to pkg-config.
+
+ The result of running pkg-config with the specified arguments.
+
+
+
+
+ Factory method to return a new instance of ExecTask
+
+
+
+
+
+
+ Returns the length of the specified string.
+
+ input string
+
+ The string's length.
+
+
+ string::get-length('foo') ==> 3
+
+
+ string::get-length('') ==> 0
+
+
+
+
+ Returns a substring of the specified string.
+
+ input string
+ position of the start of the substring
+ the length of the substring
+
+
+ If the is greater than zero, the
+ function returns a substring starting at character position
+ with a length of
+ characters.
+
+
+ If the is equal to zero, the function
+ returns an empty string.
+
+
+ or is less than zero.
+ is greater than the length of .
+ plus indicates a position not within .
+
+ string::substring('testing string', 0, 4) ==> 'test'
+
+
+ string::substring('testing string', 8, 3) ==> 'str'
+
+
+ string::substring('testing string', 8, 0) ==> ''
+
+
+ string::substring('testing string', -1, 5) ==> ERROR
+
+
+ string::substring('testing string', 8, -1) ==> ERROR
+
+
+ string::substring('testing string', 5, 17) ==> ERROR
+
+
+
+
+ Tests whether the specified string starts with the specified prefix
+ string.
+
+ test string
+ prefix string
+
+ when is a prefix for
+ the string . Meaning, the characters at the
+ beginning of are identical to
+ ; otherwise, .
+
+
+ This function performs a case-sensitive word search using the
+ invariant culture.
+
+
+ string::starts-with('testing string', 'test') ==> true
+
+
+ string::starts-with('testing string', 'testing') ==> true
+
+
+ string::starts-with('testing string', 'string') ==> false
+
+
+ string::starts-with('test', 'testing string') ==> false
+
+
+
+
+ Tests whether the specified string ends with the specified suffix
+ string.
+
+ test string
+ suffix string
+
+ when is a suffix for
+ the string . Meaning, the characters at the
+ end of are identical to
+ ; otherwise, .
+
+
+ This function performs a case-sensitive word search using the
+ invariant culture.
+
+
+ string::ends-with('testing string', 'string') ==> true
+
+
+ string::ends-with('testing string', '') ==> true
+
+
+ string::ends-with('testing string', 'bring') ==> false
+
+
+ string::ends-with('string', 'testing string') ==> false
+
+
+
+
+ Returns the specified string converted to lowercase.
+
+ input string
+
+ The string in lowercase.
+
+
+ The casing rules of the invariant culture are used to convert the
+ to lowercase.
+
+
+ string::to-lower('testing string') ==> 'testing string'
+
+
+ string::to-lower('Testing String') ==> 'testing string'
+
+
+ string::to-lower('Test 123') ==> 'test 123'
+
+
+
+
+ Returns the specified string converted to uppercase.
+
+ input string
+
+ The string in uppercase.
+
+
+ The casing rules of the invariant culture are used to convert the
+ to uppercase.
+
+
+ string::to-upper('testing string') ==> 'TESTING STRING'
+
+
+ string::to-upper('Testing String') ==> 'TESTING STRING'
+
+
+ string::to-upper('Test 123') ==> 'TEST 123'
+
+
+
+
+ Returns a string corresponding to the replacement of a given string
+ with another in the specified string.
+
+ input string
+ A to be replaced.
+ A to replace all occurrences of .
+
+ A equivalent to but
+ with all instances of replaced with
+ .
+
+ is an empty string.
+
+ This function performs a word (case-sensitive and culture-sensitive)
+ search to find .
+
+
+ string::replace('testing string', 'test', 'winn') ==> 'winning string'
+
+
+ string::replace('testing string', 'foo', 'winn') ==> 'testing string'
+
+
+ string::replace('testing string', 'ing', '') ==> 'test str'
+
+
+ string::replace('banana', 'ana', 'ana') ==> 'banana'
+
+
+
+
+ Tests whether the specified string contains the given search string.
+
+ The string to search.
+ The string to locate within .
+
+ if is found in
+ ; otherwise, .
+
+
+ This function performs a case-sensitive word search using the
+ invariant culture.
+
+
+ string::contains('testing string', 'test') ==> true
+
+
+ string::contains('testing string', '') ==> true
+
+
+ string::contains('testing string', 'Test') ==> false
+
+
+ string::contains('testing string', 'foo') ==> false
+
+
+
+
+ Returns the position of the first occurrence in the specified string
+ of the given search string.
+
+ The string to search.
+ The string to locate within .
+
+
+ The lowest-index position of in
+ if it is found, or -1 if
+ does not contain .
+
+
+ If is an empty string, the return value
+ will always be 0.
+
+
+
+ This function performs a case-sensitive word search using the
+ invariant culture.
+
+
+ string::index-of('testing string', 'test') ==> 0
+
+
+ string::index-of('testing string', '') ==> 0
+
+
+ string::index-of('testing string', 'Test') ==> -1
+
+
+ string::index-of('testing string', 'ing') ==> 4
+
+
+
+
+ Returns the position of the last occurrence in the specified string
+ of the given search string.
+
+ The string to search.
+ The string to locate within .
+
+
+ The highest-index position of in
+ if it is found, or -1 if
+ does not contain .
+
+
+ If is an empty string, the return value
+ is the last index position in .
+
+
+
+ This function performs a case-sensitive word search using the
+ invariant culture.
+
+
+ string::last-index-of('testing string', 'test') ==> 0
+
+
+ string::last-index-of('testing string', '') ==> 13
+
+
+ string::last-index-of('testing string', 'Test') ==> -1
+
+
+ string::last-index-of('testing string', 'ing') ==> 11
+
+
+
+
+ Returns the given string left-padded to the given length.
+
+ The that needs to be left-padded.
+ The number of characters in the resulting string, equal to the number of original characters plus any additional padding characters.
+ A Unicode padding character.
+
+ If the length of is at least
+ , then a new identical
+ to is returned. Otherwise,
+ will be padded on the left with as many
+ characters as needed to create a length of .
+
+ is less than zero.
+
+ Note that only the first character of
+ will be used when padding the result.
+
+
+ string::pad-left('test', 10, ' ') ==> ' test'
+
+
+ string::pad-left('test', 10, 'test') ==> 'tttttttest'
+
+
+ string::pad-left('test', 3, ' ') ==> 'test'
+
+
+ string::pad-left('test', -4, ' ') ==> ERROR
+
+
+
+
+ Returns the given string right-padded to the given length.
+
+ The that needs to be right-padded.
+ The number of characters in the resulting string, equal to the number of original characters plus any additional padding characters.
+ A Unicode padding character.
+
+ If the length of is at least
+ , then a new identical
+ to is returned. Otherwise,
+ will be padded on the right with as many
+ characters as needed to create a length of .
+
+ is less than zero.
+
+ Note that only the first character of
+ will be used when padding the result.
+
+
+ string::pad-right('test', 10, ' ') ==> 'test '
+
+
+ string::pad-right('test', 10, 'abcd') ==> 'testaaaaaa'
+
+
+ string::pad-right('test', 3, ' ') ==> 'test'
+
+
+ string::pad-right('test', -3, ' ') ==> ERROR
+
+
+
+
+ Returns the given string trimmed of whitespace.
+
+ input string
+
+ The string with any leading or trailing
+ white space characters removed.
+
+
+ string::trim(' test ') ==> 'test'
+
+
+ string::trim('\t\tfoo \r\n') ==> 'foo'
+
+
+
+
+ Returns the given string trimmed of leading whitespace.
+
+ input string
+
+ The string with any leading
+ whites pace characters removed.
+
+
+ string::trim-start(' test ') ==> 'test '
+
+
+ string::trim-start('\t\tfoo \r\n') ==> 'foo \r\n'
+
+
+
+
+ Returns the given string trimmed of trailing whitespace.
+
+ input string
+
+ The string with any trailing
+ white space characters removed.
+
+
+ string::trim-end(' test ') ==> ' test'
+
+
+ string::trim-end('\t\tfoo \r\n') ==> '\t\tfoo'
+
+
+
+
+ Returns the total number of days represented by the specified
+ , expressed in whole and fractional days.
+
+ A .
+
+ The total number of days represented by the given .
+
+
+
+
+ Returns the total number of hours represented by the specified
+ , expressed in whole and fractional hours.
+
+ A .
+
+ The total number of hours represented by the given .
+
+
+
+
+ Returns the total number of minutes represented by the specified
+ , expressed in whole and fractional minutes.
+
+ A .
+
+ The total number of minutes represented by the given .
+
+
+
+
+ Returns the total number of seconds represented by the specified
+ , expressed in whole and fractional seconds.
+
+ A .
+
+ The total number of seconds represented by the given .
+
+
+
+
+ Returns the total number of milliseconds represented by the specified
+ , expressed in whole and fractional milliseconds.
+
+ A .
+
+ The total number of milliseconds represented by the given
+ .
+
+
+
+
+ Returns the number of whole days represented by the specified
+ .
+
+ A .
+
+ The number of whole days represented by the given
+ .
+
+
+
+ Remove all files that have not been modified in the last 7 days from directory "binaries".
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Returns the number of whole hours represented by the specified
+ .
+
+ A .
+
+ The number of whole hours represented by the given
+ .
+
+
+
+
+ Returns the number of whole minutes represented by the specified
+ .
+
+ A .
+
+ The number of whole minutes represented by the given
+ .
+
+
+
+
+ Returns the number of whole seconds represented by the specified
+ .
+
+ A .
+
+ The number of whole seconds represented by the given
+ .
+
+
+
+
+ Returns the number of whole milliseconds represented by the specified
+ .
+
+ A .
+
+ The number of whole milliseconds represented by the given
+ .
+
+
+
+
+ Returns the number of ticks contained in the specified
+ .
+
+ A .
+
+ The number of ticks contained in the given .
+
+
+
+
+ Returns a that represents a specified number
+ of days, where the specification is accurate to the nearest millisecond.
+
+ A number of days, accurate to the nearest millisecond.
+
+ A that represents .
+
+
+
+
+ Returns a that represents a specified number
+ of hours, where the specification is accurate to the nearest
+ millisecond.
+
+ A number of hours, accurate to the nearest millisecond.
+
+ A that represents .
+
+
+
+
+ Returns a that represents a specified number
+ of minutes, where the specification is accurate to the nearest
+ millisecond.
+
+ A number of minutes, accurate to the nearest millisecond.
+
+ A that represents .
+
+
+
+
+ Returns a that represents a specified number
+ of seconds, where the specification is accurate to the nearest
+ millisecond.
+
+ A number of seconds, accurate to the nearest millisecond.
+
+ A that represents .
+
+
+
+
+ Returns a that represents a specified number
+ of milliseconds.
+
+ A number of milliseconds.
+
+ A that represents .
+
+
+
+
+ Returns a that represents a specified time,
+ where the specification is in units of ticks.
+
+ A number of ticks that represent a time.
+
+ A that represents .
+
+
+
+
+ Constructs a from a time indicated by a
+ specified string.
+
+ A string.
+
+ A that corresponds to .
+
+ has an invalid format.
+ At least one of the hours, minutes, or seconds components is outside its valid range.
+
+
+
+ Converts the specified to its equivalent
+ string representation.
+
+ A to convert.
+
+ The string representation of . The format
+ of the return value is of the form: [-][d.]hh:mm:ss[.ff].
+
+
+
+
+ Gets the value of the major component of a given version.
+
+ A version.
+
+ The major version number.
+
+
+
+
+
+
+
+ Gets the value of the minor component of a given version.
+
+ A version.
+
+ The minor version number.
+
+
+
+
+
+
+
+ Gets the value of the build component of a given version.
+
+ A version.
+
+ The build number, or -1 if the build number is undefined.
+
+
+
+
+
+
+
+ Gets the value of the revision component of a given version.
+
+ A version.
+
+ The revision number, or -1 if the revision number is undefined.
+
+
+
+
+
+
+
+ Converts the specified string representation of a version to
+ its equivalent.
+
+ A string containing the major, minor, build, and revision numbers, where each number is delimited with a period character ('.').
+
+ A instance representing the specified
+ .
+
+ has fewer than two components or more than four components.
+ A major, minor, build, or revision component is less than zero.
+ At least one component of does not parse to a decimal integer.
+
+
+
+ Converts the specified to its equivalent
+ string representation.
+
+ A to convert.
+
+ The string representation of the values of the major, minor, build,
+ and revision components of the specified .
+
+
+
+
+
+
+
+ Changes the file attributes of a file or set of files and directories.
+
+
+
+ does not have the concept of turning
+ attributes off. Instead you specify all the attributes that you want
+ turned on and the rest are turned off by default.
+
+
+ Refer to the enumeration in the .NET SDK
+ for more information about file attributes.
+
+
+
+
+ Set the read-only file attribute for the specified file in
+ the project directory.
+
+
+
+ ]]>
+
+
+
+
+ Set the normal file attribute for the specified file.
+
+
+
+ ]]>
+
+
+
+
+ Set the normal file attribute for all executable files in
+ the current project directory and sub-directories.
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Provides the abstract base class for tasks.
+
+
+ A task is a piece of code that can be executed.
+
+
+
+
+ Executes the task unless it is skipped.
+
+
+
+
+ Logs a message with the given priority.
+
+ The message priority at which the specified message is to be logged.
+ The message to be logged.
+
+
+ The actual logging is delegated to the project.
+
+
+ If the attribute is set on the task and a
+ message is logged with level , the
+ priority of the message will be increased to
+ when the threshold of the build log is .
+
+
+ This will allow individual tasks to run in verbose mode while
+ the build log itself is still configured with threshold
+ .
+
+
+ The threshold of the project is not taken into account to determine
+ whether a message should be passed to the logging infrastructure,
+ as build listeners might be interested in receiving all messages.
+
+
+
+
+
+ Logs a formatted message with the given priority.
+
+ The message priority at which the specified message is to be logged.
+ The message to log, containing zero or more format items.
+ An array containing zero or more objects to format.
+
+
+ The actual logging is delegated to the project.
+
+
+ If the attribute is set on the task and a
+ message is logged with level , the
+ priority of the message will be increased to .
+ when the threshold of the build log is .
+
+
+ This will allow individual tasks to run in verbose mode while
+ the build log itself is still configured with threshold
+ .
+
+
+
+
+
+ Determines whether build output is enabled for the given
+ .
+
+ The to check.
+
+ if messages with the given
+ should be passed on to the logging infrastructure; otherwise,
+ .
+
+
+ The threshold of the project is not taken into account to determine
+ whether a message should be passed to the logging infrastructure,
+ as build listeners might be interested in receiving all messages.
+
+
+
+
+ Initializes the configuration of the task using configuration
+ settings retrieved from the NAnt configuration file.
+
+
+ TO-DO : Remove this temporary hack when a permanent solution is
+ available for loading the default values from the configuration
+ file if a build element is constructed from code.
+
+
+
+ Deprecated (to be deleted).
+
+
+ Initializes the task.
+
+
+ Executes the task.
+
+
+
+ Determines if task failure stops the build, or is just reported.
+ The default is .
+
+
+
+
+ Determines whether the task should report detailed build log messages.
+ The default is .
+
+
+
+
+ If then the task will be executed; otherwise,
+ skipped. The default is .
+
+
+
+
+ Opposite of . If
+ then the task will be executed; otherwise, skipped. The default is
+ .
+
+
+
+
+ The name of the task.
+
+
+
+
+ The prefix used when sending messages to the log.
+
+
+
+
+ Gets or sets the log threshold for this . By
+ default the threshold of a task is ,
+ causing no messages to be filtered in the task itself.
+
+
+ The log threshold level for this .
+
+
+ When the threshold of a is higher than the
+ threshold of the , then all messages will
+ still be delivered to the build listeners.
+
+
+
+
+ The name of the file which will have its attributes set. This is
+ provided as an alternate to using the task's fileset.
+
+
+
+
+ All the matching files and directories in this fileset will have
+ their attributes set.
+
+
+
+
+ Set the archive attribute. The default is .
+
+
+
+
+ Set the hidden attribute. The default is .
+
+
+
+
+ Set the normal file attributes. This attribute is only valid if used
+ alone. The default is .
+
+
+
+
+ Set the read-only attribute. The default is .
+
+
+
+
+ Set the system attribute. The default is .
+
+
+
+
+ Checks if a resource is available at runtime.
+
+
+
+ The specified property is set to if the
+ requested resource is available at runtime, and
+ if the resource is not available.
+
+
+ we advise you to use the following functions instead:
+
+
+
+ Function
+ Description
+
+
+
+ Determines whether the specified file exists.
+
+
+
+ Determines whether the given path refers to an existing directory on disk.
+
+
+
+ Checks whether the specified framework exists..
+
+
+
+ Checks whether the SDK for the specified framework is installed.
+
+
+
+
+
+ Sets the myfile.present property to if the
+ file is available on the filesystem and if the
+ file is not available.
+
+
+
+ ]]>
+
+
+
+
+ Sets the build.dir.present property to
+ if the directory is available on the filesystem and
+ if the directory is not available.
+
+
+
+ ]]>
+
+
+
+
+ Sets the mono-0.21.framework.present property to
+ if the Mono 0.21 framework is available on the current system and
+ if the framework is not available.
+
+
+
+ ]]>
+
+
+
+
+ Sets the net-1.1.frameworksdk.present property to
+ if the .NET 1.1 Framework SDK is available on the current system and
+ if the SDK is not available.
+
+
+
+ ]]>
+
+
+
+
+
+ Executes the task.
+
+
+
+ Sets the property identified by to
+ when the resource exists and to
+ when the resource doesn't exist.
+
+
+ The availability of the resource could not be evaluated.
+
+
+
+ Evaluates the availability of a resource.
+
+
+ if the resource is available; otherwise,
+ .
+
+ The availability of the resource could not be evaluated.
+
+
+
+ Checks if the file specified in the property is
+ available on the filesystem.
+
+
+ when the file exists; otherwise, .
+
+
+
+
+ Checks if the directory specified in the
+ property is available on the filesystem.
+
+
+ when the directory exists; otherwise, .
+
+
+
+
+ Checks if the framework specified in the
+ property is available on the current system.
+
+
+ when the framework is available; otherwise,
+ .
+
+
+
+
+ Checks if the SDK for the framework specified in the
+ property is available on the current system.
+
+
+ when the SDK for the specified framework is
+ available; otherwise, .
+
+
+
+
+ The resource which must be available.
+
+
+
+
+ The type of resource which must be present.
+
+
+
+
+ The property that must be set if the resource is available.
+
+
+
+
+ Defines the possible resource checks.
+
+
+
+
+ Determines whether a given file exists.
+
+
+
+
+ Determines whether a given directory exists.
+
+
+
+
+ Determines whether a given framework is available.
+
+
+
+
+ Determines whether a given SDK is available.
+
+
+
+
+ Calls a NAnt target in the current project.
+
+
+
+ When the is used to execute a target, both that
+ target and all its dependent targets will be re-executed.
+
+
+ To avoid dependent targets from being executed more than once, two
+ options are available:
+
+
+
+
+ Add an "unless" attribute with value "${target::has-executed('<target name>')}"
+ to the dependent targets.
+
+
+
+
+ Set the attribute on the
+ to (recommended).
+
+
+
+
+
+
+ Call the target "build".
+
+
+
+ ]]>
+
+
+
+
+ This shows how a project could 'compile' a debug and release build
+ using a common compile target.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+ The parameter of the
+ defaults to ,
+ causing the "init" target to be executed for both
+ the "debug" and "release" build.
+
+
+ This results in the following build log:
+
+
+ build:
+
+ init:
+
+ [echo] initializing
+
+ compile:
+
+ [echo] compiling with debug = false
+
+ init:
+
+ [echo] initializing
+
+ compile:
+
+ [echo] compiling with debug = true
+
+ BUILD SUCCEEDED
+
+
+ If the "init" should only be executed once, set the
+ attribute of the
+ to .
+
+
+ The build log would then look like this:
+
+
+ build:
+
+ init:
+
+ [echo] initializing
+
+ compile:
+
+ [echo] compiling with debug = false
+
+ compile:
+
+ [echo] compiling with debug = true
+
+ BUILD SUCCEEDED
+
+
+
+
+
+ Executes the specified target.
+
+
+
+
+ Makes sure the is not calling its own
+ parent.
+
+ The task XML node.
+
+
+
+ NAnt target to call.
+
+
+
+
+ Force an execute even if the target has already been executed. The
+ default is .
+
+
+
+
+ Execute the specified targets dependencies -- even if they have been
+ previously executed. The default is .
+
+
+
+
+ Copies a file or set of files to a new file or directory.
+
+
+
+ Files are only copied if the source file is newer than the destination
+ file, or if the destination file does not exist. However, you can
+ explicitly overwrite files with the attribute.
+
+
+ When a is used to select files to copy, the
+ attribute must be set. Files that are
+ located under the base directory of the will
+ be copied to a directory under the destination directory matching the
+ path relative to the base directory of the ,
+ unless the attribute is set to
+ .
+
+
+ Files that are not located under the the base directory of the
+ will be copied directly under to the destination
+ directory, regardless of the value of the
+ attribute.
+
+
Encoding
+
+ Unless an encoding is specified, the encoding associated with the
+ system's current ANSI code page is used.
+
+
+ An UTF-8, little-endian Unicode, and big-endian Unicode encoded text
+ file is automatically recognized, if the file starts with the
+ appropriate byte order marks.
+
+
+ If you employ filters in your copy operation, you should limit the copy
+ to text files. Binary files will be corrupted by the copy operation.
+
+
+
+
+ Copy a single file while changing its encoding from "latin1" to
+ "utf-8".
+
+
+
+ ]]>
+
+
+
+ Copy a set of files to a new directory.
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ Copy a set of files to a directory, replacing @TITLE@ with
+ "Foo Bar" in all files.
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Initialize new instance of the .
+
+
+
+
+ Checks whether the task is initialized with valid attributes.
+
+ The used to initialize the task.
+
+
+
+ Executes the Copy task.
+
+ A file that has to be copied does not exist or could not be copied.
+
+
+
+ Actually does the file copies.
+
+
+
+
+ The file to copy.
+
+
+
+
+ The file to copy to.
+
+
+
+
+ The directory to copy to.
+
+
+
+
+ Overwrite existing files even if the destination files are newer.
+ The default is .
+
+
+
+
+ Ignore directory structure of source directory, copy all files into
+ a single directory, specified by the
+ attribute. The default is .
+
+
+
+
+ Copy any empty directories included in the .
+ The default is .
+
+
+
+
+ Used to select the files to copy. To use a ,
+ the attribute must be set.
+
+
+
+
+ Chain of filters used to alter the file's content as it is copied.
+
+
+
+
+ The encoding to use when reading files. The default is the system's
+ current ANSI code page.
+
+
+
+
+ The encoding to use when writing the files. The default is
+ the encoding of the input file.
+
+
+
+
+ The set of files to perform a file operation on.
+
+
+
+ The key of the is the absolute path of
+ the destination file and the value is a
+ holding the path and last write time of the most recently updated
+ source file that is selected to be copied or moved to the
+ destination file.
+
+
+ On Windows, the is case-insensitive.
+
+
+
+
+
+ Holds the absolute paths and last write time of a given file.
+
+
+
+
+ Initializes a new instance of the
+ class for the specified file and last write time.
+
+ The absolute path of the file.
+ The last write time of the file.
+
+
+
+ Gets the absolute path of the current file.
+
+
+ The absolute path of the current file.
+
+
+
+
+ Gets the time when the current file was last written to.
+
+
+ The time when the current file was last written to.
+
+
+
+
+ Deletes a file, fileset or directory.
+
+
+
+ Deletes either a single file, all files in a specified directory and
+ its sub-directories, or a set of files specified by one or more filesets.
+
+
+ If the or attribute is
+ set then the fileset contents will be ignored. To delete the files
+ in the fileset ommit the and
+ attributes in the <delete> element.
+
+
+ If the specified file or directory does not exist, no error is
+ reported.
+
+
+ Read-only files cannot be deleted. Use the
+ first to remove the read-only attribute.
+
+
+
+ Delete a single file.
+
+
+ ]]>
+
+
+
+
+ Delete a directory and the contents within. If the directory does not
+ exist, no error is reported.
+
+
+
+ ]]>
+
+
+
+
+ Delete a set of files.
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Ensures the supplied attributes are valid.
+
+ Xml node used to define this task instance.
+
+
+
+ The file to delete.
+
+
+
+
+ The directory to delete.
+
+
+
+
+ Remove any empty directories included in the .
+ The default is .
+
+
+
+
+ All the files in the file set will be deleted.
+
+
+
+
+ Controls whether to show the name of each deleted file or directory.
+ The default is .
+
+
+
+
+ An empty task that allows a build file to contain a description.
+
+
+ Set a description.
+
+ This is a description.
+ ]]>
+
+
+
+
+
+ Writes a message to the build log or a specified file.
+
+
+
+ The message can be specified using the attribute
+ or as inline content.
+
+
+ Macros in the message will be expanded.
+
+
+ When writing to a file, the attribute is
+ ignored.
+
+
+
+
+ Writes a message with level to the build log.
+
+
+
+ ]]>
+
+
+
+
+ Writes a message with expanded macro to the build log.
+
+
+
+ ]]>
+
+
+
+
+ Functionally equivalent to the previous example.
+
+
+ Base build directory = ${nant.project.basedir}
+ ]]>
+
+
+
+
+ Writes the previous message to a file in the project directory,
+ overwriting the file if it exists.
+
+
+ Base build directory = ${nant.project.basedir}
+ ]]>
+
+
+
+
+
+ Outputs the message to the build log or the specified file.
+
+
+
+
+ The message to output.
+
+
+
+
+ Gets or sets the inline content that should be output.
+
+
+ The inline content that should be output.
+
+
+
+
+ The file to write the message to.
+
+
+
+
+ Determines whether the should append to the
+ file, or overwrite it. By default, the file will be overwritten.
+
+
+ if output should be appended to the file;
+ otherwise, . The default is
+ .
+
+
+
+
+ The logging level with which the message should be output. The default
+ is .
+
+
+
+
+ Executes a system command.
+
+
+ Ping "nant.sourceforge.net".
+
+
+
+
+ ]]>
+
+
+
+
+ Execute a java application using IKVM.NET that requires the
+ Apache FOP jars, and a set of custom jars.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+ Assuming the base directory of the build file is "c:\ikvm-test" and
+ the value of the "fop.dist.dir" property is "c:\fop", then the value
+ of the -cp argument that is passed toikvm.exe is
+ "c:\ikvm-test\conf;c:\fop\build\fop.jar;conf;c:\fop\lib\xercesImpl-2.2.1.jar;c:\fop\lib\avalon-framework-cvs-20020806.jar;c:\fop\lib\batik.jar;c:\ikvm-test\lib\mylib.jar;c:\ikvm-test\lib\otherlib.zip"
+ on a DOS-based system.
+
+
+
+
+
+ Provides the abstract base class for tasks that execute external applications.
+
+
+
+
+ Defines the exit code that will be returned by
+ if the process could not be started, or did not exit (in time).
+
+
+
+
+ Will be used to ensure thread-safe operations.
+
+
+
+
+ Starts the external process and captures its output.
+
+
+ The external process did not finish within the configured timeout.
+ -or-
+ The exit code of the external process indicates a failure.
+
+
+
+
+ Updates the of the specified
+ .
+
+ The of which the should be updated.
+
+
+
+ Starts the process and handles errors.
+
+ The that was started.
+
+
+
Reads from the stream until the external program is ended.
+
+
+
Reads from the stream until the external program is ended.
+
+
+
+ Determines the path of the external program that should be executed.
+
+
+ A fully qualifies pathname including the program name.
+
+ The task is not available or not configured for the current framework.
+
+
+
+ The name of the executable that should be used to launch the
+ external program.
+
+
+ The name of the executable that should be used to launch the external
+ program, or if no name is specified.
+
+
+ If available, the configured value in the NAnt configuration
+ file will be used if no name is specified.
+
+
+
+
+ Gets the filename of the external program to start.
+
+
+ The filename of the external program.
+
+
+ Override in derived classes to explicitly set the location of the
+ external tool.
+
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ Gets the file to which the standard output should be redirected.
+
+
+ The file to which the standard output should be redirected, or
+ if the standard output should not be
+ redirected.
+
+
+ The default implementation will never allow the standard output
+ to be redirected to a file. Deriving classes should override this
+ property to change this behaviour.
+
+
+
+
+ Gets a value indicating whether output will be appended to the
+ .
+
+
+ if output should be appended to the ;
+ otherwise, .
+
+
+
+
+ Gets the working directory for the application.
+
+
+ The working directory for the application.
+
+
+
+
+ The maximum amount of time the application is allowed to execute,
+ expressed in milliseconds. Defaults to no time-out.
+
+
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ Specifies whether the external program should be executed using a
+ runtime engine, if configured. The default is .
+
+
+ if the external program should be executed
+ using a runtime engine; otherwise, .
+
+
+
+
+ Gets or sets the to which standard output
+ messages of the external program will be written.
+
+
+ The to which standard output messages of
+ the external program will be written.
+
+
+ By default, standard output messages wil be written to the build log
+ with level .
+
+
+
+
+ Gets or sets the to which error output
+ of the external program will be written.
+
+
+ The to which error output of the external
+ program will be written.
+
+
+ By default, error output wil be written to the build log with level
+ .
+
+
+
+
+ Gets the value that the process specified when it terminated.
+
+
+ The code that the associated process specified when it terminated,
+ or -1000 if the process could not be started or did not
+ exit (in time).
+
+
+
+
+ Gets the command-line arguments, separated by spaces.
+
+
+
+
+ Performs additional checks after the task has been initialized.
+
+ The used to initialize the task.
+ does not hold a valid file name.
+
+
+
+ Executes the external program.
+
+
+
+
+ The program to execute without command arguments.
+
+
+ The path will not be evaluated to a full path using the project
+ base directory.
+
+
+
+
+ The command-line arguments for the program.
+
+
+
+
+ Environment variables to pass to the program.
+
+
+
+
+ The directory in which the command will be executed.
+
+
+ The directory in which the command will be executed. The default
+ is the project's base directory.
+
+
+
+ The working directory will be evaluated relative to the project's
+ base directory if it is relative.
+
+
+
+
+
+
+ The name of a property in which the exit code of the program should
+ be stored. Only of interest if is
+ .
+
+
+ If the exit code of the program is "-1000" then the program could
+ not be started, or did not exit (in time).
+
+
+
+
+
+ Specifies whether the external program should be executed using a
+ runtime engine, if configured. The default is .
+
+
+ if the external program should be executed
+ using a runtime engine; otherwise, .
+
+
+
+
+ Gets the filename of the external program to start.
+
+
+ The filename of the external program.
+
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ The directory the program is in.
+
+
+
+ The directory the program is in. The default is the project's base
+ directory.
+
+
+ The basedir will be evaluated relative to the project's base
+ directory if it is relative.
+
+
+
+
+
+ The file to which the standard output will be redirected.
+
+
+ By default, the standard output is redirected to the console.
+
+
+
+
+ Gets or sets a value indicating whether output should be appended
+ to the output file. The default is .
+
+
+ if output should be appended to the ;
+ otherwise, .
+
+
+
+
+ Exits the current build by throwing a ,
+ optionally printing additional information.
+
+
+
+ The cause of the build failure can be specified using the
+ attribute or as inline content.
+
+
+ Macros in the message will be expanded.
+
+
+
+ Exits the current build without giving further information.
+
+
+ ]]>
+
+
+
+ Exits the current build and writes a message to the build log.
+
+
+ ]]>
+
+
+
+ Functionally equivalent to the previous example.
+
+ Something wrong here.
+ ]]>
+
+
+
+
+
+ A message giving further information on why the build exited.
+
+
+ Inline content and are mutually exclusive.
+
+
+
+
+ Gets or sets the inline content that should be output in the build
+ log, giving further information on why the build exited.
+
+
+ The inline content that should be output in the build log.
+
+
+ Inline content and are mutually exclusive.
+
+
+
+
+ Gets a particular file from a URL source.
+
+
+
+ Options include verbose reporting and timestamp based fetches.
+
+
+ Currently, only HTTP and UNC protocols are supported. FTP support may
+ be added when more pluggable protocols are added to the System.Net
+ assembly.
+
+
+ The option enables you to control downloads
+ so that the remote file is only fetched if newer than the local copy.
+ If there is no local copy, the download always takes place. When a file
+ is downloaded, the timestamp of the downloaded file is set to the remote
+ timestamp.
+
+
+ This timestamp facility only works on downloads using the HTTP protocol.
+
+
+
+
+ Gets the index page of the NAnt home page, and stores it in the file
+ help/index.html relative to the project base directory.
+
+
+
+ ]]>
+
+
+
+
+ Gets the index page of a secured web site using the given credentials,
+ while connecting using the specified password-protected proxy server.
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Initializes task and ensures the supplied attributes are valid.
+
+ Xml node used to define this task instance.
+
+
+
+ This is where the work is done
+
+
+
+
+ Sets the timestamp of a given file to a specified time.
+
+
+
+
+ The URL from which to retrieve a file.
+
+
+
+
+ The file where to store the retrieved file.
+
+
+
+
+ If inside a firewall, proxy server/port information
+ Format: {proxy server name}:{port number}
+ Example: proxy.mycompany.com:8080
+
+
+
+
+ The network proxy to use to access the Internet resource.
+
+
+
+
+ The network credentials used for authenticating the request with
+ the Internet resource.
+
+
+
+
+ Log errors but don't treat as fatal. The default is .
+
+
+
+
+ Conditionally download a file based on the timestamp of the local
+ copy. HTTP only. The default is .
+
+
+
+
+ The length of time, in milliseconds, until the request times out.
+ The default is 100000 milliseconds.
+
+
+
+
+ The security certificates to associate with the request.
+
+
+
+
+ Checks the conditional attributes and executes the children if
+ .
+
+
+
+ If no conditions are checked, all child tasks are executed.
+
+
+ If more than one attribute is used, they are &&'d. The first
+ to fail stops the check.
+
+
+ The order of condition evaluation is, ,
+ , ,
+ .
+
+
+ instead of using the deprecated attributes, we advise you to use the
+ following functions in combination with the
+ attribute:
+
+
+
+ Function
+ Description
+
+
+
+ Checks whether the specified property exists.
+
+
+
+ Checks whether the specified target exists.
+
+
+
+
+ Tests the value of a property using expressions.
+
+
+ Build release configuration
+
+ ]]>
+
+
+
+ Tests the the output of a function.
+
+
+
+
+ ]]>
+
+
+
+ (Deprecated) Check that a target exists.
+
+
+
+
+
+ ]]>
+
+
+
+ (Deprecated) Check existence of a property.
+
+
+
+
+ ]]>
+
+
+
+ (Deprecated) Check that a property value is true.
+
+
+
+
+ ]]>
+
+
+
+
+ (Deprecated) Check that a property exists and is
+ (uses multiple conditions).
+
+
+
+
+
+ ]]>
+
+ which is the same as
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ (Deprecated) Check file dates. If myfile.dll is uptodate,
+ then do stuff.
+
+
+
+
+
+ ]]>
+
+ or
+
+
+
+
+
+
+
+ ]]>
+
+ or
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Executes embedded tasks in the order in which they are defined.
+
+
+
+
+ Automatically exclude build elements that are defined on the task
+ from things that get executed, as they are evaluated normally during
+ XML task initialization.
+
+ used to initialize the container.
+
+
+
+ Creates and executes the embedded (child XML nodes) elements.
+
+
+ Skips any element defined by the host that has
+ a defined.
+
+
+
+
+ Gets a value indicating whether the element is performing additional
+ processing using the that was use to
+ initialize the element.
+
+
+ , as a is
+ responsable for creating tasks from the nested build elements.
+
+
+
+
+ The file to compare if uptodate.
+
+
+
+
+ The file to check against for the uptodate file.
+
+
+
+
+ The that contains the comparison files for
+ the (s) check.
+
+
+
+
+ The that contains the uptodate files for
+ the (s) check.
+
+
+
+
+ Used to test whether a property is true.
+
+
+
+
+ Used to test whether a property exists.
+
+
+
+
+ Used to test whether a target exists.
+
+
+
+
+ Used to test arbitrary boolean expression.
+
+
+
+
+ The opposite of the if task.
+
+
+ Check that a property does not exist.
+
+
+
+
+ ]]>
+
+ Check that a property value is not true.
+
+
+
+
+ ]]>
+
+
+
+ Check that a target does not exist.
+
+
+
+
+ ]]>
+
+
+
+
+
+ Includes an external build file.
+
+
+
+ This task is used to break your build file into smaller chunks. You
+ can load a partial build file and have it included into the build file.
+
+
+ Any global (project level) tasks in the included build file are executed
+ when this task is executed. Tasks in target elements are only executed
+ if that target is executed.
+
+
+ The project element attributes are ignored.
+
+
+ This task can only be in the global (project level) section of the
+ build file.
+
+
+ This task can only include files from the file system.
+
+
+
+
+ Include a task that fetches the project version from the
+ GetProjectVersion.include build file.
+
+
+
+ ]]>
+
+
+
+
+
+ Used to check for recursived includes.
+
+
+
+
+ Verifies parameters.
+
+ Xml taskNode used to define this task instance.
+
+
+
+ Build file to include.
+
+
+
+
+ Load a text file into a single property.
+
+
+
+ Unless an encoding is specified, the encoding associated with the
+ system's current ANSI code page is used.
+
+
+ An UTF-8, little-endian Unicode, and big-endian Unicode encoded text
+ file is automatically recognized, if the file starts with the appropriate
+ byte order marks.
+
+
+
+
+ Load file message.txt into property "message".
+
+
+
+ ]]>
+
+
+
+
+ Load a file using the "latin-1" encoding.
+
+
+
+ ]]>
+
+
+
+
+ Load a file, replacing all @NOW@ tokens with the current
+ date/time.
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ The file to load.
+
+
+
+
+ The name of the property to save the content to.
+
+
+
+
+ The encoding to use when loading the file. The default is the encoding
+ associated with the system's current ANSI code page.
+
+
+
+
+ The filterchain definition to use.
+
+
+
+
+ Loads tasks form a given assembly or all assemblies in a given directory
+ or .
+
+
+
+ Load tasks from a single assembly.
+
+
+
+ ]]>
+
+
+
+
+ Scan a single directory for task assemblies.
+
+
+
+ ]]>
+
+
+
+
+ Use a containing both a directory and an
+ assembly.
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Executes the Load Tasks task.
+
+ Specified assembly or path does not exist.
+
+
+
+ Validates the attributes.
+
+ Both and are set.
+
+
+
+ An assembly to load tasks from.
+
+
+
+
+ A directory to scan for task assemblies.
+
+
+
+
+ Used to select which directories or individual assemblies to scan.
+
+
+
+
+ Loops over a set of items.
+
+
+
+ Can loop over files in directory, lines in a file, etc.
+
+
+ The property value is stored before the loop is done, and restored
+ when the loop is finished.
+
+
+ The property is returned to its normal value once it is used. Read-only
+ parameters cannot be overridden in this loop.
+
+
+
+ Loops over the files in c:\.
+
+
+
+
+ ]]>
+
+
+
+ Loops over all files in the project directory.
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+ Loops over the folders in c:\.
+
+
+
+
+ ]]>
+
+
+
+ Loops over all folders in the project directory.
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+ Loops over a list.
+
+
+
+
+ ]]>
+
+
+
+
+ Loops over lines in the file properties.csv, where each line
+ is of the format name,value.
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ The NAnt property name(s) that should be used for the current
+ iterated item.
+
+
+ If specifying multiple properties, separate them with a comma.
+
+
+
+
+ The type of iteration that should be done.
+
+
+
+
+ The type of whitespace trimming that should be done. The default
+ is .
+
+
+
+
+ The source of the iteration.
+
+
+
+
+ The deliminator char.
+
+
+
+
+ Stuff to operate in. Just like the
+ attribute, but supports more complicated things like a
+ and such.
+
+ Please remove the attribute if you
+ are using this element.
+
+
+
+
+
+ Tasks to execute for each matching item.
+
+
+
+
+ Do not remove any white space characters.
+
+
+
+
+ Remove all white space characters from the end of the current
+ item.
+
+
+
+
+ Remove all white space characters from the beginning of the
+ current item.
+
+
+
+
+ Remove all white space characters from the beginning and end of
+ the current item.
+
+
+
+
+ Sends an SMTP message.
+
+
+
+ Text and text files to include in the message body may be specified as
+ well as binary attachments.
+
+
+
+
+ Sends an email from nant@sourceforge.net to three recipients
+ with a subject about the attachments. The body of the message will be
+ the combined contents of all .txt files in the base directory.
+ All zip files in the base directory will be included as attachments.
+ The message will be sent using the smtpserver.anywhere.com SMTP
+ server.
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Initializes task and ensures the supplied attributes are valid.
+
+ Xml node used to define this task instance.
+
+
+
+ This is where the work is done.
+
+
+
+
+ Reads a text file and returns the content
+ in a string.
+
+ The file to read content of.
+
+ The content of the specified file.
+
+
+
+
+ Email address of sender.
+
+
+
+
+ Semicolon-separated list of recipient email addresses.
+
+
+
+
+ Semicolon-separated list of CC: recipient email addresses.
+
+
+
+
+ Semicolon-separated list of BCC: recipient email addresses.
+
+
+
+
+ Host name of mail server. The default is localhost.
+
+
+
+
+ Text to send in body of email message.
+
+
+
+
+ Text to send in subject line of email message.
+
+
+
+
+ Format of the message. The default is .
+
+
+
+
+ Files that are transmitted as part of the body of the email message.
+
+
+
+
+ Attachments that are transmitted with the message.
+
+
+
+
+ Creates a directory and any non-existent parent directory if necessary.
+
+
+ Create the directory build.
+
+
+ ]]>
+
+
+
+ Create the directory tree one/two/three.
+
+
+ ]]>
+
+
+
+
+
+ Creates the directory specified by the property.
+
+ The directory could not be created.
+
+
+
+ The directory to create.
+
+
+
+
+ Moves a file or set of files to a new file or directory.
+
+
+
+ Files are only moved if the source file is newer than the destination
+ file, or if the destination file does not exist. However, you can
+ explicitly overwrite files with the
+ attribute.
+
+
+ A can be used to select files to move. To use
+ a , the
+ attribute must be set.
+
+
Encoding
+
+ Unless an encoding is specified, the encoding associated with the
+ system's current ANSI code page is used.
+
+
+ An UTF-8, little-endian Unicode, and big-endian Unicode encoded text
+ file is automatically recognized, if the file starts with the
+ appropriate byte order marks.
+
+
+ If you employ filters in your move operation, you should limit the
+ move to text files. Binary files will be corrupted by the move
+ operation.
+
+
+
+
+ Move a single file while changing its encoding from "latin1" to
+ "utf-8".
+
+
+
+ ]]>
+
+
+
+ Move a set of files.
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ Move a set of files to a directory, replacing @TITLE@ with
+ "Foo Bar" in all files.
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Actually does the file moves.
+
+
+
+
+ The file to move.
+
+
+
+
+ The file to move to.
+
+
+
+
+ The directory to move to.
+
+
+
+
+ Used to select the files to move. To use a ,
+ the attribute must be set.
+
+
+
+
+ Ignore directory structure of source directory, move all files into
+ a single directory, specified by the
+ attribute. The default is .
+
+
+
+
+ Chain of filters used to alter the file's content as it is moved.
+
+
+
+
+ Creates an XSD File for all available tasks.
+
+
+
+ This can be used in conjuntion with the command-line option to do XSD
+ Schema validation on the build file.
+
+
+
+ Creates a NAnt.xsd file in the current project directory.
+
+
+ ]]>
+
+
+
+
+
+ Creates a NAnt Schema for given types
+
+ The output stream to save the schema to. If , writing is ignored, no exception generated.
+ The list of tasks to generate XML Schema for.
+ The list of datatypes to generate XML Schema for.
+ The target namespace to output.
+ The new NAnt Schema.
+
+
+
+ Creates a new instance.
+
+ The name of the attribute.
+ Value indicating whether the attribute should be required.
+ The new instance.
+
+
+
+ Creates a new instance.
+
+ The minimum value to allow for this choice
+ The maximum value to allow, Decimal.MaxValue sets it to 'unbound'
+ The new instance.
+
+
+
+ The name of the output file to which the XSD should be written.
+
+
+
+
+ The target namespace for the output. Defaults to "http://tempuri.org/nant-donotuse.xsd"
+
+
+
+
+ The for which an XSD should be created. If not
+ specified, an XSD will be created for all available tasks.
+
+
+
+
+ Creates a new instance of the
+ class.
+
+ Tasks for which a schema should be generated.
+ Data Types for which a schema should be generated.
+ The namespace to use.
+ http://tempuri.org/nant.xsd
+
+
+
+
+ Runs NAnt on a supplied build file, or a set of build files.
+
+
+
+ By default, all the properties of the current project will be available
+ in the new project. Alternatively, you can set
+ to to not copy any properties to the new
+ project.
+
+
+ You can also set properties in the new project from the old project by
+ using nested property tags. These properties are always passed to the
+ new project regardless of the setting of .
+ This allows you to parameterize your subprojects.
+
+
+ References to data types can also be passed to the new project, but by
+ default they are not. If you set the to
+ , all references will be copied.
+
+
+
+
+ Build a project located in a different directory if the debug
+ property is not .
+
+
+
+ ]]>
+
+
+
+
+ Build a project while adding a set of properties to that project.
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ Build all projects named default.build located anywhere under
+ the project base directory.
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Validates the element.
+
+ The XML node of the task to use for initialization.
+
+
+
+ The build file to build.
+
+
+
+
+ The target to execute. To specify more than one target seperate
+ targets with a space. Targets are executed in order if possible.
+ The default is to use target specified in the project's default
+ attribute.
+
+
+
+
+ Used to specify a set of build files to process.
+
+
+
+
+ Specifies whether current property values should be inherited by
+ the executed project. The default is .
+
+
+
+
+ Specifies whether all references will be copied to the new project.
+ The default is .
+
+
+
+
+ Specifies a collection of properties that should be created in the
+ executed project. Note, existing properties with identical names
+ that are not read-only will be overwritten.
+
+
+
+
+ Sets a property in the current project.
+
+
+ NAnt uses a number of predefined properties.
+
+
+
+ Define a debug property with value .
+
+
+
+ ]]>
+
+
+
+
+ Use the user-defined debug property.
+
+
+
+ ]]>
+
+
+
+
+ Define a read-only property. This is just like passing in the param
+ on the command line.
+
+
+
+ ]]>
+
+
+
+
+ Define a property, but do not overwrite the value if the property already exists (eg. it was specified on the command line).
+
+
+
+
+
+
+ ]]>
+
+
+ Executing this build file with the command line option -D:debug=false,
+ would cause the value specified on the command line to remain unaltered.
+
+
+
+
+
+
+
+
+ The name of the NAnt property to set.
+
+
+
+
+ The value to assign to the NAnt property.
+
+
+
+
+ Specifies whether the property is read-only or not.
+ The default is .
+
+
+
+
+ Specifies whether references to other properties should not be
+ expanded when the value of the property is set, but expanded when
+ the property is actually used. By default, properties will be
+ expanded when set.
+
+
+
+
+ Specifies whether the value of a property should be overwritten if
+ the property already exists (unless the property is read-only).
+ The default is .
+
+
+
+
+ Sets project properties based on the evaluatuion of a regular expression.
+
+
+
+ The attribute must contain one or more
+
+ named grouping constructs, which represents the names of the
+ properties to be set. These named grouping constructs can be enclosed
+ by angle brackets (?<name>) or single quotes (?'name').
+
+
+ In the build file, use the XML element to specify <,
+ and to specify >.
+
+
+ The named grouping construct must not contain any punctuation and it
+ cannot begin with a number.
+
+
+
+
+ Find the last word in the given string and stores it in the property
+ lastword.
+
+
+
+
+ ]]>
+
+
+
+
+ Split the full filename and extension of a filename.
+
+
+
+ ]]>
+
+
+
+
+ Split the path and the filename. (This checks for / or \
+ as the path separator).
+
+
+
+ ]]>
+
+
+ Results in path=d:\Temp\SomeDir\SomeDir\ and file=bla.xml.
+
+
+
+
+
+ Executes the task.
+
+
+
+
+ Represents the regular expression to be evalued.
+
+
+ The regular expression to be evalued.
+
+
+ The pattern must contain one or more named constructs, which may
+ not contain any punctuation and cannot begin with a number.
+
+
+
+
+ A comma separated list of options to pass to the regex engine. The
+ default is .
+
+
+
+
+ Represents the input for the regular expression.
+
+
+ The input for the regular expression.
+
+
+
+
+ Sets an environment variable or a whole collection of them. Use an empty
+ attribute to clear a variable.
+
+
+
+ Variables will be set for the current NAnt process and all child
+ processes that NAnt spawns (compilers, shell tools, etc). If the
+ intention is to only set a variable for a single child process, then
+ using the and its nested
+ element might be a better option.
+
+
+ Expansion of inline environment variables is performed using the syntax
+ of the current platform. So on Windows platforms using the string %PATH%
+ in the attribute will result in the value of
+ the PATH variable being expanded in place before the variable is set.
+
+
+
+ Set the MONO_PATH environment variable on a *nix platform.
+
+
+ ]]>
+
+
+
+ Set a collection of environment variables. Note the nested variable used to set var3.
+
+
+
+
+
+
+ ]]>
+
+
+
+ Set environment variables using nested path elements.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Win32 DllImport for the SetEnvironmentVariable function.
+
+
+
+
+
+
+
+ *nix dllimport for the setenv function.
+
+
+
+
+
+
+
+
+ Checks whether the task is initialized with valid attributes.
+
+
+
+
+
+ Set the environment variables
+
+
+
+
+ Do the actual work here.
+
+ The name of the environment variable.
+ The value of the environment variable.
+
+
+
+ The name of a single Environment variable to set
+
+
+
+
+ The literal value for the environment variable.
+
+
+
+
+ The value for a file-based environment variable. NAnt will convert
+ it to an absolute filename.
+
+
+
+
+ The value for a directory-based environment variable. NAnt will
+ convert it to an absolute path.
+
+
+
+
+ The value for a PATH like environment variable. You can use
+ : or ; as path separators and NAnt will convert it to
+ the platform's local conventions.
+
+
+
+
+ A task for sleeping a specified period of time, useful when a build or deployment process
+ requires an interval between tasks.
+
+
+ Sleep 1 hour, 2 minutes, 3 seconds and 4 milliseconds.
+
+
+ ]]>
+
+
+
+ Sleep 123 milliseconds.
+
+
+ ]]>
+
+
+
+
+
+ Verify parameters.
+
+ taskNode used to define this task instance
+
+
+
+ Return time to sleep.
+
+
+
+
+ Sleeps for the specified number of milliseconds.
+
+ Number of milliseconds to sleep.
+
+
+
+ Hours to add to the sleep time.
+
+
+
+
+ Minutes to add to the sleep time.
+
+
+
+
+ Seconds to add to the sleep time.
+
+
+
+
+ Milliseconds to add to the sleep time.
+
+
+
+
+ Processes a document via XSLT.
+
+
+ Create a report in HTML.
+
+
+ ]]>
+
+
+
+ Create a report in HTML, with a param.
+
+
+
+
+
+
+ ]]>
+
+
+
+ Create a report in HTML, with a expanded param.
+
+
+
+
+
+
+ ]]>
+
+
+
+ Create some code based on a directory of templates.
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Directory in which to store the results. The default is the project
+ base directory.
+
+
+
+
+ Desired file extension to be used for the targets. The default is
+ html.
+
+
+
+
+ URI or path that points to the stylesheet to use. If given as path, it can
+ be relative to the project's basedir or absolute.
+
+
+
+
+ Specifies a single XML document to be styled. Should be used with
+ the attribute.
+
+
+
+
+ Specifies the output name for the styled result from the
+ attribute.
+
+
+
+
+ Specifies a group of input files to which to apply the stylesheet.
+
+
+
+
+ XSLT parameters to be passed to the XSLT transformation.
+
+
+
+
+ XSLT extension objects to be passed to the XSLT transformation.
+
+
+
+
+ The network proxy to use to access the Internet resource.
+
+
+
+
+ Sets properties with system information.
+
+
+ Sets a number of properties with information about the system environment. The intent of this task is for nightly build logs to have a record of system information so that the build was performed on.
+
+
+ Property
+ Value
+
+
+ <>.clr.version
+ Common Language Runtime version number.
+
+
+ <>.env.*
+ Environment variables (e.g., <>.env.PATH).
+
+
+ <>.os.platform
+ Operating system platform ID.
+
+
+ <>.os.version
+ Operating system version.
+
+
+ <>.os
+ Operating system version string.
+
+
+ <>.os.folder.applicationdata
+ The directory that serves as a common repository for application-specific data for the current roaming user.
+
+
+ <>.os.folder.commonapplicationdata
+ The directory that serves as a common repository for application-specific data that is used by all users.
+
+
+ <>.os.folder.commonprogramfiles
+ The directory for components that are shared across applications.
+
+
+ <>.os.folder.desktopdirectory
+ The directory used to physically store file objects on the desktop. Do not confuse this directory with the desktop folder itself, which is a virtual folder.
+
+
+ <>.os.folder.programfiles
+ The Program Files directory.
+
+
+ <>.os.folder.system
+ The System directory.
+
+
+ <>.os.folder.temp
+ The temporary directory.
+
+
+
+ When the name of an environment variable is not a valid property name,
+ the task will fail. In that case, set to
+ to allow that environment variable to be
+ skipped.
+
+
+ we advise you to use the following functions instead:
+
+
+
+ Function
+ Description
+
+
+
+ Gets a object that identifies this operating system.
+
+
+
+ Gets the path to a system special folder.
+
+
+
+ Returns the value of a environment variable.
+
+
+
+ Gets the path to the temporary directory.
+
+
+
+ Gets the Common Language Runtime version.
+
+
+
+
+ Register the properties with the default property prefix.
+
+
+ ]]>
+
+
+
+ Register the properties without a prefix.
+
+
+ ]]>
+
+
+
+ Register properties and display a summary.
+
+
+ ]]>
+
+
+
+
+
+ The string to prefix the property names with. The default is "sys.".
+
+
+
+
+ Sets properties with the current date and time.
+
+
+
+ By default the displays the current date
+ and time and sets the following properties:
+
+
+ tstamp.date to yyyyMMdd
+ tstamp.time to HHmm
+ tstamp.now using the default DateTime.ToString() method
+
+
+ To set an additional property with a custom date/time use the
+ and attributes.
+ To set a number of additional properties with the exact same date and
+ time use the nested element (see example).
+
+
+ The date and time string displayed by the
+ uses the computer's default long date and time string format. You
+ might consider setting these to the
+ ISO 8601 standard
+ for date and time notation.
+
+
+
+ Set the build.date property.
+
+
+ ]]>
+
+
+
+ Set a number of properties for Ant like compatibility.
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ The property to receive the date/time string in the given pattern.
+
+
+
+ The date/time pattern to be used.
+
+ The following table lists the standard format characters for each standard pattern. The format characters are case-sensitive; for example, 'g' and 'G' represent slightly different patterns.
+
+
+ Format Character
+ Description Example Format Pattern (en-US)
+
+ dMM/dd/yyyy
+ Ddddd, dd MMMM yyyy
+ fdddd, dd MMMM yyyy HH:mm
+ Fdddd, dd MMMM yyyy HH:mm:ss
+ gMM/dd/yyyy HH:mm
+ GMM/dd/yyyy HH:mm:ss
+ m, MMMMM dd
+ r, Rddd, dd MMM yyyy HH':'mm':'ss 'GMT'
+ syyyy'-'MM'-'dd'T'HH':'mm':'ss
+ tHH:mm
+ THH:mm:ss
+ uyyyy'-'MM'-'dd HH':'mm':'ss'Z'
+ Udddd, dd MMMM yyyy HH:mm:ss
+ y, Yyyyy MMMM
+
+ The following table lists the patterns that can be combined to construct custom patterns. The patterns are case-sensitive; for example, "MM" is recognized, but "mm" is not. If the custom pattern contains white-space characters or characters enclosed in single quotation marks, the output string will also contain those characters. Characters not defined as part of a format pattern or as format characters are reproduced literally.
+
+
+ Format
+ Pattern Description
+
+ dThe day of the month. Single-digit days will not have a leading zero.
+ ddThe day of the month. Single-digit days will have a leading zero.
+ dddThe abbreviated name of the day of the week.
+ ddddThe full name of the day of the week.
+ MThe numeric month. Single-digit months will not have a leading zero.
+ MMThe numeric month. Single-digit months will have a leading zero.
+ MMMThe abbreviated name of the month.
+ MMMMThe full name of the month.
+ yThe year without the century. If the year without the century is less than 10, the year is displayed with no leading zero.
+ yyThe year without the century. If the year without the century is less than 10, the year is displayed with a leading zero.
+ yyyyThe year in four digits, including the century.
+ ggThe period or era. This pattern is ignored if the date to be formatted does not have an associated period or era string.
+ hThe hour in a 12-hour clock. Single-digit hours will not have a leading zero.
+ hhThe hour in a 12-hour clock. Single-digit hours will have a leading zero.
+ HThe hour in a 24-hour clock. Single-digit hours will not have a leading zero.
+ HHThe hour in a 24-hour clock. Single-digit hours will have a leading zero.
+ mThe minute. Single-digit minutes will not have a leading zero.
+ mmThe minute. Single-digit minutes will have a leading zero.
+ sThe second. Single-digit seconds will not have a leading zero.
+ ssThe second. Single-digit seconds will have a leading zero.
+ fThe fraction of a second in single-digit precision. The remaining digits are truncated.
+ ffThe fraction of a second in double-digit precision. The remaining digits are truncated.
+ fffThe fraction of a second in three-digit precision. The remaining digits are truncated.
+ ffffThe fraction of a second in four-digit precision. The remaining digits are truncated.
+ fffffThe fraction of a second in five-digit precision. The remaining digits are truncated.
+ ffffffThe fraction of a second in six-digit precision. The remaining digits are truncated.
+ fffffffThe fraction of a second in seven-digit precision. The remaining digits are truncated.
+ tThe first character in the AM/PM designator.
+ ttThe AM/PM designator.
+ zThe time zone offset ("+" or "-" followed by the hour only). Single-digit hours will not have a leading zero. For example, Pacific Standard Time is "-8".
+ zzThe time zone offset ("+" or "-" followed by the hour only). Single-digit hours will have a leading zero. For example, Pacific Standard Time is "-08".
+ zzzThe full time zone offset ("+" or "-" followed by the hour and minutes). Single-digit hours and minutes will have leading zeros. For example, Pacific Standard Time is "-08:00".
+ :The default time separator.
+ /The default date separator.
+ \ cPattern Where c is any character. Displays the character literally. To display the backslash character, use "\\".
+
+
+
+
+
+ Touches a file or set of files -- corresponds to the Unix touch command.
+
+
+
+ If the file specified does not exist, the task will create it.
+
+
+
+ Touch the Main.cs file. The current time is used.
+
+
+ ]]>
+
+
+
+
+ Touch all executable files in the project base directory and its
+ subdirectories.
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Ensures the supplied attributes are valid.
+
+ Xml node used to define this task instance.
+
+
+
+ The file to touch.
+
+
+
+
+ Specifies the new modification time of the file(s) in milliseconds
+ since midnight Jan 1 1970.
+
+
+
+
+ Specifies the new modification time of the file in the format
+ MM/DD/YYYY HH:MM:SS.
+
+
+
+
+ Used to select files that should be touched.
+
+
+
+
+ Check modification dates on groups of files.
+
+
+ If all are same or newer than all , the specified property is set to , otherwise it
+ is set to .
+
+
+
+ Check file dates. If myfile.dll is same or newer than myfile.cs, then set myfile.dll.uptodate property
+ to either or .
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Property that will be set to or depending on the
+ result of the date check.
+
+
+
+
+ The that contains list of source files.
+
+
+
+
+ The that contains list of target files.
+
+
+
+
+ Extracts text from an XML file at the location specified by an XPath
+ expression.
+
+
+
+ If the XPath expression specifies multiple nodes the node index is used
+ to determine which of the nodes' text is returned.
+
+
+
+
+ The example provided assumes that the following XML file (App.config)
+ exists in the current build directory.
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ The example will read the server value from the above
+ configuration file.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Executes the XML peek task.
+
+
+
+
+ Loads an XML document from a file on disk.
+
+ The file name of the file to load the XML document from.
+
+ A document containing
+ the document object representing the file.
+
+
+
+
+ Gets the contents of the node specified by the XPath expression.
+
+ The XPath expression used to determine which nodes to choose from.
+ The XML document to select the nodes from.
+ The node index in the case where multiple nodes satisfy the expression.
+
+ The contents of the node specified by the XPath expression.
+
+
+
+
+ The name of the file that contains the XML document
+ that is going to be peeked at.
+
+
+
+
+ The index of the node that gets its text returned when the query
+ returns multiple nodes.
+
+
+
+
+ The property that receives the text representation of the XML inside
+ the node returned from the XPath expression.
+
+
+
+
+ The XPath expression used to select which node to read.
+
+
+
+
+ Namespace definitions to resolve prefixes in the XPath expression.
+
+
+
+
+ Replaces text in an XML file at the location specified by an XPath
+ expression.
+
+
+
+ The location specified by the XPath expression must exist, it will
+ not create the parent elements for you. However, provided you have
+ a root element you could use a series of the tasks to build the
+ XML file up if necessary.
+
+
+
+
+ Change the server setting in the configuration from testhost.somecompany.com
+ to productionhost.somecompany.com.
+
+ XML file:
+
+
+
+
+
+
+
+ ]]>
+
+ Build fragment:
+
+
+ ]]>
+
+
+
+
+ Modify the noNamespaceSchemaLocation in an XML file.
+
+ XML file:
+
+
+
+
+ ]]>
+
+ Build fragment:
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Executes the XML poke task.
+
+
+
+
+ Loads an XML document from a file on disk.
+
+
+ The file name of the file to load the XML document from.
+
+
+ An containing
+ the document object model representing the file.
+
+
+
+
+ Given an XML document and an expression, returns a list of nodes
+ which match the expression criteria.
+
+
+ The XPath expression used to select the nodes.
+
+
+ The XML document that is searched.
+
+
+ An to use for resolving namespaces
+ for prefixes in the XPath expression.
+
+
+ An containing references to the nodes
+ that matched the XPath expression.
+
+
+
+
+ Given a node list, replaces the XML within those nodes.
+
+
+ The list of nodes to replace the contents of.
+
+
+ The text to replace the contents with.
+
+
+
+
+ Saves the XML document to a file.
+
+ The XML document to be saved.
+ The file name to save the XML document under.
+
+
+
+ The name of the file that contains the XML document that is going
+ to be poked.
+
+
+
+
+ The XPath expression used to select which nodes are to be modified.
+
+
+
+
+ The value that replaces the contents of the selected nodes.
+
+
+
+
+ Namespace definitions to resolve prefixes in the XPath expression.
+
+
+
+
+ Represents a command-line argument.
+
+
+
+ A single command-line argument containing a space character.
+
+
+
+ ]]>
+
+
+
+
+ Two separate command-line arguments.
+
+
+
+ ]]>
+
+
+
+
+ A single command-line argument with the value \dir;\dir2;\dir3
+ on DOS-based systems and /dir:/dir2:/dir3 on Unix-like systems.
+
+
+
+ ]]>
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified command-line argument.
+
+
+
+
+ Initializes a new instance of the class
+ with the given file.
+
+
+
+
+ Initializes a new instance of the class
+ with the given path.
+
+
+
+
+ Returns the argument as a .
+
+
+ The argument as a .
+
+
+ File and individual path elements will be quoted if necessary.
+
+
+
+
+ Quotes a command line argument if it contains a single quote or a
+ space.
+
+ The command line argument.
+
+ A quoted command line argument if
+ contains a single quote or a space; otherwise,
+ .
+
+
+
+
+ A single command-line argument; can contain space characters.
+
+
+
+
+ The name of a file as a single command-line argument; will be
+ replaced with the absolute filename of the file.
+
+
+
+
+ The value for a directory-based command-line argument; will be
+ replaced with the absolute path of the directory.
+
+
+
+
+ The value for a PATH-like command-line argument; you can use
+ : or ; as path separators and NAnt will convert it
+ to the platform's local conventions, while resolving references to
+ environment variables.
+
+
+ Individual parts will be replaced with the absolute path, resolved
+ relative to the project base directory.
+
+
+
+
+ Sets a single command-line argument and treats it like a PATH - ensures
+ the right separator for the local platform is used.
+
+
+
+
+ List of command-line arguments; will be passed to the executable
+ as is.
+
+
+
+
+ Indicates if the argument should be passed to the external program.
+ If then the argument will be passed;
+ otherwise, skipped. The default is .
+
+
+
+
+ Indicates if the argument should not be passed to the external
+ program. If then the argument will be
+ passed; otherwise, skipped. The default is .
+
+
+
+
+ Gets string value corresponding with the argument.
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a with the specified
+ value is in the collection.
+
+ The argument value to locate in the collection.
+
+ if a with value
+ is found in the collection; otherwise,
+ .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the with the specified value.
+
+ The value of the to get.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Provides credentials for password-based authentication schemes.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Returns a instance representing
+ the current .
+
+
+ A instance representing the current
+ , or if the
+ credentials should not be used to provide authentication information
+ to the external resource.
+
+
+
+
+ The domain or computer name that verifies the credentials.
+
+
+
+
+ The password for the user name associated with the credentials.
+
+
+
+
+ The user name associated with the credentials.
+
+
+
+
+ Indicates if the credentials should be used to provide authentication
+ information to the external resource. If then
+ the credentials will be passed; otherwise, not. The default is
+ .
+
+
+
+
+ Indicates if the credentials should not be used to provide authentication
+ information to the external resource. If then the
+ credentials will be passed; otherwise, not. The default is
+ .
+
+
+
+
+ A specialized used for specifying a set of
+ directories.
+
+
+ Hint for supporting tasks that the included directories instead of
+ files should be used.
+
+
+
+
+ Filesets are groups of files. These files can be found in a directory
+ tree starting in a base directory and are matched by patterns taken
+ from a number of patterns. Filesets can appear inside tasks that support
+ this feature or at the project level, i.e., as children of <project>.
+
+
+
Patterns
+
+ As described earlier, patterns are used for the inclusion and exclusion.
+ These patterns look very much like the patterns used in DOS and UNIX:
+
+
+
+
+ '*' matches zero or more characters
+ For example:
+
+ *.cs matches .cs, x.cs and FooBar.cs,
+ but not FooBar.xml (does not end with .cs).
+
+
+
+
+
+ '?' matches one character
+ For example:
+
+ ?.cs matches x.cs, A.cs, but not
+ .cs or xyz.cs (both don't have one character
+ before .cs).
+
+
+
+
+
+ Combinations of *'s and ?'s are allowed.
+
+
+ Matching is done per-directory. This means that first the first directory
+ in the pattern is matched against the first directory in the path to match.
+ Then the second directory is matched, and so on. For example, when we have
+ the pattern /?abc/*/*.cs and the path /xabc/foobar/test.cs,
+ the first ?abc is matched with xabc, then * is matched
+ with foobar, and finally *.cs is matched with test.cs.
+ They all match, so the path matches the pattern.
+
+
+ To make things a bit more flexible, we added one extra feature, which makes
+ it possible to match multiple directory levels. This can be used to match a
+ complete directory tree, or a file anywhere in the directory tree. To do this,
+ ** must be used as the name of a directory. When ** is used as
+ the name of a directory in the pattern, it matches zero or more directories.
+ For example: /test/** matches all files/directories under /test/,
+ such as /test/x.cs, or /test/foo/bar/xyz.html, but not /xyz.xml.
+
+
+ There is one "shorthand" - if a pattern ends with / or \, then
+ ** is appended. For example, mypackage/test/ is interpreted as
+ if it were mypackage/test/**.
+
+
Default Excludes
+
+ There are a set of definitions that are excluded by default from all
+ tasks that use filesets. They are:
+
+
+
+
+ **/*~
+
+
+
+
+ **/#*#
+
+
+
+
+ **/.#*
+
+
+
+
+ **/%*%
+
+
+
+
+ **/CVS
+
+
+
+
+ **/CVS/**
+
+
+
+
+ **/.cvsignore
+
+
+
+
+ **/.svn
+
+
+
+
+ **/.svn/**
+
+
+
+
+ **/_svn
+
+
+
+
+ **/_svn/**
+
+
+
+
+ **/SCCS
+
+
+
+
+ **/SCCS/**
+
+
+
+
+ **/vssver.scc
+
+
+
+
+ **/_vti_cnf/**
+
+
+
+
+ If you do not want these default excludes applied, you may disable them
+ by setting to .
+
+
+
+
+
+ Pattern
+ Match
+
+
+ **/CVS/*
+
+
+ Matches all files in CVS directories that can be
+ located anywhere in the directory tree.
+
+ Matches:
+
+
+ CVS/Repository
+
+
+ org/apache/CVS/Entries
+
+
+ org/apache/jakarta/tools/ant/CVS/Entries
+
+
+ But not:
+
+
+ org/apache/CVS/foo/bar/Entries (foo/bar/ part does not match)
+
+
+
+
+
+ org/apache/jakarta/**
+
+
+ Matches all files in the org/apache/jakarta directory
+ tree.
+
+ Matches:
+
+
+ org/apache/jakarta/tools/ant/docs/index.html
+
+
+ org/apache/jakarta/test.xml
+
+
+ But not:
+
+
+ org/apache/xyz.java (jakarta/ part is missing)
+
+
+
+
+
+ org/apache/**/CVS/*
+
+
+ Matches all files in CVS directories that are located
+ anywhere in the directory tree under org/apache.
+
+ Matches:
+
+
+ org/apache/CVS/Entries
+
+
+ org/apache/jakarta/tools/ant/CVS/Entries
+
+
+ But not:
+
+
+ org/apache/CVS/foo/bar/Entries (foo/bar/ part does not match)
+
+
+
+
+
+ **/test/**
+
+
+ Matches all files that have a test element in their
+ path, including test as a filename.
+
+
+
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ copy constructor
+
+
+
+
+
+ Creates a shallow copy of the .
+
+
+ A shallow copy of the .
+
+
+
+
+ Copies all instance data of the to a given
+ .
+
+
+
+
+ Determines if a file has a more recent last write time than the
+ given time, or no longer exists.
+
+ A file to check the last write time against.
+ The datetime to compare against.
+
+ The name of the file that has a last write time greater than
+ or that no longer exists;
+ otherwise, .
+
+
+
+
+ Determines if one of the given files has a more recent last write
+ time than the given time. If one of the given files no longer exists,
+ the target will be considered out-of-date.
+
+ A collection of filenames to check the last write time against.
+ The datetime to compare against.
+
+ The name of the first file that has a last write time greater than
+ ; otherwise, null.
+
+
+
+
+ When set to , causes the fileset element to
+ throw a when no files match the
+ includes and excludes criteria. The default is .
+
+
+
+
+ Indicates whether default excludes should be used or not.
+ The default is .
+
+
+
+
+ The base of the directory of this fileset. The default is the project
+ base directory.
+
+
+
+
+ Gets the collection of include patterns.
+
+
+
+
+ Gets the collection of exclude patterns.
+
+
+
+
+ Gets the collection of files that will be added to the
+ without pattern matching or checking if the
+ file exists.
+
+
+
+
+ Gets the collection of file names that match the fileset.
+
+
+ A collection that contains the file names that match the
+ .
+
+
+
+
+ Gets the collection of directory names that match the fileset.
+
+
+ A collection that contains the directory names that match the
+ .
+
+
+
+
+ Gets the collection of directory names that were scanned for files.
+
+
+ A collection that contains the directory names that were scanned for
+ files.
+
+
+
+
+ The items to include in the fileset.
+
+
+
+
+ The items to include in the fileset.
+
+
+
+
+ The items to exclude from the fileset.
+
+
+
+
+ The items to exclude from the fileset.
+
+
+
+
+ The files from which a list of patterns or files to include should
+ be obtained.
+
+
+
+
+ The files from which a list of patterns or files to include should
+ be obtained.
+
+
+
+
+ The files from which a list of patterns or files to exclude should
+ be obtained.
+
+
+
+
+ Determines the most recently modified file in the fileset (by LastWriteTime of the ).
+
+
+ The of the file that has the newest (closest to present) last write time.
+
+
+
+
+ The pattern or file name to exclude.
+
+
+
+
+ If then the pattern will be excluded;
+ otherwise, skipped. The default is .
+
+
+
+
+ Opposite of . If
+ then the pattern will be excluded; otherwise, skipped. The default
+ is .
+
+
+
+
+ If then the file name will be added to
+ the without pattern matching or checking
+ if the file exists. The default is .
+
+
+
+
+ If then the file will be searched for
+ on the path. The default is .
+
+
+
+
+ The pattern or file name to include.
+
+
+
+
+ If then the pattern will be included;
+ otherwise, skipped. The default is .
+
+
+
+
+ Opposite of . If
+ then the pattern will be included; otherwise, skipped. The default
+ is .
+
+
+
+
+ Gets the list of patterns in .
+
+
+
+
+ If then the patterns will be excluded;
+ otherwise, skipped. The default is .
+
+
+
+
+ Opposite of . If
+ then the patterns will be excluded; otherwise, skipped. The default
+ is .
+
+
+
+
+ The name of a file; each line of this file is taken to be a
+ pattern.
+
+
+
+
+ If then the patterns in the include file
+ will be added to the without pattern
+ matching or checking if the file exists. The default is
+ .
+
+
+
+
+ If then the patterns in the include file
+ will be searched for on the path. The default is .
+
+
+
+
+ If then the patterns will be included;
+ otherwise, skipped. The default is .
+
+
+
+
+ Opposite of . If
+ then the patterns will be included; otherwise, skipped. The default
+ is .
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Copy constructor for . Required in order to
+ assign references of type where
+ is used.
+
+ A instance to create a from.
+
+
+
+ Represents an environment variable.
+
+
+
+
+ Initializes a instance with the
+ specified name and value.
+
+ The name of the environment variable.
+ The value of the environment variable.
+
+
+
+ Initializes a instance.
+
+
+
+
+ The name of the environment variable.
+
+
+
+
+ The literal value for the environment variable.
+
+
+
+
+ The value for a file-based environment variable. NAnt will convert
+ it to an absolute filename.
+
+
+
+
+ The value for a directory-based environment variable. NAnt will
+ convert it to an absolute path.
+
+
+
+
+ The value for a PATH like environment variable. You can use
+ : or ; as path separators and NAnt will convert it to
+ the platform's local conventions.
+
+
+
+
+ Sets a single environment variable and treats it like a PATH -
+ ensures the right separator for the local platform is used.
+
+
+
+
+ Gets the value of the environment variable.
+
+
+
+
+ Indicates if the environment variable should be passed to the
+ external program. If then the environment
+ variable will be passed; otherwise, skipped. The default is
+ .
+
+
+
+
+ Indicates if the environment variable should not be passed to the
+ external program. If then the environment
+ variable will be passed; otherwise, skipped. The default is
+ .
+
+
+
+
+ A set of environment variables.
+
+
+
+
+ Environment variable to pass to a program.
+
+
+
+
+ Environment variable to pass to a program.
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a with the specified
+ value is in the collection.
+
+ The argument value to locate in the collection.
+
+ if a with value
+ is found in the collection; otherwise,
+ .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the with the specified name.
+
+ The name of the to get.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ The name of the NAnt property to set.
+
+
+
+
+ The string pattern to use to format the property.
+
+
+
+
+ Indicates if the formatter should be used to format the timestamp.
+ If then the formatter will be used;
+ otherwise, skipped. The default is .
+
+
+
+
+ Indicates if the formatter should be not used to format the
+ timestamp. If then the formatter will be
+ used; otherwise, skipped. The default is .
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Represents an option.
+
+
+
+
+ name, value constructor
+
+
+
+
+
+
+ Default constructor
+
+
+
+
+ Name of the option.
+
+
+
+
+ Value of the option. The default is .
+
+
+
+
+ Indicates if the option should be passed to the task.
+ If then the option will be passed;
+ otherwise, skipped. The default is .
+
+
+
+
+ Indicates if the option should not be passed to the task.
+ If then the option will be passed;
+ otherwise, skipped. The default is .
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a for the specified
+ task is in the collection.
+
+ The name of task for which the should be located in the collection.
+
+ if a for the specified
+ task is found in the collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the with the specified name.
+
+ The name of the option that should be located in the collection.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Represents a nested path element.
+
+
+
+
+ The name of a file to add to the path. Will be replaced with
+ the absolute path of the file.
+
+
+
+
+ The name of a directory to add to the path. Will be replaced with
+ the absolute path of the directory.
+
+
+
+
+ A string that will be treated as a path-like string. You can use
+ : or ; as path separators and NAnt will convert it
+ to the platform's local conventions, while resolving references
+ to environment variables.
+
+
+
+
+ If then the entry will be added to the
+ path; otherwise, skipped. The default is .
+
+
+
+
+ Opposite of . If
+ then the entry will be added to the path; otherwise, skipped.
+ The default is .
+
+
+
+
+ Gets the parts of a path represented by this element.
+
+
+ A containing the parts of a path
+ represented by this element.
+
+
+
+
+
+ Paths are groups of files and/or directories that need to be passed as a single
+ unit. The order in which parts of the path are specified in the build file is
+ retained, and duplicate parts are automatically suppressed.
+
+
+
+
+ Define a global <path> that can be referenced by other
+ tasks or types.
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Invoked by for build
+ attributes with an underlying type.
+
+ The to be used to resolve relative paths.
+ The string representing a path.
+
+
+
+ Returns a textual representation of the path, which can be used as
+ PATH environment variable definition.
+
+
+ A textual representation of the path.
+
+
+
+
+ Defines a set of path elements to add to the current path.
+
+ The to add.
+
+
+
+ Defines a path element to add to the current path.
+
+ The to add.
+
+
+
+ Returns all path elements defined by this path object.
+
+
+ A list of path elements.
+
+
+
+
+ Splits a PATH (with ; or : as separators) into its parts, while
+ resolving references to environment variables.
+
+ The to be used to resolve relative paths.
+ The path to translate.
+
+ A PATH split up its parts, with references to environment variables
+ resolved and duplicate entries removed.
+
+
+
+
+ Contains HTTP proxy settings used to process requests to Internet
+ resources.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets a instance representing the current
+ .
+
+
+ A instance representing the current
+ , or
+ if this proxy should not be used to connect to the external resource.
+
+
+
+
+ The name of the proxy host.
+
+
+
+
+ The port number on to use.
+
+
+
+
+ Specifies whether to bypass the proxy server for local addresses.
+ The default is .
+
+
+
+
+ The credentials to submit to the proxy server for authentication.
+
+
+
+
+ Indicates if the proxy should be used to connect to the external
+ resource. If then the proxy will be used;
+ otherwise, not. The default is .
+
+
+
+
+ Indicates if the proxy should not be used to connect to the external
+ resource. If then the proxy will be used;
+ otherwise, not. The default is .
+
+
+
+
+ Represents an element of which the XML is processed by its parent task
+ or type.
+
+
+
+
+ Gets the XML that this element represents.
+
+
+
+
+ Gets a value indicating whether the element is performing additional
+ processing using the that was use to
+ initialize the element.
+
+
+ , as the XML that represents this build
+ element is processed by the containing task or type.
+
+
+
+
+ ReplaceTokens filter token.
+
+
+
+
+ Token to be replaced.
+
+
+
+
+ New value of token.
+
+
+
+
+ Indicates if the token should be used to replace values.
+ If then the token will be used;
+ otherwise, not. The default is .
+
+
+
+
+ Indicates if the token should not be used to replace values.
+ If then the token will be used;
+ otherwise, not. The default is .
+
+
+
+
+ Represents an XML namespace.
+
+
+
+
+ The prefix to associate with the namespace.
+
+
+
+
+ The associated XML namespace URI.
+
+
+
+
+ Indicates if the namespace should be added to the .
+ If then the namespace will be added;
+ otherwise, skipped. The default is .
+
+
+
+
+ Indicates if the namespace should not be added to the .
+ list. If then the parameter will be
+ added; otherwise, skipped. The default is .
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a with the specified
+ value is in the collection.
+
+ The argument value to locate in the collection.
+
+ if a with
+ value is found in the collection; otherwise,
+ .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the with the specified prefix.
+
+ The prefix of the to get.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Represents an XSLT extension object. The object should have a default
+ parameterless constructor and the return value should be one of the
+ four basic XPath data types of number, string, Boolean or node set.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ The namespace URI to associate with the extension object.
+
+
+ The namespace URI to associate with the extension object, or
+ if not set.
+
+
+
+
+ The full type name of the XSLT extension object.
+
+
+
+
+ The assembly which contains the XSLT extension object.
+
+
+
+
+ Indicates if the extension object should be added to the XSLT argument
+ list. If then the extension object will be
+ added; otherwise, skipped. The default is .
+
+
+
+
+ Indicates if the extension object should not be added to the XSLT argument
+ list. If then the extension object will be
+ added; otherwise, skipped. The default is .
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Initializes a new instance of the
+ class with the
+ specified instance.
+
+
+
+
+ Initializes a new instance of the
+ class with the
+ specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added
+ to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the
+ end of the collection.
+
+ The array of
+ elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a
+ to the end of the collection.
+
+ The
+ to be added to the end of the collection.
+
+
+
+ Determines whether a is in the
+ collection.
+
+ The to locate
+ in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a with the
+ specified value is in the collection.
+
+ The argument value to locate in the
+ collection.
+
+ if a
+ with value is found in the collection;
+ otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array,
+ starting at the specified index of the target array.
+
+ The one-dimensional array that is the
+ destination of the elements copied from the collection. The array
+ must have zero-based indexing.
+ The zero-based index in
+ at which copying begins.
+
+
+
+ Retrieves the index of a specified
+ object in the collection.
+
+ The object for
+ which the index is returned.
+
+ The index of the specified . If the
+ is not currently a member of the
+ collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at
+ the specified index.
+
+ The zero-based index at which
+ should be inserted.
+ The to
+ insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire
+ collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove
+ from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get
+ or set.
+
+
+
+ Gets the with the specified name.
+
+ The name of the
+ to get.
+
+
+
+ Enumerates the elements of a
+ .
+
+
+
+
+ Initializes a new instance of the
+ class
+ with the specified .
+
+ The collection that should be
+ enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Represents an XSLT parameter.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ The name of the XSLT parameter.
+
+
+ The name of the XSLT parameter, or if
+ not set.
+
+
+
+
+ The namespace URI to associate with the parameter.
+
+
+ The namespace URI to associate with the parameter, or
+ if not set.
+
+
+
+
+ The value of the XSLT parameter.
+
+
+ The value of the XSLT parameter, or if
+ not set.
+
+
+
+
+ Indicates if the parameter should be added to the XSLT argument list.
+ If then the parameter will be added;
+ otherwise, skipped. The default is .
+
+
+
+
+ Indicates if the parameter should not be added to the XSLT argument
+ list. If then the parameter will be
+ added; otherwise, skipped. The default is .
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a with the specified
+ value is in the collection.
+
+ The argument value to locate in the collection.
+
+ if a with
+ value is found in the collection; otherwise,
+ .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the with the specified name.
+
+ The name of the to get.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Resolves assemblies by caching assemblies that were loaded.
+
+
+
+
+ Initializes an instanse of the
+ class.
+
+
+
+
+ Initializes an instanse of the
+ class in the context of the given .
+
+
+
+
+ Installs the assembly resolver by hooking up to the
+ event.
+
+
+
+
+ Uninstalls the assembly resolver.
+
+
+
+
+ Resolves an assembly not found by the system using the assembly
+ cache.
+
+ The source of the event.
+ A that contains the event data.
+
+ The loaded assembly, or if not found.
+
+
+
+
+ Occurs when an assembly is loaded. The loaded assembly is added
+ to the assembly cache.
+
+ The source of the event.
+ An that contains the event data.
+
+
+
+ Logs a message with the given priority.
+
+ The message priority at which the specified message is to be logged.
+ The message to log, containing zero or more format items.
+ An array containing zero or more objects to format.
+
+ The actual logging is delegated to the in which
+ the is executing
+
+
+
+
+ Holds the loaded assemblies.
+
+
+
+
+ Holds the in which the
+ is executing.
+
+
+ The in which the
+ is executing or if the
+ is not executing in the context of a .
+
+
+
+
+ Represents a valid command-line argument.
+
+
+
+
+ Sets the value of the argument on the specified object.
+
+ The object on which the value of the argument should be set.
+ The argument is required and no value was specified.
+
+
+ The matching property is collection-based, but is not initialized
+ and cannot be written to.
+
+ -or-
+
+ The matching property is collection-based, but has no strongly-typed
+ Add method.
+
+ -or-
+
+ The matching property is collection-based, but the signature of the
+ Add method is not supported.
+
+
+
+
+
+ Assigns the specified value to the argument.
+
+ The value that should be assigned to the argument.
+
+ Duplicate argument.
+ -or-
+ Invalid value.
+
+
+
+
+ Indicates whether the specified is a
+ .
+
+
+ if can be assigned
+ to ; otherwise, .
+
+
+
+
+ Indicates whether the specified is collection-based.
+
+
+ if can be assigned
+ to and is not backed by a
+ that can be assigned to ;
+ otherwise, .
+
+
+
+
+ Indicates whether the specified is an array.
+
+
+ if is an array;
+ otherwise, .
+
+
+
+
+ Gets the property that backs the argument.
+
+
+ The property that backs the arguments.
+
+
+
+
+ Gets the underlying of the argument.
+
+
+ The underlying of the argument.
+
+
+ If the of the argument is a collection type,
+ this property will returns the underlying type of that collection.
+
+
+
+
+ Gets the long name of the argument.
+
+ The long name of the argument.
+
+
+
+ Gets the short name of the argument.
+
+ The short name of the argument.
+
+
+
+ Gets the description of the argument.
+
+ The description of the argument.
+
+
+
+ Gets a value indicating whether the argument is required.
+
+
+ if the argument is required; otherwise,
+ .
+
+
+
+
+ Gets a value indicating whether a mathing command-line argument
+ was already found.
+
+
+ if a matching command-line argument was
+ already found; otherwise, .
+
+
+
+
+ Gets a value indicating whether the argument can be specified multiple
+ times.
+
+
+ if the argument may be specified multiple
+ times; otherwise, .
+
+
+
+
+ Gets a value indicating whether the argument can only be specified once
+ with a certain value.
+
+
+ if the argument should always have a unique
+ value; otherwise, .
+
+
+
+
+ Gets the of the property to which the argument
+ is applied.
+
+
+ The of the property to which the argument is
+ applied.
+
+
+
+
+ Gets a value indicating whether the argument is collection-based.
+
+
+ if the argument is backed by a
+ that can be assigned to and is not backed
+ by a that can be assigned to
+ ; otherwise, .
+
+
+
+
+ Gets a value indicating whether the argument is a set of name/value
+ pairs.
+
+
+ if the argument is backed by a
+ that can be assigned to ; otherwise,
+ .
+
+
+
+
+ Gets a value indicating whether the argument is array-based.
+
+
+ if the argument is backed by an array;
+ otherwise, .
+
+
+
+
+ Gets a value indicating whether the argument is the default argument.
+
+
+ if the argument is the default argument;
+ otherwise, .
+
+
+
+
+ Gets a value indicating whether the argument cannot be combined with
+ other arguments.
+
+
+ if the argument cannot be combined with other
+ arguments; otherwise, .
+
+
+
+
+ Allows control of command line parsing.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified argument type.
+
+ Specifies the checking to be done on the argument.
+
+
+
+ Gets or sets the checking to be done on the argument.
+
+ The checking that should be done on the argument.
+
+
+
+ Gets or sets the long name of the argument.
+
+ The long name of the argument.
+
+
+
+ Gets or sets the short name of the argument.
+
+ The short name of the argument.
+
+
+
+ Gets or sets the description of the argument.
+
+ The description of the argument.
+
+
+
+ Contains a strongly typed collection of objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the with the specified name.
+
+ The name of the to get.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ The exception that is thrown when one of the command-line arguments provided
+ is not valid.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with a descriptive message.
+
+ A descriptive message to include with the exception.
+
+
+
+ Initializes a new instance of the class
+ with a descriptive message and an inner exception.
+
+ A descriptive message to include with the exception.
+ A nested exception that is the cause of the current exception.
+
+
+
+ Initializes a new instance of the class
+ with serialized data.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+
+
+
+ Used to control parsing of command-line arguments.
+
+
+
+
+ Indicates that this field is required. An error will be displayed
+ if it is not present when parsing arguments.
+
+
+
+
+ Only valid in conjunction with Multiple.
+ Duplicate values will result in an error.
+
+
+
+
+ Inidicates that the argument may be specified more than once.
+ Only valid if the argument is a collection
+
+
+
+
+ Inidicates that if this argument is specified, no other arguments may be specified.
+
+
+
+
+ The default type for non-collection arguments.
+ The argument is not required, but an error will be reported if it is specified more than once.
+
+
+
+
+ The default type for collection arguments.
+ The argument is permitted to occur multiple times, but duplicate
+ values will cause an error to be reported.
+
+
+
+
+ Commandline parser.
+
+
+
+
+ Initializes a new instance of the class
+ using possible arguments deducted from the specific .
+
+ The from which the possible command-line arguments should be retrieved.
+ A value indicating whether or not a response file is able to be used.
+ is a null reference.
+
+
+
+ Parses an argument list.
+
+ The arguments to parse.
+ The destination object on which properties will be set corresponding to the specified arguments.
+ is a null reference.
+ The of does not match the argument specification that was used to initialize the parser.
+
+
+
+ Splits a string and removes any empty strings from the
+ result. Same functionality as the
+ public string[] Split(char[] separator, StringSplitOptions options)
+ method in .Net 2.0. Replace with that call when 2.0 is standard.
+
+
+
+ the array of strings
+
+
+
+ Read a response file and parse the arguments as usual.
+
+
+
+
+
+ Parse the argument list using the
+
+
+
+
+
+ Returns the that's applied
+ on the specified property.
+
+ The property of which applied should be returned.
+
+ The that's applied to the
+ , or a null reference if none was applied.
+
+
+
+
+ Gets a logo banner using version and copyright attributes defined on the
+ or the
+ .
+
+
+ A logo banner.
+
+
+
+
+ Gets the usage instructions.
+
+ The usage instructions.
+
+
+
+ Gets a value indicating whether no arguments were specified on the
+ command line.
+
+
+
+
+ Marks a command-line option as being the default option. When the name of
+ a command-line argument is not specified, this option will be assumed.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified argument type.
+
+ Specifies the checking to be done on the argument.
+
+
+
+ Provides modified version for Copy and Move from the File class that
+ allow for filter chain processing.
+
+
+
+
+ Copies a file filtering its content through the filter chain.
+
+ The file to copy
+ The file to copy to
+ Chain of filters to apply when copying, or is no filters should be applied.
+ The encoding used to read the soure file.
+ The encoding used to write the destination file.
+
+
+
+ Moves a file filtering its content through the filter chain.
+
+ The file to move
+ The file to move move to
+ Chain of filters to apply when moving, or is no filters should be applied.
+ The encoding used to read the soure file.
+ The encoding used to write the destination file.
+
+
+
+ Returns a uniquely named empty temporary directory on disk.
+
+
+ A representing the temporary directory.
+
+
+
+
+ Combines two path strings.
+
+ The first path.
+ The second path.
+
+ A string containing the combined paths. If one of the specified
+ paths is a zero-length string, this method returns the other path.
+ If contains an absolute path, this method
+ returns .
+
+
+
+ On *nix, processing is delegated to .
+
+
+ On Windows, this method normalized the paths to avoid running into
+ the 260 character limit of a path and converts forward slashes in
+ both and to
+ the platform's directory separator character.
+
+
+
+
+
+ Returns Absolute Path (Fix for 260 Char Limit of Path.GetFullPath(...))
+
+ The file or directory for which to obtain absolute path information.
+ Path Resolved
+ path is a zero-length string, contains only white space or contains one or more invalid characters as defined by .
+ is .
+
+
+
+ Returns the home directory of the current user.
+
+
+ The home directory of the current user.
+
+
+
+
+ Helper class for determining whether assemblies are located in the
+ Global Assembly Cache.
+
+
+
+
+ Initializes a new instance of the class in
+ the context of the given .
+
+
+
+
+ Determines whether an assembly is installed in the Global
+ Assembly Cache given its file name or path.
+
+ The name or path of the file that contains the manifest of the assembly.
+
+ if is
+ installed in the Global Assembly Cache; otherwise,
+ .
+
+
+
+ To determine whether the specified assembly is installed in the
+ Global Assembly Cache, the assembly is loaded into a separate
+ .
+
+
+ If the family of the current runtime framework does not match the
+ family of the current target framework, this method will return
+ for all assemblies as there's no way to
+ determine whether a given assembly is in the Global Assembly Cache
+ for another framework family than the family of the current runtime
+ framework.
+
+
+
+
+
+ Holds the in which assemblies will be loaded
+ to determine whether they are in the Global Assembly Cache.
+
+
+
+
+ Holds the context of the .
+
+
+
+
+ Holds a list of assembly files for which already has been determined
+ whether they are located in the Global Assembly Cache.
+
+
+
+ The key of the is the full path to the
+ assembly file and the value is a indicating
+ whether the assembly is located in the Global Assembly Cache.
+
+
+
+
+
+ Holds a value indicating whether the object has been disposed.
+
+
+
+
+ Gets the context of the .
+
+
+ The context of the .
+
+
+
+
+ Obtains a lifetime service object to control the lifetime policy for
+ this instance.
+
+
+ An object of type used to control the lifetime
+ policy for this instance. This is the current lifetime service object
+ for this instance if one exists; otherwise, a new lifetime service
+ object initialized with a lease that will never time out.
+
+
+
+
+ Determines whether an assembly is installed in the Global
+ Assembly Cache given its file name or path.
+
+ The name or path of the file that contains the manifest of the assembly.
+
+ if is
+ installed in the Global Assembly Cache; otherwise,
+ .
+
+
+
+
+ Provides a set of helper methods related to reflection.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Uses a private access modifier to prevent instantiation of this class.
+
+
+
+
+ Loads the type specified in the type string with assembly qualified name.
+
+ The assembly qualified name of the type to load.
+ Flag set to to throw an exception if the type cannot be loaded.
+
+ is and
+ an error is encountered while loading the , or
+ is not an assembly qualified name.
+
+
+ If the cannot be instantiated from the assembly
+ qualified type name, then we'll try to instantiate the type using its
+ simple type name from an already loaded assembly with an assembly
+ name mathing the assembly in the assembly qualified type name.
+
+
+ The type loaded or if it could not be loaded.
+
+
+
+
+ Provides resource support to NAnt assemblies. This class cannot
+ be inherited from.
+
+
+
+
+ Prevents the class from being
+ instantiated explicitly.
+
+
+
+
+ Registers the assembly to be used as the fallback if resources
+ aren't found in the local satellite assembly.
+
+
+ A that represents the
+ assembly to register.
+
+
+ The following example shows how to register a shared satellite
+ assembly.
+
+
+
+
+
+
+
+ Returns the value of the specified string resource.
+
+
+ A that contains the name of the
+ resource to get.
+
+
+ A that contains the value of the
+ resource localized for the current culture.
+
+
+ The returned resource is localized for the cultural settings of the
+ current .
+
+ The GetString method is thread-safe.
+
+
+
+ The following example demonstrates the GetString method using
+ the cultural settings of the current .
+
+
+
+
+
+
+
+ Returns the value of the specified string resource localized for
+ the specified culture.
+
+
+
+
+ A that contains the value of the
+ resource localized for the specified culture.
+
+
+
+ The GetString method is thread-safe.
+
+
+
+ The following example demonstrates the GetString method using
+ a specific culture.
+
+
+
+
+
+
+
+ Returns the value of the specified string resource localized for
+ the specified culture for the specified assembly.
+
+
+ A that contains the name of the
+ resource to get.
+
+
+ A that represents
+ the culture for which the resource is localized.
+
+
+ A
+
+
+ A that contains the value of the
+ resource localized for the specified culture.
+
+
+
+ The GetString method is thread-safe.
+
+
+
+ The following example demonstrates the GetString method using
+ specific culture and assembly.
+
+
+
+
+
+
+
+ Registers the specified assembly.
+
+
+ A that represents the
+ assembly to register.
+
+
+
+
+ Determines the manifest resource name of the resource holding the
+ localized strings.
+
+ The name of the assembly.
+
+ The manifest resource name of the resource holding the localized
+ strings for the specified assembly.
+
+
+ The manifest resource name of the resource holding the localized
+ strings should match the name of the assembly, minus Tasks
+ suffix.
+
+
+
+
+ Groups a set of useful manipulation and validation
+ methods.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Prevents instantiation of the class.
+
+
+
+
+ Determines whether the last character of the given
+ matches the specified character.
+
+ The string.
+ The character.
+
+ if the last character of
+ matches ; otherwise, .
+
+ is .
+
+
+
+ Indicates whether or not the specified is
+ or an string.
+
+ The value to check.
+
+ if is
+ or an empty string (""); otherwise, .
+
+
+
+
+ Converts an empty string ("") to .
+
+ The value to convert.
+
+ if is an empty
+ string ("") or ; otherwise, .
+
+
+
+
+ Converts to an empty string.
+
+ The value to convert.
+
+ An empty string if is ;
+ otherwise, .
+
+
+
+
+ Concatenates a specified separator between each
+ element of a specified , yielding a
+ single concatenated string.
+
+ A .
+ A .
+
+ A consisting of the elements of
+ interspersed with the separator string.
+
+
+
+ For example if is ", " and the elements
+ of are "apple", "orange", "grape", and "pear",
+ returns "apple, orange,
+ grape, pear".
+
+
+ If is , an empty
+ string () is used instead.
+
+
+
+
+
+ Creates a shallow copy of the specified .
+
+ The that should be copied.
+
+ A shallow copy of the specified .
+
+
+
+
+ Thrown whenever an error occurs during the build.
+
+
+
+
+ The location of the exception in the build document (xml file).
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with a descriptive message.
+
+ A descriptive message to include with the exception.
+
+
+
+ Initializes a new instance of the class
+ with the specified descriptive message and inner exception.
+
+ A descriptive message to include with the exception.
+ A nested exception that is the cause of the current exception.
+
+
+
+ Initializes a new instance of the class
+ with a descriptive message and the location in the build file that
+ caused the exception.
+
+ A descriptive message to include with the exception.
+ The location in the build file where the exception occured.
+
+
+
+ Initializes a new instance of the class
+ with a descriptive message, the location in the build file and an
+ instance of the exception that is the cause of the current exception.
+
+ A descriptive message to include with the exception.
+ The location in the build file where the exception occured.
+ A nested exception that is the cause of the current exception.
+
+
+
+ Initializes a new instance of the class
+ with serialized data.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+
+
+
+ Serializes this object into the provided.
+
+ The to populate with data.
+ The destination for this serialization.
+
+
+
+ Creates and returns a string representation of the current
+ exception.
+
+
+ A string representation of the current exception.
+
+
+
+
+ Gets the raw message as specified when the exception was
+ constructed.
+
+
+ The raw message as specified when the exception was
+ constructed.
+
+
+
+
+ Gets the location in the build file of the element from which the
+ exception originated.
+
+
+ The location in the build file of the element from which the
+ exception originated.
+
+
+
+
+ Gets a message that describes the current exception.
+
+
+ The error message that explains the reason for the exception.
+
+
+ Adds location information to the message, if available.
+
+
+
+
+ Represents the set of command-line options supported by NAnt.
+
+
+
+
+ Gets or sets the target framework to use (overrides
+ NAnt.exe.config settings)
+
+
+ The framework that should be used.
+
+
+ For a list of possible frameworks, see NAnt.exe.config, possible
+ values include "net-1.0", "net-1.1", etc.
+
+
+
+
+ Gets or sets the target framework to use (overrides
+ NAnt.exe.config settings)
+
+
+ The framework that should be used.
+
+
+ For a list of possible frameworks, see NAnt.exe.config, possible
+ values include "net-1.0", "net-1.1", etc.
+
+
+
+
+ Gets or sets the buildfile that should be executed.
+
+
+ The buildfile that should be executed.
+
+
+ Can be both a file or an URI.
+
+
+
+
+ Gets or sets a value indicating whether more information should be
+ displayed during the build process.
+
+
+ if more information should be displayed;
+ otherwise, . The default is .
+
+
+
+
+ Gets or sets a value indicating whether debug information should be
+ displayed during the build process.
+
+
+ if debug information should be displayed;
+ otherwise, . The default is .
+
+
+
+
+ Gets or sets a value indicating whether only error and debug debug messages should be
+ displayed during the build process.
+
+
+ if only error or warning messages should be
+ displayed; otherwise, . The default is
+ .
+
+
+
+
+ Gets or sets a value indicating whether to produce emacs (and other
+ editor) friendly output.
+
+
+ if output is to be unadorned so that emacs
+ and other editors can parse files names, etc. The default is
+ .
+
+
+
+
+ Gets a value indicating whether parent directories should be searched
+ for a buildfile.
+
+
+ if parent directories should be searched for
+ a build file; otherwise, . The default is
+ .
+
+
+
+
+ Gets or sets the indentation level of the build output.
+
+
+ The indentation level of the build output. The default is 0.
+
+
+
+
+ Gets or sets the list of properties that should be set.
+
+
+ The list of properties that should be set.
+
+
+
+
+ Gets or sets the of logger to add to the list
+ of listeners.
+
+
+ The of logger to add to the list of
+ listeners.
+
+
+ The should derive from .
+
+
+
+
+ Gets or sets the name of the file to log output to.
+
+
+ The name of the file to log output to.
+
+
+
+
+ Gets a collection containing fully qualified type names of classes
+ implementating that should be added
+ to the project as listeners.
+
+
+ A collection of fully qualified type names that should be added as
+ listeners to the .
+
+
+
+
+ Gets a collection of assemblies to load extensions from.
+
+
+ A collection of assemblies to load extensions from.
+
+
+
+
+ Gets or sets a value indicating whether help
+ should be printed.
+
+
+ if help should be
+ printed; otherwise, . The default is
+ .
+
+
+
+
+ Gets or sets a value indicating whether the logo banner should be
+ printed.
+
+
+ if the logo banner should be printed; otherwise,
+ . The default is .
+
+
+
+
+ Gets or sets a value indicating whether the NAnt help should be
+ printed.
+
+
+ if NAnt help should be printed; otherwise,
+ . The default is .
+
+
+
+
+ Gets a collection containing the targets that should be executed.
+
+
+ A collection that contains the targets that should be executed.
+
+
+
+
+ Custom configuration section handler for the element.
+
+
+
+
+ This just passed things through. Return the node read from the config file.
+
+
+
+
+ Main entry point to NAnt that is called by the ConsoleStub.
+
+
+
+
+ Starts NAnt. This is the Main entry point.
+
+ Command Line args, or whatever you want to pass it. They will treated as Command Line args.
+
+ The exit code.
+
+
+
+
+ Prints the projecthelp to the console.
+
+ The build file to show help for.
+
+ is loaded and transformed with
+ ProjectHelp.xslt, which is an embedded resource.
+
+
+
+
+ Gets the file name for the build file in the specified directory.
+
+ The directory to look for a build file. When in doubt use Environment.CurrentDirectory for directory.
+ Look for a build file with this pattern or name. If null look for a file that matches the default build pattern (*.build).
+ Whether or not to search the parent directories for a build file.
+ The path to the build file or null if no build file could be found.
+
+
+
+ Loads the extension assemblies in the current
+ and scans them for extensions.
+
+ The extension assemblies to load.
+ The which will be used to output messages to the build log.
+
+
+
+ Dynamically constructs an instance of
+ the class specified.
+
+
+
+ At this point, only looks in the assembly where
+ is defined.
+
+
+ The fully qualified name of the logger that should be instantiated.
+ Type could not be loaded.
+ does not implement .
+
+
+
+ Dynamically constructs an instance of
+ the class specified.
+
+
+
+ At this point, only looks in the assembly where
+ is defined.
+
+
+ The fully qualified name of the listener that should be instantiated.
+ Type could not be loaded.
+ does not implement .
+
+
+
+ Add the listeners specified in the command line arguments,
+ along with the default listener, to the specified project.
+
+ The command-line options.
+ The to add listeners to.
+
+
+
+ Spits out generic help info to the console.
+
+
+
+
+ Creates a new instance of the
+ class for the specified class in the
+ specified.
+
+ The containing the .
+ The class representing the .
+
+
+
+ Gets the name of the class that can be
+ created using this .
+
+
+ The name of the class that can be created
+ using this .
+
+
+
+
+ Gets the from which the data type will be
+ created.
+
+
+ The containing the data type.
+
+
+
+
+ Gets the name of the data type which the
+ can create.
+
+
+ The name of the data type which the
+ can create.
+
+
+
+
+ Contains a strongly typed collection of objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a for the specified
+ task is in the collection.
+
+ The name of task for which the should be located in the collection.
+
+ if a for
+ the specified task is found in the collection; otherwise,
+ .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the for the specified task.
+
+ The name of task for which the should be located in the collection.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified capacity.
+
+
+
+
+ Inherits Properties from an existing property
+ dictionary Instance
+
+ DataType list to inherit
+
+
+
+ Used for searching filesystem based on given include/exclude rules.
+
+
+ Simple client code for testing the class.
+
+ while (true) {
+ DirectoryScanner scanner = new DirectoryScanner();
+
+ Console.Write("Scan Basedirectory : ");
+ string s = Console.ReadLine();
+ if (s.Length == 0) break;
+ scanner.BaseDirectory = s;
+
+ while(true) {
+ Console.Write("Include pattern : ");
+ s = Console.ReadLine();
+ if (s.Length == 0) break;
+ scanner.Includes.Add(s);
+ }
+
+ while(true) {
+ Console.Write("Exclude pattern : ");
+ s = Console.ReadLine();
+ if (s.Length == 0) break;
+ scanner.Excludes.Add(s);
+ }
+
+ foreach (string name in scanner.FileNames)
+ Console.WriteLine("file:" + name);
+ foreach (string name in scanner.DirectoryNames)
+ Console.WriteLine("dir :" + name);
+
+ Console.WriteLine("");
+ }
+
+
+
+
+
+ Creates a shallow copy of the .
+
+
+ A shallow copy of the .
+
+
+
+
+ Uses and search criteria (relative to
+ or absolute), to search for filesystem objects.
+
+
+
+
+ Parses specified NAnt search patterns for search directories and
+ corresponding regex patterns.
+
+ In. NAnt patterns. Absolute or relative paths.
+ Out. Regex patterns. Absolute canonical paths.
+ Out. Non-regex files. Absolute canonical paths.
+ In. Whether to allow a pattern to add search directories.
+
+
+
+ Given a NAnt search pattern returns a search directory and an regex
+ search pattern.
+
+ Whether this pattern is an include or exclude pattern
+ NAnt searh pattern (relative to the Basedirectory OR absolute, relative paths refering to parent directories ( ../ ) also supported)
+ Out. Absolute canonical path to the directory to be searched
+ Out. Whether the pattern is potentially recursive or not
+ Out. Whether this is a regex pattern or not
+ Out. Regex search pattern (absolute canonical path)
+
+
+
+ Searches a directory recursively for files and directories matching
+ the search criteria.
+
+ Directory in which to search (absolute canonical path)
+ Whether to scan recursively or not
+
+
+
+ Converts search pattern to a regular expression pattern.
+
+ Search pattern relative to the search directory.
+ Regular expresssion
+
+
+
+ Gets the collection of include patterns.
+
+
+
+
+ Gets the collection of exclude patterns.
+
+
+
+
+ The base directory to scan. The default is the
+ current directory.
+
+
+
+
+ Gets the list of files that match the given patterns.
+
+
+
+
+ Gets the list of directories that match the given patterns.
+
+
+
+
+ Gets the list of directories that were scanned for files.
+
+
+
+
+ Creates a shallow copy of the .
+
+
+ A shallow copy of the .
+
+
+
+
+ Creates a string representing a list of the strings in the collection.
+
+
+ A string that represents the contents.
+
+
+
+
+ Creates a shallow copy of the .
+
+
+ A shallow copy of the .
+
+
+
+
+ Determines whether the specified string is in the
+ .
+
+ The string to locate in the . The value can be .
+
+ if value is found in the ; otherwise, .
+
+
+ String comparisons within the
+ are only case-sensitive if the filesystem on which
+ is located, is case-sensitive.
+
+
+
+
+ Searches for the specified string and returns the zero-based index
+ of the first occurrence within the .
+
+ The string to locate. The value can be .
+
+ The zero-based index of the first occurrence of
+ in the , if found; otherwise, -1.
+
+
+ String comparisons within the
+ are only case-sensitive if the filesystem on which
+ is located, is case-sensitive.
+
+
+
+
+ Determines whether the filesystem on which the specified path is
+ located is case-sensitive.
+
+ The path of which should be determined whether its on a case-sensitive filesystem.
+
+ if is located on a
+ case-sensitive filesystem; otherwise, .
+
+
+
+
+ Gets the value of the specified property.
+
+ The name of the property to get the value of.
+
+ The value of the specified property.
+
+
+
+
+ Splits an input string into a sequence of tokens used during parsing.
+
+
+
+
+ Available tokens
+
+
+
+
+ Encalsulates information about installed frameworks incuding version
+ information and directory locations for finding tools.
+
+
+
+
+ Initializes a new instance of the class
+ with a name, description, version, runtime engine, directory information
+ and properties.
+
+ The name of the framework.
+ The family of the framework.
+ The description of the framework.
+ The version number of the framework.
+ The Common Language Runtime version of the framework.
+ The directory of the framework.
+ The directory containing the SDK tools for the framework, if available.
+ The directory containing the system assemblies for the framework.
+ The name of the runtime engine, if required.
+ The used to initialized the framework.
+
+
+
+ Gets the name of the framework.
+
+
+ The name of the framework.
+
+
+
+
+ Gets the family of the framework.
+
+
+ The family of the framework.
+
+
+
+
+ Gets the description of the framework.
+
+
+ The description of the framework.
+
+
+
+
+ Gets the version of the framework.
+
+
+ The version of the framework.
+
+
+
+
+ Gets the Common Language Runtime of the framework.
+
+
+ The Common Language Runtime of the framework.
+
+
+
+
+ Gets the Visual Studio version that corresponds with this
+ framework.
+
+
+ The Visual Studio version that corresponds with this framework.
+
+ There is no version of Visual Studio .NET that corresponds with this framework.
+
+
+
+ Gets the base directory of the framework tools for the framework.
+
+
+ The base directory of the framework tools for the framework.
+
+
+
+
+ Gets the path to the runtime engine for this framework.
+
+
+ The path to the runtime engine for the framework or
+ if no runtime engine is configured for the framework.
+
+
+
+
+ Gets the directory where the system assemblies for the framework
+ are located.
+
+
+ The directory where the system assemblies for the framework are
+ located.
+
+
+
+
+ Gets the directory containing the SDK tools for the framework.
+
+
+ The directory containing the SDK tools for the framework or a null
+ refererence if the sdk directory
+
+
+
+
+ Gets the used to initialize this framework.
+
+
+ The used to initialize this framework.
+
+
+
+
+ Gets or sets the collection of environment variables that should be
+ passed to external programs that are launched in the runtime engine
+ of the current framework.
+
+
+ The collection of environment variables that should be passed to
+ external programs that are launched in the runtime engine of the
+ current framework.
+
+
+
+
+ Gets the set of assemblies and directories that should scanned for
+ NAnt tasks, types or functions.
+
+
+ The set of assemblies and directories that should be scanned for
+ NAnt tasks, types or functions.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified capacity.
+
+
+
+
+ Stores the file name, line number and column number to record a position
+ in a text file.
+
+
+
+
+ Creates a location consisting of a file name, line number and
+ column number.
+
+
+ can be a local URI resource, e.g., file:///C:/WINDOWS/setuplog.txt.
+
+
+
+
+ Creates a location consisting of a file name.
+
+
+ can be a local URI resource, e.g., file:///C:/WINDOWS/setuplog.txt.
+
+
+
+
+ Creates an "unknown" location.
+
+
+
+ Private Init function.
+
+
+
+ Returns the file name, line number and a trailing space. An error
+ message can be appended easily. For unknown locations, returns
+ an empty string.
+
+
+
+
+ Gets a string containing the file name for the location.
+
+
+ The file name includes both the file path and the extension.
+
+
+
+
+ Gets the line number for the location.
+
+
+ Lines start at 1. Will be zero if not specified.
+
+
+
+
+ Gets the column number for the location.
+
+
+ Columns start a 1. Will be zero if not specified.
+
+
+
+
+ Maps XML nodes to the text positions from their original source.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Determines if a file has been loaded by the current project.
+
+ The file to check.
+
+ if the specified file has already been loaded
+ by the current project; otherwise, .
+
+
+
+
+ Adds an to the map.
+
+
+ An can only be added to the map once.
+
+
+
+
+ Returns the in the XML file for the given node.
+
+
+ The must be from an
+ that has been added to the map.
+
+
+
+
+ Represents a position in the build file.
+
+
+
+
+ Initializes a new instance of the
+ with the speified line and column.
+
+ The line coordinate of the position.
+ The column coordinate of the position.
+
+
+
+ The line coordinate of the position.
+
+
+
+
+ The column coordinate of the position.
+
+
+
+
+ Defines the set of levels recognised by the NAnt logging system.
+
+
+
+
+ Designates fine-grained informational events that are most useful
+ to debug a build process.
+
+
+
+
+ Designates events that offer a more detailed view of the build
+ process.
+
+
+
+
+ Designates informational events that are useful for getting a
+ high-level view of the build process.
+
+
+
+
+ Designates potentionally harmful events.
+
+
+
+
+ Designates error events.
+
+
+
+
+ Can be used to suppress all messages.
+
+
+ No events should be logged with this .
+
+
+
+
+ Class representing an event occurring during a build.
+
+
+
+ An event is built by specifying either a project, a task or a target.
+
+
+ A level event will only have a
+ reference.
+
+
+ A level event will have and
+ references.
+
+
+ A level event will have ,
+ and references.
+
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Initializes a new instance of the
+ class for a level event.
+
+ The that emitted the event.
+
+
+
+ Initializes a new instance of the
+ class for a level event.
+
+ The that emitted the event.
+
+
+
+ Initializes a new instance of the
+ class for a level event.
+
+ The that emitted the event.
+
+
+
+ Gets or sets the message associated with this event.
+
+
+ The message associated with this event.
+
+
+
+
+ Gets or sets the priority level associated with this event.
+
+
+ The priority level associated with this event.
+
+
+
+
+ Gets or sets the associated with this event.
+
+
+ The associated with this event.
+
+
+
+
+ Gets the that fired this event.
+
+
+ The that fired this event.
+
+
+
+
+ Gets the that fired this event.
+
+
+ The that fired this event, or a null reference
+ if this is a level event.
+
+
+
+
+ Gets the that fired this event.
+
+
+ The that fired this event, or
+ if this is a or level
+ event.
+
+
+
+
+ Represents the method that handles the build events.
+
+ The source of the event.
+ A that contains the event data.
+
+
+
+ Instances of classes that implement this interface can register to be
+ notified when things happen during a build.
+
+
+
+
+ Signals that a build has started.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event is fired before any targets have started.
+
+
+
+
+ Signals that the last target has finished.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event will still be fired if an error occurred during the build.
+
+
+
+
+ Signals that a target has started.
+
+ The source of the event.
+ A object that contains the event data.
+
+
+
+ Signals that a target has finished.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event will still be fired if an error occurred during the build.
+
+
+
+
+ Signals that a task has started.
+
+ The source of the event.
+ A object that contains the event data.
+
+
+
+ Signals that a task has finished.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event will still be fired if an error occurred during the build.
+
+
+
+
+ Signals that a message has been logged.
+
+ The source of the event.
+ A object that contains the event data.
+
+
+
+ Interface used by NAnt to log the build output.
+
+
+ Depending on the supplied command-line arguments, NAnt will set the
+ to or a
+ with a file as backend store.
+
+
+
+
+ Flushes buffered build events or messages to the underlying storage.
+
+
+
+
+ Gets or sets the highest level of message this logger should respond
+ to.
+
+ The highest level of message this logger should respond to.
+
+ Only messages with a message level higher than or equal to the given
+ level should actually be written to the log.
+
+
+
+
+ Gets or sets a value indicating whether to produce emacs (and other
+ editor) friendly output.
+
+
+ if output is to be unadorned so that emacs
+ and other editors can parse files names, etc.
+
+
+
+
+ Gets or sets the to which the logger is
+ to send its output.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Flushes buffered build events or messages to the underlying storage.
+
+
+
+
+ Signals that a build has started.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event is fired before any targets have started.
+
+
+
+
+ Signals that the last target has finished.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event will still be fired if an error occurred during the build.
+
+
+
+
+ Signals that a target has started.
+
+ The source of the event.
+ A object that contains the event data.
+
+
+
+ Signals that a task has finished.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event will still be fired if an error occurred during the build.
+
+
+
+
+ Signals that a task has started.
+
+ The source of the event.
+ A object that contains the event data.
+
+
+
+ Signals that a task has finished.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event will still be fired if an error occurred during the build.
+
+
+
+
+ Signals that a message has been logged.
+
+ The source of the event.
+ A object that contains the event data.
+
+ Only messages with a priority higher or equal to the threshold of
+ the logger will actually be output in the build log.
+
+
+
+
+ Empty implementation which allows derived classes to receive the
+ output that is generated in this logger.
+
+ The message being logged.
+
+
+
+ Outputs an indented message to the build log if its priority is
+ greather than or equal to the of the
+ logger.
+
+ The priority of the message to output.
+ The message to output.
+ The number of characters that the message should be indented.
+
+
+
+ Outputs an indented message to the build log if its priority is
+ greather than or equal to the of the
+ logger.
+
+ The event to output.
+
+
+
+ Outputs an indented message to the build log if its priority is
+ greather than or equal to the of the
+ logger.
+
+ The event to output.
+ TODO
+
+
+
+ Holds a stack of reports for all running builds.
+
+
+
+
+ Gets or sets the highest level of message this logger should respond
+ to.
+
+
+ The highest level of message this logger should respond to.
+
+
+ Only messages with a message level higher than or equal to the given
+ level should be written to the log.
+
+
+
+
+ Gets or sets a value indicating whether to produce emacs (and other
+ editor) friendly output.
+
+
+ if output is to be unadorned so that emacs
+ and other editors can parse files names, etc. The default is
+ .
+
+
+
+
+ Gets or sets the to which the logger is
+ to send its output.
+
+
+ The to which the logger sends its output.
+
+
+
+
+ Used to store information about a build, to allow better reporting to
+ the user.
+
+
+
+
+ Errors encountered so far.
+
+
+
+
+ Warnings encountered so far.
+
+
+
+
+ The start time of the build process.
+
+
+
+
+ Buffers log messages from DefaultLogger, and sends an e-mail with the
+ results.
+
+
+ The following properties are used to send the mail :
+
+
+ Property
+ Description
+
+
+ MailLogger.mailhost
+ Mail server to use. [default: localhost]
+
+
+ MailLogger.from
+ The address of the e-mail sender.
+
+
+ MailLogger.failure.notify
+ Send build failure e-mails ? [default: true]
+
+
+ MailLogger.success.notify
+ Send build success e-mails ? [default: true]
+
+
+ MailLogger.failure.to
+ The address to send build failure messages to.
+
+
+ MailLogger.success.to
+ The address to send build success messages to.
+
+
+ MailLogger.failure.subject
+ The subject of build failure messages. [default: "Build Failure"]
+
+
+ MailLogger.success.subject
+ The subject of build success messages. [default: "Build Success"]
+
+
+ MailLogger.success.attachments
+ The ID of a fileset holdng set of files to attach when the build is successful.
+
+
+ MailLogger.failure.attachments
+ The ID of a fileset holdng set of files to attach when the build fails.
+
+
+ MailLogger.body.encoding
+ The encoding type of the body of the e-mail message. [default: system's ANSI code page]
+
+
+ MailLogger.smtp.username
+ The name of the user to login to the SMTP server.
+
+
+ MailLogger.smtp.password
+ The password of the specified user.
+
+
+ MailLogger.smtp.enablessl
+ Specifies whether to use SSL to encrypt the connection. [default: false]
+
+
+ MailLogger.smtp.port
+ The SMTP server port to connect to. [default: 25]
+
+
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Signals that a build has started.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event is fired before any targets have started.
+
+
+
+
+ Signals that the last target has finished, and send an e-mail with
+ the build results.
+
+ The source of the event.
+ A object that contains the event data.
+
+
+
+ Receives and buffers log messages.
+
+ The message being logged.
+
+
+
+ Gets the value of the specified property.
+
+ Properties to obtain value from.
+ Suffix of property name. "MailLogger" will be prepended internally.
+ Value returned if property is not present in .
+ Value indicating whether the property should exist, or have a default value set.
+
+ The value of the specified property; or the default value if the
+ property is not present in .
+
+ is , and the specified property is not present and no default value has been given.
+
+
+
+ Buffer in which the message is constructed prior to sending.
+
+
+
+
+ Holds the stack of currently executing projects.
+
+
+
+
+ Contains a strongly typed collection of
+ objects.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Initializes a new instance of the
+ class with the specified instance.
+
+
+
+
+ Initializes a new instance of the
+ class with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Implements a for writing information to
+ the NAnt logging infrastructure.
+
+
+
+
+ Initializes a new instance of the class
+ for the specified with the specified output
+ level and format provider.
+
+ Determines the indentation level.
+ The with which messages will be output to the build log.
+ An object that controls formatting.
+
+
+
+ Writes a character array to the buffer.
+
+ The character array to write to the text stream.
+
+
+
+ Writes a string to the buffer.
+
+
+
+
+
+ Writes an empty string to the logging infrastructure.
+
+
+
+
+ Writes a string to the logging infrastructure.
+
+ The string to write. If is a null reference, only the line termination characters are written.
+
+
+
+ Writes out a formatted string using the same semantics as
+ .
+
+ The formatting string.
+ The object array to write into format string.
+
+
+
+ Causes any buffered data to be written to the logging infrastructure.
+
+
+
+
+ Closes the current writer and releases any system resources
+ associated with the writer.
+
+
+
+
+ Obtains a lifetime service object to control the lifetime policy for
+ this instance.
+
+
+ An object of type used to control the lifetime
+ policy for this instance. This is the current lifetime service object
+ for this instance if one exists; otherwise, a new lifetime service
+ object initialized with a lease that will never time out.
+
+
+
+
+ Gets the in which the output is written.
+
+
+ The always writes output in UTF8
+ encoding.
+
+
+
+
+ Gets the with which messages will be output to
+ the build log.
+
+
+
+
+ Used to search for files on the PATH.
+
+
+
+ The local directory is not searched (since this would already be covered
+ by normal use of the includes element).
+
+
+ Also, advanced pattern matching isn't supported: you need to know the
+ exact name of the file.
+
+
+
+
+
+ Creates a shallow copy of the .
+
+
+ A shallow copy of the .
+
+
+
+
+ Creates a shallow copy of the .
+
+
+ A shallow copy of the .
+
+
+
+
+ Adds a file to the list of files to be scanned for.
+
+ The filename or search pattern to add to the list.
+
+
+
+ Scans all direcetories in the PATH environment variable for files.
+
+
+ List of matching files found in the PATH.
+
+
+
+
+ Scans all directories in the given environment variable for files.
+
+ The environment variable of which the directories should be scanned.
+
+ List of matching files found in the directory of the given
+ environment variable.
+
+
+
+
+ Creates a shallow copy of the specified .
+
+ The that should be copied.
+
+ A shallow copy of the specified .
+
+
+
+
+ Central representation of a NAnt project.
+
+
+
+ The method will initialize the project with the build
+ file specified in the constructor and execute the default target.
+
+
+
+
+
+
+
+ If no target is given, the default target will be executed if specified
+ in the project.
+
+
+
+
+
+
+
+
+ Constant for the "visiting" state, used when traversing a DFS of
+ target dependencies.
+
+
+
+
+ Constant for the "visited" state, used when traversing a DFS of
+ target dependencies.
+
+
+
+
+ Holds the logger for this class.
+
+
+
+
+ Holds the default threshold for build loggers.
+
+
+
+
+ Initializes a new class with the given
+ document, message threshold and indentation level.
+
+ Any valid build format will do.
+ The message threshold.
+ The project indentation level.
+
+
+
+ Initializes a new class with the given
+ document, message threshold and indentation level, and using
+ the specified to load internal configuration
+ settings.
+
+ Any valid build format will do.
+ The message threshold.
+ The project indentation level.
+ The NAnt should use to initialize configuration settings.
+
+ This constructor is useful for developers using NAnt as a class
+ library.
+
+
+
+
+ Initializes a new class with the given
+ source, message threshold and indentation level.
+
+
+ The full path to the build file.
+ This can be of any form that accepts.
+
+ The message threshold.
+ The project indentation level.
+
+ If the source is a uri of form 'file:///path' then use the path part.
+
+
+
+
+ Initializes a new class with the given
+ source, message threshold and indentation level, and using
+ the specified to load internal configuration
+ settings.
+
+
+ The full path to the build file.
+ This can be of any form that accepts.
+
+ The message threshold.
+ The project indentation level.
+ The NAnt should use to initialize configuration settings.
+ is .
+
+ If the source is a uri of form 'file:///path' then use the path part.
+
+
+
+
+ Initializes a as subproject of the specified
+ .
+
+
+ The full path to the build file.
+ This can be of any form that accepts.
+
+ The parent .
+
+ Optimized for framework initialization projects, by skipping automatic
+ discovery of extension assemblies and framework configuration.
+
+
+
+
+ Initializes a with
+ set to , and
+ set to 0.
+
+ An containing the build script.
+
+ Optimized for framework initialization projects, by skipping automatic
+ discovery of extension assemblies and framework configuration.
+
+
+
+
+ Dispatches a event to the build listeners
+ for this .
+
+ The source of the event.
+ A that contains the event data.
+
+
+
+ Dispatches a event to the build listeners
+ for this .
+
+ The source of the event.
+ A that contains the event data.
+
+
+
+ Dispatches a event to the build listeners
+ for this .
+
+ The source of the event.
+ A that contains the event data.
+
+
+
+ Dispatches a event to the build listeners
+ for this .
+
+ The source of the event.
+ A that contains the event data.
+
+
+
+ Dispatches a event to the build listeners
+ for this .
+
+ The source of the event.
+ A that contains the event data.
+
+
+
+ Dispatches the event to the build listeners
+ for this .
+
+ The source of the event.
+ A that contains the event data.
+
+
+
+ Dispatches a event to the build listeners
+ for this .
+
+ A that contains the event data.
+
+
+
+ Writes a level message to the build log with
+ the given .
+
+ The to log at.
+ The message to log.
+
+
+
+ Writes a level formatted message to the build
+ log with the given .
+
+ The to log at.
+ The message to log, containing zero or more format items.
+ An array containing zero or more objects to format.
+
+
+
+ Writes a task level message to the build log
+ with the given .
+
+ The from which the message originated.
+ The to log at.
+ The message to log.
+
+
+
+ Writes a level message to the build log with
+ the given .
+
+ The from which the message orignated.
+ The level to log at.
+ The message to log.
+
+
+
+ Executes the default target.
+
+
+ No top level error handling is done. Any
+ will be passed onto the caller.
+
+
+
+
+ Executes a specific target, and its dependencies.
+
+ The name of the target to execute.
+
+ Global tasks are not executed.
+
+
+
+
+ Executes a specific target.
+
+ The name of the target to execute.
+ Whether dependencies should be forced to execute
+
+ Global tasks are not executed.
+
+
+
+
+ Executes the default target and wraps in error handling and time
+ stamping.
+
+
+ if the build was successful; otherwise,
+ .
+
+
+
+
+ Creates a new from the given .
+
+ The definition.
+ The new instance.
+
+
+
+ Creates a new from the given
+ within a .
+
+ The definition.
+ The owner .
+ The new instance.
+
+
+
+ Expands a from known properties.
+
+ The with replacement tokens.
+ The location in the build file. Used to throw more accurate exceptions.
+ The expanded and replaced .
+
+
+
+ Combines the specified path with the of
+ the to form a full path to file or directory.
+
+ The relative or absolute path.
+
+ A rooted path, or the of the
+ if the parameter is a null reference.
+
+
+
+
+ Creates the default and attaches it to
+ the .
+
+
+
+
+ Increases the of the .
+
+
+
+
+ Decreases the of the .
+
+
+
+
+ Detaches the currently attached instances
+ from the .
+
+
+
+
+ Attaches the specified build listeners to the .
+
+ The instances to attach to the .
+
+ The currently attached instances will
+ be detached before the new instances
+ are attached.
+
+
+
+
+ Inits stuff:
+ TypeFactory: Calls Initialize and AddProject
+ Log.IndentSize set to 12
+ Project properties are initialized ("nant.* stuff set")
+
+ NAnt Props:
+ nant.filename
+ nant.version
+ nant.location
+ nant.project.name
+ nant.project.buildfile (if doc has baseuri)
+ nant.project.basedir
+ nant.project.default = defaultTarget
+ nant.tasks.[name] = true
+ nant.tasks.[name].location = AssemblyFileName
+
+
+ An representing the project definition.
+ The project message threshold.
+ The project indentation level.
+ Optimization flags.
+ is .
+
+
+
+ This method is only meant to be used by the
+ class and .
+
+
+
+
+ Creates a new based on the project
+ definition.
+
+
+ The full path to the build file.
+ This can be of any form that accepts.
+
+
+ An based on the specified project
+ definition.
+
+
+
+
+ Configures the platform properties for the current platform.
+
+ NAnt does not support the current platform.
+
+
+
+ Updates dependent properties when the
+ is set.
+
+
+
+
+ Topologically sorts a set of targets.
+
+ The name of the root target. The sort is created in such a way that the sequence of targets up to the root target is the minimum possible such sequence. Must not be .
+ A collection of instances.
+
+ A collection of instances in sorted order.
+
+ There is a cyclic dependecy among the targets, or a named target does not exist.
+
+
+
+
+ Performs a single step in a recursive depth-first-search traversal
+ of the target dependency tree.
+
+
+ The current target is first set to the "visiting" state, and pushed
+ onto the "visiting" stack.
+
+
+ An exception is then thrown if any child of the current node is in
+ the visiting state, as that implies a circular dependency. The
+ exception contains details of the cycle, using elements of the
+ "visiting" stack.
+
+
+ If any child has not already been "visited", this method is called
+ recursively on it.
+
+
+ The current target is then added to the ordered list of targets.
+ Note that this is performed after the children have been visited in
+ order to get the correct order. The current target is set to the
+ "visited" state.
+
+
+ By the time this method returns, the ordered list contains the
+ sequence of targets up to and including the current target.
+
+
+ The current target to inspect. Must not be .
+ A collection of instances.
+ A mapping from targets to states The states in question are "VISITING" and "VISITED". Must not be .
+ A stack of targets which are currently being visited. Must not be .
+ The list to add target names to. This will end up containing the complete list of depenencies in dependency order. Must not be .
+
+ A non-existent target is specified
+ -or-
+ A circular dependency is detected.
+
+
+
+
+ Builds an appropriate exception detailing a specified circular
+ dependency.
+
+ The dependency to stop at. Must not be .
+ A stack of dependencies. Must not be .
+
+ A detailing the specified circular
+ dependency.
+
+
+
+
+ Gets or sets the indendation level of the build output.
+
+
+ The indentation level of the build output.
+
+
+ To change the , the
+ and methods should be used.
+
+
+
+
+ Gets or sets the indentation size of the build output.
+
+
+ The indendation size of the build output.
+
+
+
+
+ Gets or sets the default threshold level for build loggers.
+
+
+ The default threshold level for build loggers.
+
+
+
+
+ Gets the name of the .
+
+
+ The name of the or an empty
+ if no name is specified.
+
+
+
+
+ Gets or sets the base directory used for relative references.
+
+
+ The base directory used for relative references.
+
+ The directory is not rooted.
+
+
+ The gets and sets the built-in property
+ named "nant.project.basedir".
+
+
+
+
+
+ Gets the .
+
+
+ The .
+
+
+ The defines the current namespace
+ scope and provides methods for looking up namespace information.
+
+
+
+
+ Gets the form of the current project definition.
+
+
+ The form of the current project definition.
+
+
+
+
+ Gets a collection of available .NET frameworks.
+
+
+ A collection of available .NET frameworks.
+
+
+
+
+ Gets the framework in which NAnt is currently running.
+
+
+ The framework in which NAnt is currently running.
+
+
+
+
+ Gets or sets the framework to use for compilation.
+
+
+ The framework to use for compilation.
+
+
+ We will use compiler tools and system assemblies for this framework
+ in framework-related tasks.
+
+
+
+
+ Gets the name of the platform on which NAnt is currently running.
+
+
+ The name of the platform on which NAnt is currently running.
+
+
+
+ Possible values are:
+
+
+
+ win32
+
+
+ unix
+
+
+
+ NAnt does not support the current platform.
+
+
+
+ Gets the current target.
+
+
+ The current target, or if no target is
+ executing.
+
+
+
+
+ Gets the path to the build file.
+
+
+ The path to the build file, or if the build
+ document is not file backed.
+
+
+
+
+ Gets the active definition.
+
+
+ The active definition.
+
+
+
+
+ Gets the NAnt should use to initialize
+ configuration settings.
+
+
+ The NAnt should use to initialize
+ configuration settings.
+
+
+
+
+ Gets the name of the target that will be executed when no other
+ build targets are specified.
+
+
+ The name of the target that will be executed when no other
+ build targets are specified, or if no
+ default target is specified in the build file.
+
+
+
+
+ Gets a value indicating whether tasks should output more build log
+ messages.
+
+
+ if tasks should output more build log message;
+ otherwise, .
+
+
+
+
+ The list of targets to build.
+
+
+ Targets are built in the order they appear in the collection. If
+ the collection is empty the default target will be built.
+
+
+
+
+ Gets the properties defined in this project.
+
+ The properties defined in this project.
+
+
+ This is the collection of properties that are defined by the system
+ and property task statements.
+
+
+ These properties can be used in expansion.
+
+
+
+
+
+ Gets the framework-neutral properties defined in the NAnt
+ configuration file.
+
+
+ The framework-neutral properties defined in the NAnt configuration
+ file.
+
+
+
+ This is the collection of read-only properties that are defined in
+ the NAnt configuration file.
+
+
+ These properties can only be used for expansion in framework-specific
+ and framework-neutral configuration settings. These properties are
+ not available for expansion in the build file.
+
+
+
+
+
+ Gets the instances defined in this project.
+
+
+ The instances defined in this project.
+
+
+
+ This is the collection of instances that
+ are defined by (eg fileset) declarations.
+
+
+
+
+
+ Gets the targets defined in this project.
+
+
+ The targets defined in this project.
+
+
+
+
+ Gets the build listeners for this project.
+
+
+ The build listeners for this project.
+
+
+
+
+ Allow the project construction to be optimized.
+
+
+ Use this with care!
+
+
+
+
+ Do not perform any optimizations.
+
+
+
+
+ The project base directory must not be automatically scanned
+ for extension assemblies.
+
+
+
+
+ Do not scan the project configuration for frameworks, and
+ do not configure the runtime and target framework.
+
+
+
+
+ Holds a value indicating whether a scan for tasks, types and functions
+ has already been performed for the current runtime framework.
+
+
+
+
+ Initializes a new instance of the
+ class for the given .
+
+ The that should be configured.
+
+
+
+ Loads and processes settings from the specified
+ of the configuration file.
+
+
+
+
+ Processes the framework nodes of the given platform node.
+
+ An representing the platform on which NAnt is running.
+
+
+
+ Reads the list of global properties specified in the NAnt configuration
+ file.
+
+ An representing global properties.
+
+
+
+ Processes the framework environment variables.
+
+ An representing framework environment variables.
+ The to obtain framework-specific information from.
+
+
+
+ Gets the value of the specified attribute from the specified node.
+
+ The node of which the attribute value should be retrieved.
+ The attribute of which the value should be returned.
+
+ The value of the attribute with the specified name or
+ if the attribute does not exist or has no value.
+
+
+
+
+ Gets the underlying instance.
+
+
+ The underlying instance.
+
+
+
+
+ Gets the .
+
+
+ The .
+
+
+ The defines the current namespace
+ scope and provides methods for looking up namespace information.
+
+
+
+
+ Constant for the "visiting" state, used when traversing a DFS of
+ property references.
+
+
+
+
+ Constant for the "visited" state, used when travesing a DFS of
+ property references.
+
+
+
+
+ Initializes a new instance of the
+ class holding properties for the given
+ instance.
+
+ The project for which the dictionary will hold properties.
+
+
+
+ Performs additional custom processes before inserting a new element
+ into the instance.
+
+ The key of the element to insert.
+ The value of the element to insert.
+
+
+
+ Performs additional custom processes before removing an element
+ from the instance.
+
+ The key of the element to remove.
+ The value of the element to remove.
+
+
+
+ Performs additional custom processes when validating the element
+ with the specified key and value.
+
+ The key of the element to validate.
+ The value of the element to validate.
+
+
+
+ Adds a property that cannot be changed.
+
+ The name of the property.
+ The value to assign to the property.
+
+ Properties added with this method can never be changed. Note that
+ they are removed if the method is called.
+
+
+
+
+ Marks a property as a property of which the value is expanded at
+ execution time.
+
+ The name of the property to mark as dynamic.
+
+
+
+ Adds a property to the collection.
+
+ The name of the property.
+ The value to assign to the property.
+
+
+
+ Determines whether the specified property is listed as read-only.
+
+ The name of the property to check.
+
+ if the property is listed as read-only;
+ otherwise, .
+
+
+
+
+ Determines whether the specified property is listed as dynamic.
+
+ The name of the property to check.
+
+ if the property is listed as dynamic;
+ otherwise, .
+
+
+
+
+ Inherits properties from an existing property dictionary Instance.
+
+ Property list to inherit.
+ The list of properties to exclude during inheritance.
+
+
+
+ Expands a from known properties.
+
+ The replacement tokens.
+ The to pass through for any exceptions.
+ The expanded and replaced string.
+
+
+
+ Determines whether a property already exists.
+
+ The name of the property to check.
+
+ if the specified property already exists;
+ otherwise, .
+
+
+
+
+ Removes the property with the specified name.
+
+ The name of the property to remove.
+
+
+
+ Expands a from known properties.
+
+ The replacement tokens.
+ The to pass through for any exceptions.
+ A mapping from properties to states. The states in question are "VISITING" and "VISITED". Must not be .
+ A stack of properties which are currently being visited. Must not be .
+ The expanded and replaced string.
+
+
+
+ Evaluates the given expression string and returns the result
+
+
+
+
+
+
+
+
+
+ Checks whether the specified property is deprecated.
+
+ The property to check.
+
+
+
+ Builds an appropriate exception detailing a specified circular
+ reference.
+
+ The property reference to stop at. Must not be .
+ A stack of property references. Must not be .
+
+ A detailing the specified circular
+ dependency.
+
+
+
+
+ Maintains a list of the property names that are readonly.
+
+
+
+
+ Maintains a list of the property names of which the value is expanded
+ on usage, not at initalization.
+
+
+
+
+ The project for which the dictionary holds properties.
+
+
+
+
+ Indexer property.
+
+
+
+
+ Gets the project for which the dictionary holds properties.
+
+
+ The project for which the dictionary holds properties.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Creates a shallow copy of the .
+
+
+ A shallow copy of the .
+
+
+
+
+ Creates a shallow copy of the .
+
+
+ A shallow copy of the .
+
+
+
+
+ Executes dependent targets first, then the target.
+
+
+
+
+ This indicates whether the target has already executed.
+
+
+
+
+ The name of the target.
+
+
+
+ Hides to have
+ return the name of target, not the name of XML element - which
+ would always be target.
+
+
+ Note: Properties are not allowed in the name.
+
+
+
+
+
+ If then the target will be executed;
+ otherwise, skipped. The default is .
+
+
+
+
+ Gets a value indicating whether the target should be executed.
+
+
+ if the target should be executed; otherwise,
+ .
+
+
+
+
+ Opposite of . If
+ then the target will be executed; otherwise, skipped. The default
+ is .
+
+
+
+
+ Gets a value indicating whether the target should NOT be executed.
+
+
+ if the target should NOT be executed;
+ otherwise, .
+
+
+
+
+ The description of the target.
+
+
+
+
+ Space separated list of targets that this target depends on.
+
+
+
+
+ A collection of target names that must be executed before this
+ target.
+
+
+
+
+ Finds a target by name.
+
+ The name of the target to find.
+
+ The with the specified name, or
+ if no exists with
+ the given name.
+
+
+
+
+ Gets the names of the targets in the
+ combined into one list separated by the given .
+
+
+ A that contains a list of the names of the
+ targets in the , separated by
+ the specified .
+
+
+
+
+ Gets the names of the targets in the
+ combined into one comma-separated list.
+
+
+ A that contains a comma-separated list of the
+ names of the targets in the .
+
+
+
+
+ Creates a new instance of the class
+ for the specified class in the
+ specified.
+
+ The containing the .
+ The class representing the .
+
+
+
+ Gets the name of the class that can be created
+ using this .
+
+
+ The name of the class that can be created using
+ this .
+
+
+
+
+ Gets the from which the task will be created.
+
+
+ The containing the task.
+
+
+
+
+ Gets the name of the task which the
+ can create.
+
+
+ The name of the task which the can
+ create.
+
+
+
+
+ Contains a strongly typed collection of objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a for the specified
+ task is in the collection.
+
+ The name of task for which the should be located in the collection.
+
+ if a for the
+ specified task is found in the collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the for the specified task.
+
+ The name of task for which the should be located in the collection.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Comprises all of the loaded, and available, tasks.
+ Use these static methods to register, initialize and create a task.
+
+
+
+
+ Scans the given assembly for tasks, types, functions and filters.
+
+ The assembly to scan for tasks, types, functions and filters.
+ The which will be used to output messages to the build log.
+
+
+
+ Scans the given assembly for tasks, types, functions and filters.
+
+ The assembly to scan for tasks, types, functions and filters.
+ The which will be used to output messages to the build log.
+
+ if contains at
+ least one "extension"; otherwise, .
+
+
+
+
+ Scans the path for any task assemblies and adds them.
+
+ The directory to scan in.
+ The which will be used to output messages to the build log.
+ indicating whether scanning of the directory should halt on first error.
+
+
+
+ Adds any task assemblies in the project base directory
+ and its tasks subdirectory.
+
+ The project to work from.
+
+
+
+ Registers the project with , and optionally
+ scan the for extension assemblies.
+
+ The project to work from.
+ Specified whether to scan the for extension assemblies.
+
+
+
+ Looks up a function by name.
+
+ The name of the function to lookup, including namespace prefix.
+ The in which the function is invoked.
+
+ A representing the function, or
+ if a function with the given name does not
+ exist.
+
+
+
+
+ Creates a new instance for the given XML and
+ .
+
+ The XML to initialize the task with.
+ The that the belongs to.
+
+ The new instance.
+
+
+
+
+ Scans a given for tasks.
+
+ The to scan.
+ The which will be used to output messages to the build log.
+
+ if represents a
+ ; otherwise, .
+
+
+
+
+ Scans a given for data type.
+
+ The to scan.
+ The which will be used to output messages to the build log.
+
+ if represents a
+ data type; otherwise, .
+
+
+
+
+ Scans a given for functions.
+
+ The to scan.
+ The which will be used to output messages to the build log.
+
+ if represents a
+ valid set of funtions; otherwise, .
+
+
+
+
+ Scans a given for filters.
+
+ The to scan.
+ The which will be used to output messages to the build log.
+
+ if represents a
+ ; otherwise, .
+
+
+
+
+ Gets the list of loaded instances.
+
+
+ List of loaded instances.
+
+
+
+
+ Gets the list of loaded instances.
+
+
+ List of loaded instances.
+
+
+
+
+ Gets the list of loaded instances.
+
+
+ List of loaded instances.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Initializes a new instance of the
+ class with a descriptive message.
+
+ A descriptive message to include with the exception.
+
+
+
+ Initializes a new instance of the
+ class with the specified descriptive message and inner exception.
+
+ A descriptive message to include with the exception.
+ A nested exception that is the cause of the current exception.
+
+
+
+ Initializes a new instance of the
+ class with a descriptive message and the location in the build file
+ that caused the exception.
+
+ A descriptive message to include with the exception.
+ The location in the build file where the exception occured.
+
+
+
+ Initializes a new instance of the
+ class with a descriptive message, the location in the build file and
+ an instance of the exception that is the cause of the current
+ exception.
+
+ A descriptive message to include with the exception.
+ The location in the build file where the exception occured.
+ A nested exception that is the cause of the current exception.
+
+
+
+ Initializes a new instance of the
+ class with serialized data.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with a descriptive message.
+
+ A descriptive message to include with the exception.
+
+
+
+ Initializes a new instance of the class
+ with the specified descriptive message and inner exception.
+
+ A descriptive message to include with the exception.
+ A nested exception that is the cause of the current exception.
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ of the invalid volume.
+
+
+
+ Initializes a new instance of the class
+ with serialized data.
+
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+
+
+
+ Represents the different types of drives that may exist in a system.
+
+
+
+
+ Represents the different supporting flags that may be set on a file system.
+
+
+
+
+ Presents information about a volume.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Uses a private access modifier to prevent instantiation of this class.
+
+
+
+
+ Determines whether the file system is case sensitive. Performs a
+ P/Invoke to the Win32 API GetVolumeInformation.
+
+
+
+ if the specified volume is case-sensitive;
+ otherwise, .
+
+
+
+
+ Used to wrap log messages in xml <message/> elements.
+
+
+
+
+ Holds the stack of currently executing projects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with serialized data.
+
+ The that holds the serialized object data.
+ The that contains contextual information about the source or destination.
+
+
+
+ Populates with the data needed to serialize
+ the instance.
+
+ The to populate with data.
+ The destination for this serialization.
+
+
+
+ Returns the contents of log captured.
+
+
+
+
+ Signals that a build has started.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event is fired before any targets have started.
+
+
+
+
+ Signals that the last target has finished.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event will still be fired if an error occurred during the build.
+
+
+
+
+ Signals that a target has started.
+
+ The source of the event.
+ A object that contains the event data.
+
+
+
+ Signals that a target has finished.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event will still be fired if an error occurred during the build.
+
+
+
+
+ Signals that a task has started.
+
+ The source of the event.
+ A object that contains the event data.
+
+
+
+ Signals that a task has finished.
+
+ The source of the event.
+ A object that contains the event data.
+
+ This event will still be fired if an error occurred during the build.
+
+
+
+
+ Signals that a message has been logged.
+
+ The source of the event.
+ A object that contains the event data.
+
+ Only messages with a priority higher or equal to the threshold of
+ the logger will actually be output in the build log.
+
+
+
+
+ Flushes buffered build events or messages to the underlying storage.
+
+
+
+
+ Gets or sets the highest level of message this logger should respond
+ to.
+
+
+ The highest level of message this logger should respond to.
+
+
+ Only messages with a message level higher than or equal to the given
+ level should be written to the log.
+
+
+
+
+ Gets or sets a value indicating whether to produce emacs (and other
+ editor) friendly output.
+
+
+ as it has no meaning in XML format.
+
+
+
+
+ Gets or sets the to which the logger is
+ to send its output.
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.DotNetTasks.dll b/build-support/tools/nant/bin/NAnt.DotNetTasks.dll
new file mode 100644
index 00000000..ae0552ce
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.DotNetTasks.dll differ
diff --git a/build-support/tools/nant/bin/NAnt.DotNetTasks.xml b/build-support/tools/nant/bin/NAnt.DotNetTasks.xml
new file mode 100644
index 00000000..bded9bcc
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.DotNetTasks.xml
@@ -0,0 +1,4825 @@
+
+
+
+ NAnt.DotNetTasks
+
+
+
+
+ Generates an AssemblyInfo file using the attributes given.
+
+
+
+ Create a C# AssemblyInfo file containing the specified assembly-level
+ attributes.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ Create a C# AssemblyInfo file containing an attribute with multiple
+ named properties by setting the
+ attribute on the element to
+ .
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Generates an AssemblyInfo file.
+
+
+
+
+ Determines whether the specified AssemblyInfo file in the given
+ needs to be persisted.
+
+ holding the newly generated AssemblyInfo source.
+
+ if the generated AssemblyInfo source needs
+ to be persisted; otherwise, .
+
+
+
+
+ Name of the AssemblyInfo file to generate.
+
+
+ The name of the AssemblyInfo file to generate.
+
+
+
+
+ The code language in which the AssemblyInfo file should be
+ generated.
+
+
+
+
+ The assembly-level attributes to generate.
+
+
+ The assembly-level attributes to generate.
+
+
+
+
+ The namespaces to import.
+
+
+ The namespaces to import.
+
+
+
+
+ Assembly files used to locate the types of the specified attributes.
+
+
+
+
+ Defines the supported code languages for generating an AssemblyInfo
+ file.
+
+
+
+
+ A value for generating C# code.
+
+
+
+
+ A value for generating JScript code.
+
+
+
+
+ A value for generating Visual Basic code.
+
+
+
+
+ Encapsulates functionality to generate a code file with imports
+ and assembly-level attributes.
+
+
+
+
+ Initializes a new instance of the
+ for the specified .
+
+ The for which an instance of the class should be initialized.
+ The for which an instance of the class should be initialized.
+
+
+
+ Generates code for the specified imports.
+
+ The imports for which code should be generated.
+ The to which the generated code will be written.
+
+
+
+ Generates code for the specified assembly attributes.
+
+ The assembly attributes for which code should be generated.
+ Imports used to resolve the assembly attribute names to fully qualified type names.
+ Assembly that will be used to resolve the attribute names to instances.
+ The to which the generated code will be written.
+
+
+
+ Gets the in which the AssemblyInfo
+ code will be generated.
+
+
+
+
+ Gets the that will be used to
+ generate the AssemblyInfo code.
+
+
+
+
+ Responsible for returning the specified value converted to a
+ accepted by a constructor for a given
+ .
+
+
+
+
+ Obtains a lifetime service object to control the lifetime policy for
+ this instance.
+
+
+ An object of type used to control the lifetime
+ policy for this instance. This is the current lifetime service object
+ for this instance if one exists; otherwise, a new lifetime service
+ object initialized with a lease that will never time out.
+
+
+
+
+ Retrieves the specified corresponding with the specified
+ type name from a list of assemblies.
+
+ The collection of assemblies that the type should tried to be instantiated from.
+ The list of imports that can be used to resolve the typename to a full typename.
+ The typename that should be used to determine the type to which the specified value should be converted.
+ The value that should be converted to a typed value.
+
+
+ is and the identified by has no default public constructor.
+ -or-
+ cannot be converted to a value that's suitable for one of the constructors of the identified by .
+ -or-
+ The identified by has no suitable constructor.
+ -or-
+ A identified by could not be located or loaded.
+
+
+
+
+ Wraps al.exe, the assembly linker for the .NET Framework.
+
+
+
+ All specified sources will be embedded using the /embed flag.
+ Other source types are not supported.
+
+
+
+
+ Create a library containing all icon files in the current directory.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Generates an assembly manifest.
+
+
+
+
+ Determines whether the assembly manifest needs compiling or is
+ uptodate.
+
+
+ if the assembly manifest needs compiling;
+ otherwise, .
+
+
+
+
+ Specifies an algorithm (in hexadecimal) to hash all files in a
+ multifile assembly except the file that contains the assembly
+ manifest. The default algorithm is CALG_SHA1.
+
+
+
+
+ Specifies a string for the Company field in the assembly.
+
+
+ A string for the Company field in the assembly.
+
+
+ If is an empty string (""), the Win32
+ Company resource appears as a single space.
+
+
+
+
+ Specifies a string for the Configuration field in the assembly.
+
+
+ A string for the Configuration field in the assembly.
+
+
+ If is an empty string (""), the Win32
+ Configuration resource appears as a single space.
+
+
+
+
+ Specifies a string for the Copyright field in the assembly.
+
+
+ A string for the Copyright field in the assembly.
+
+
+ If is an empty string (""), the Win32
+ Copyright resource appears as a single space.
+
+
+
+
+ The culture string associated with the output assembly.
+ The string must be in RFC 1766 format, such as "en-US".
+
+
+
+ Corresponds with the /c[ulture]: flag.
+
+
+
+
+
+ Specifies whether the assembly should be partially signed. The default
+ is .
+
+
+
+
+ Specifies a string for the Description field in the assembly.
+
+
+ A string for the Description field in the assembly.
+
+
+ If is an empty string (""), the Win32
+ Description resource appears as a single space.
+
+
+
+
+ Security evidence file to embed.
+
+
+ The security evidence file to embed.
+
+
+
+ Corresponds with the /e[vidence] flag.
+
+
+
+
+
+ Specifies a string for the File Version field in the assembly.
+
+
+ A string for the File Version field in the assembly.
+
+
+
+
+ Specifies a value (in hexadecimal) for the Flags field in
+ the assembly.
+
+
+ A value (in hexadecimal) for the Flags field in the assembly.
+
+
+
+
+ Specifies a container that holds a key pair.
+
+
+
+
+ Specifies a file (filename) that contains a key pair or
+ just a public key to sign an assembly.
+
+
+ The complete path to the key file.
+
+
+
+ Corresponds with the /keyf[ile]: flag.
+
+
+
+
+
+ Specifies the fully-qualified name (class.method) of the method to
+ use as an entry point when converting a module to an executable file.
+
+
+ The fully-qualified name (class.method) of the method to use as an
+ entry point when converting a module to an executable file.
+
+
+
+
+ The name of the output file for the assembly manifest.
+
+
+ The complete output path for the assembly manifest.
+
+
+
+ Corresponds with the /out flag.
+
+
+
+
+
+ The target type (one of lib, exe, or winexe).
+
+
+
+ Corresponds with the /t[arget]: flag.
+
+
+
+
+
+ Specifies a string for the Product field in the assembly.
+
+
+ A string for the Product field in the assembly.
+
+
+
+
+ Specifies a string for the Product Version field in the assembly.
+
+
+ A string for the Product Version field in the assembly.
+
+
+
+
+ The set of resources to embed.
+
+
+
+
+ The set of compiled resources to embed.
+
+
+ Do not yet expose this to build authors.
+
+
+
+
+ Indicates whether the assembly linker for a given target framework
+ supports the "template" option, which takes an assembly from which
+ to get all options except the culture field.
+ The default is .
+
+
+ TODO: remove this once Mono bug #74814 is fixed.
+
+
+
+
+ Specifies an assembly from which to get all options except the
+ culture field.
+
+
+ The complete path to the assembly template.
+
+
+
+ Corresponds with the /template: flag.
+
+
+
+
+
+ Specifies a string for the Title field in the assembly.
+
+
+ A string for the Title field in the assembly.
+
+
+
+
+ Specifies a string for the Trademark field in the assembly.
+
+
+ A string for the Trademark field in the assembly.
+
+
+
+
+ Specifies version information for the assembly. The format of the
+ version string is major.minor.build.revision.
+
+
+
+
+ Icon to associate with the assembly.
+
+
+
+
+ Inserts a Win32 resource (.res file) in the output file.
+
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program or
+ if the task is not being executed.
+
+
+
+
+ Provides the abstract base class for compiler tasks.
+
+
+
+
+ Contains a list of extensions for all file types that should be treated as
+ 'code-behind' when looking for resources. Ultimately this will determine
+ if we use the "namespace+filename" or "namespace+classname" algorithm, since
+ code-behind will use the "namespace+classname" algorithm.
+
+
+
+
+ Case-insensitive list of valid culture names for this platform.
+
+
+ The key of the is the culture name and
+ the value is .
+
+
+
+
+ Class constructor for .
+
+
+
+
+ Compiles the sources and resources.
+
+
+
+
+ Determines the manifest resource name of the given resource file.
+
+ The containing information that will used to assemble the manifest resource name.
+ The resource file of which the manifest resource name should be determined.
+ The logical location of the resource file.
+ The source file on which the resource file depends.
+
+ The manifest resource name of the specified resource file.
+
+
+
+
+ Determines the manifest resource name of the given resource file.
+
+ The containing information that will used to assemble the manifest resource name.
+ The resource file of which the manifest resource name should be determined.
+
+ The manifest resource name of the specified resource file.
+
+
+ For .resx resources, the name of the dependent is determined by
+ replacing the extension of the file with the extension of the
+ source files for the compiler, and removing the culture name from
+ the file name for localized resources.
+
+
+
+
+ Extracts the associated namespace/classname linkage found in the
+ given stream.
+
+ The read-only stream of the source file to search.
+
+ The namespace/classname of the source file matching the resource.
+
+
+
+
+ Writes package references to the specified .
+
+ The to which the package references should be written.
+
+
+
+ Writes list of warnings to (not) treat as errors to the specified
+ .
+
+ The to which the list of warnings should be written.
+
+
+
+ Writes list of warnings to suppress to the specified
+ .
+
+ The to which the list of warnings to suppress should be written.
+
+
+
+ Writes conditional compilation constants to the specified
+ .
+
+ The to which the conditional compilation constants should be written.
+
+
+
+ Writes module references to the specified .
+
+ The to which the module references should be written.
+
+
+
+ Allows derived classes to provide compiler-specific options.
+
+ The to which the compiler options should be written.
+
+
+
+ Writes an option using the default output format.
+
+ The to which the compiler options should be written.
+ The name of the option which should be passed to the compiler.
+
+
+
+ Writes an option and its value using the default output format.
+
+ The to which the compiler options should be written.
+ The name of the option which should be passed to the compiler.
+ The value of the option which should be passed to the compiler.
+
+ The combination of and
+ (separated by a colon) is quoted
+ unless is already surrounded by quotes.
+
+
+
+
+ Determines whether compilation is needed.
+
+
+
+
+ Finds the correct namespace/classname for a resource file from the
+ given dependent source file.
+
+ The file from which the resource linkage of the resource file should be determined.
+ The culture of the resource file for which the resource linkage should be determined.
+
+ The namespace/classname of the source file matching the resource or
+ if the dependent source file does not exist.
+
+
+ This behaviour may be overidden by each particular compiler to
+ support the namespace/classname syntax for that language.
+
+
+
+
+ Link a list of files into a resource assembly.
+
+ The collection of resources.
+ Resource assembly to generate
+ Culture of the generated assembly.
+
+
+
+ Compiles a set of resx files to a .resources files.
+
+ The set of resx files to compile.
+
+
+
+ Determines the culture associated with a given resource file by
+ scanning the filename for valid culture names.
+
+ The resource file path to check for culture info.
+ The file on which the resource file depends.
+
+ A valid instance if the resource is
+ associated with a specific culture; otherwise, .
+
+
+
+
+ Generate debug output. The default is .
+
+
+ Only used for <jsc> tasks, but retained for backward
+ compatibility (Clover.NET).
+
+
+
+
+ The output file created by the compiler.
+
+
+
+
+ Output type. Possible values are exe, winexe,
+ library or module.
+
+
+
+
+ Define conditional compilation symbol(s).
+
+
+
+ Corresponds to /d[efine]: flag.
+
+
+
+
+
+ Icon to associate with the application.
+
+
+
+ Corresponds to /win32icon: flag.
+
+
+
+
+
+ Instructs the compiler to treat all warnings as errors. The default
+ is .
+
+
+
+ Corresponds to the /warnaserror[+|-] flag of the compiler.
+
+
+ When this property is set to , any messages
+ that would ordinarily be reported as warnings will instead be
+ reported as errors.
+
+
+
+
+
+ Controls which warnings should be reported as errors.
+
+
+
+
+ Specifies a comma-separated list of warnings that should be suppressed
+ by the compiler.
+
+
+ Comma-separated list of warnings that should be suppressed by the
+ compiler.
+
+
+
+ Corresponds with the /nowarn flag.
+
+
+
+
+
+ Specifies a list of warnings that you want the compiler to suppress.
+
+
+
+
+ Instructs NAnt to recompile the output file regardless of the file timestamps.
+
+
+ When this parameter is to , NAnt will always
+ run the compiler to rebuild the output file, regardless of the file timestamps.
+
+
+
+
+ Specifies which type contains the Main method that you want to use
+ as the entry point into the program.
+
+
+
+ Corresponds to the /m[ain]: flag of the compiler.
+
+
+ Use this property when creating an executable file. If this property
+ is not set, the compiler searches for a valid Main method in all
+ public classes.
+
+
+
+
+
+ Specifies the key pair container used to strongname the assembly.
+
+
+
+
+ Specifies a strong name key file.
+
+
+
+
+ Additional directories to search in for assembly references.
+
+
+
+ Corresponds with the /lib[path]: flag.
+
+
+
+
+
+ Reference metadata from the specified assembly files.
+
+
+
+
+ Specifies list of packages to reference.
+
+
+
+
+ Resources to embed.
+
+
+
+ This can be a combination of resx files and file resources.
+
+
+ .resx files will be compiled by and then
+ embedded into the resulting executable.
+
+
+ The property is used to make
+ up the resource name added to the assembly manifest for non-resx
+ files.
+
+
+ For .resx files the namespace from the matching source file is used
+ as prefix. This matches the behaviour of Visual Studio.
+
+
+ Multiple resources tags with different namespace prefixes may be
+ specified.
+
+
+
+
+
+ Link the specified modules into this assembly.
+
+
+
+
+ The set of source files for compilation.
+
+
+
+
+ Indicates whether package references are supported by compiler for
+ a given target framework. The default is .
+
+
+
+
+ Indicates whether the compiler for a given target framework supports
+ the "warnaserror" option that takes a list of warnings. The default
+ is .
+
+
+
+
+ Indicates whether the compiler for a given target framework supports
+ a command line option that allows a list of warnings to be
+ suppressed. The default is .
+
+
+
+
+ Indicates whether the compiler for a given target framework supports
+ the "keycontainer" option. The default is .
+
+
+
+
+ Indicates whether the compiler for a given target framework supports
+ the "keyfile" option. The default is .
+
+
+
+
+ Gets the file extension required by the current compiler.
+
+
+ The file extension required by the current compiler.
+
+
+
+
+ Gets the class name regular expression for the language of the current compiler.
+
+ class name regular expression for the language of the current compiler
+
+
+
+ Gets the namespace regular expression for the language of the current compiler.
+
+ namespace regular expression for the language of the current compiler
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ Holds class and namespace information for resource (*.resx) linkage.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+ The namespace the resource is under.
+ The class name the resource is associated with.
+
+
+
+ Returns the resource linkage as a string.
+
+
+ A string representation of the resource linkage.
+
+
+
+
+ Gets a value indicating whether the
+ instances contains valid data.
+
+
+ if the
+ instance contains valid data; otherwise, .
+
+
+
+
+ Gets a value indicating whether a namespace name is available
+ for this instance.
+
+
+ if a namespace name is available for
+ this instance; otherwise,
+ .
+
+
+
+
+ Gets a value indicating whether a class name is available
+ for this instance.
+
+
+ if a class name is available for
+ this instance; otherwise,
+ .
+
+
+
+
+ Gets the name of namespace the resource is under.
+
+
+ The name of namespace the resource is under.
+
+
+
+
+ Gets the name of the class (most likely a form) that the resource
+ is associated with.
+
+
+ The name of the class the resource is associated with.
+
+
+
+
+ Gets the culture that the resource is associated with.
+
+
+ The culture that the resource is associated with.
+
+
+
+
+ Compiles C# programs.
+
+
+
+ In order to have generate manifest resource names
+ that match those generated by Microsoft Visual Studio.NET, the value of
+ the attribute of the <>
+ element should match the "Default Namespace" of the C# project, and the
+ value of the attribute
+ should be set to "".
+
+
+
+ Compile a "HelloWorld" application, including embedded resources.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Writes the compiler options to the specified .
+
+ to which the compiler options should be written.
+
+
+
+ Determines whether compilation is needed.
+
+
+
+
+ The preferred base address at which to load a DLL. The default base
+ address for a DLL is set by the .NET Framework common language
+ runtime.
+
+
+ The preferred base address at which to load a DLL.
+
+
+ This address can be specified as a decimal, hexadecimal, or octal
+ number.
+
+
+
+
+ Specifies the type of debugging information generated by the
+ compiler. The default is .
+
+
+
+
+ No longer expose this to build authors. Use
+ instead.
+
+
+
+
+ The name of the XML documentation file to generate.
+
+
+
+ Corresponds with the /doc: flag.
+
+
+
+
+
+ Specifies the size of sections in the output file. Valid values are
+ 512, 1024, 2048, 4096, and 8192.
+
+
+ The size of sections in the output file.
+
+
+
+
+ Instructs the compiler not to import mscorlib.dll. The default is
+ .
+
+
+
+ Corresponds with the /nostdlib[+|-] flag.
+
+
+
+
+
+ Instructs the compiler not to use implicit references to assemblies.
+ The default is .
+
+
+
+ Corresponds with the /noconfig flag.
+
+
+
+
+
+ Specifies whether an integer arithmetic statement that is not in
+ the scope of the checked or unchecked keywords and
+ that results in a value outside the range of the data type should
+ cause a run-time exception. The default is .
+
+
+
+ Corresponds with the /checked[+|-] flag.
+
+
+
+
+
+ Instructs the compiler to allow code that uses the unsafe
+ keyword. The default is .
+
+
+
+ Corresponds with the /unsafe[+|-] flag.
+
+
+
+
+
+ Causes the compiler to only accept syntax that is included in a
+ given specification.
+
+
+
+ Corresponds with the /langversion flag.
+
+
+
+
+
+ Specifies whether the compiler should perform optimizations to the
+ make output files smaller, faster, and more effecient. The default
+ is .
+
+
+ if the compiler should perform optimizations;
+ otherwise, .
+
+
+
+ Corresponds with the /optimize[+|-] flag.
+
+
+
+
+
+ Specifies which platform version of common language runtime (CLR)
+ can run the output file.
+
+
+ The platform version of common language runtime (CLR) that can run
+ the output file.
+
+
+
+ Corresponds with the /platform flag.
+
+
+
+
+
+ Specifies the warning level for the compiler to display. Valid values
+ are 0-4. The default is 4.
+
+
+ The warning level for the compiler to display.
+
+
+
+ Corresponds with the /warn flag.
+
+
+
+
+
+ Specifies the code page to use for all source code files in the
+ compilation.
+
+
+
+ Corresponds with the /codepage flag.
+
+
+
+
+
+ Specifies whether the compiler for the active target framework
+ supports generation of XML Documentation file. The default is
+ .
+
+
+
+
+ Specifies whether the compiler for the active target framework
+ supports limiting the platform on which the compiled code can run.
+ The default is .
+
+
+
+
+ Specifies whether the compiler for the active target framework
+ supports accepting only a specific language syntax.
+ The default is .
+
+
+
+
+ Gets the file extension required by the current compiler.
+
+
+ For the C# compiler, the file extension is always cs.
+
+
+
+
+ Gets the class name regular expression for the language of the
+ current compiler.
+
+
+ Class name regular expression for the language of the current
+ compiler.
+
+
+
+
+ Gets the namespace regular expression for the language of the current compiler.
+
+
+ Namespace regular expression for the language of the current
+ compiler.
+
+
+
+
+ Signs delay-signed .NET Assemblies, or re-signs existing assemblies.
+
+
+
+ The delay-signing mechanism takes a fileset (named targets)
+ and either a attribute for a file containing the
+ public and private keys, or to name a key
+ container.
+
+
+
+ Sign partially-signed foo.dll with bar.snk.
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Converts a single file or group of files.
+
+
+
+
+ List of assemblies/executables to sign.
+
+
+
+
+ Specifies the filesystem path to the signing key.
+
+
+
+
+ Specifies the key container.
+
+
+
+
+ Gets the command line arguments for the external program.
+
+
+ The command line arguments for the external program.
+
+
+
+
+ Compiles ILASM programs.
+
+
+
+ Compiles helloworld.il to helloworld.exe.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Compiles the sources.
+
+
+
+
+ Writes the compiler options.
+
+
+
+
+ Writes an option using the default output format.
+
+
+ The to which the compiler options should
+ be written.
+
+
+ A that contains the name of the
+ option which should be passed to the compiler.
+
+
+
+
+ Writes an option and its value using the default output format.
+
+
+ The to which the compiler options should
+ be written.
+
+
+ A that contains the name of the
+ option which should be passed to the compiler.
+
+
+ A that contains the value of the
+ option which should be passed to the compiler.
+
+
+
+
+ Determines whether or not compilation is needed.
+
+
+ if compilation is needed; otherwise,
+ .
+
+
+
+
+ Specifies whether or not the compiler should measure and report
+ the compilation times.
+
+
+ if the compilation times should be
+ measured and reported; otherwise, . The
+ default is .
+
+
+
+ Corresponds to the /CLOCK flag.
+
+
+
+
+
+ Specifies whether or not the compiler should generate debug
+ information.
+
+
+ if debug information should be generated;
+ otherwise, . The default is
+ .
+
+
+
+ Corresponds to the /DEBUG flag.
+
+
+
+
+
+ Specifies whether or not the compiler should attempt to create a
+ PE file even if compilation errors have been reported.
+
+
+ if a PE file has to be created even if
+ compilation errors have been reported; otherwise,
+ . The default is .
+
+
+
+ Corresponds to the /ERROR flag.
+
+
+
+
+
+ Instructs NAnt to recompile the output file regardless of the file
+ timestamps.
+
+
+ if the output file should be recompiled
+ regardless of its timestamps; otherwise .
+ The default is .
+
+
+
+
+ Specifies whether or not the compiler should type a formatted
+ listing of the compilation result.
+
+
+ if a formatted listing of the compilation
+ result should be typed; otherwise, . The
+ default is .
+
+
+
+ Corresponds to the /LISTING flag.
+
+
+
+
+
+ Instructs the compiler to set the FileAlignment value in
+ the PE header.
+
+
+ An that represents the FileAlignment
+ value to set in the PE header. The value must be a power of 2, in
+ range from 512 to 65536.
+
+
+
+ Corresponds to the /ALIGNMENT flag.
+
+
+
+
+
+ Instructs the compiler to set the ImageBase value in
+ the PE header.
+
+
+ A that represents the ImageBase
+ value to set in the PE header.
+
+
+
+ Corresponds to the /BASE flag.
+
+
+
+
+
+ Instructs the compiler to set the Flags value in the CLR
+ header.
+
+
+ An that represents the Flags
+ value to set in the CLR header. The most frequently value are 1
+ (pre-IL code) and 2 (mixed code). The third bit indicating that
+ the PE file is strong signed, is ignored.
+
+
+
+ Corresponds to the /FLAGS flag.
+
+
+
+
+
+ Instructs the compiler to set the Subsystem value in the PE
+ header.
+
+
+ An that represents the Subsystem
+ value to set in the PE header. The most frequently value are 3
+ (console application) and 2 (GUI application).
+
+
+
+ Corresponds to the /SUBSYSTEM flag.
+
+
+
+
+
+ Specifies which output type should be generated.
+
+
+ A that contains the target type.
+ Possible values are dll and exe.
+
+
+
+ Corresponds to the /OUTPUT flag.
+
+
+
+
+
+ Instructs the compiler to generate a strong signature of the PE
+ file.
+
+
+ A that contains the private
+ encryption key.
+
+
+
+ Corresponds to the /KEY=keysource]]>
+ flag.
+
+
+
+
+
+ Instructs the compiler to generate a strong signature of the PE
+ file.
+
+
+ A that represents the file
+ containing the private encryption key.
+
+
+
+ Corresponds to the /KEY=keyfile]]>
+ flag.
+
+
+
+
+
+ Specifies the name of the output file created by the compiler.
+
+
+ A that represents the name of
+ the output file.
+
+
+
+ Corresponds to the /OUTPUT flag.
+
+
+
+
+
+ Instructs the compiler to link the specified unmanaged resource
+ file into the resulting PE file.
+
+
+ A that represents the unmanaged
+ resource file to link.
+
+
+
+ Corresponds to the /RESOURCE flag.
+
+
+
+
+
+ Specifies the set of source files to compile.
+
+
+ A that represents the set
+ of source files to compile.
+
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ A that contains the command-line
+ arguments for the external program.
+
+
+
+
+ Compiles JScript.NET programs.
+
+
+ Compile helloworld.js to helloworld.exe.
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Writes module references to the specified .
+
+ The to which the module references should be written.
+
+
+
+ Writes the compiler options to the specified .
+
+ to which the compiler options should be written.
+
+
+
+ Specifies which platform version of common language runtime (CLR)
+ can run the output file.
+
+
+ The platform version of common language runtime (CLR) that can run
+ the output file.
+
+
+
+ Corresponds with the /platform flag.
+
+
+
+
+
+ Specifies the warning level for the compiler to display. Valid
+ values are 0-4. The default is 4.
+
+
+ The warning level for the compiler to display.
+
+
+
+ Corresponds with the /warn flag.
+
+
+
+
+
+ Controls which warnings should be reported as errors.
+
+
+ Override to avoid exposing this to build authors, as the JScript.NET
+ compiler does not allow control over which warnings should be
+ reported as errors.
+
+
+
+
+ Specifies a comma-separated list of warnings that should be suppressed
+ by the compiler.
+
+
+ Override to avoid exposing this to build authors, as the JScript.NET
+ compiler does not support package references.
+
+
+
+
+ Specifies a list of warnings that you want the compiler to suppress.
+
+
+ Override to avoid exposing this to build authors, as the JScript.NET
+ compiler does not support suppressing warnings.
+
+
+
+
+ Specifies the code page to use for all source code files in the
+ compilation.
+
+
+
+ Corresponds with the /codepage flag.
+
+
+
+
+
+ Specifies the key pair container used to strongname the assembly.
+
+
+ Override to avoid exposing this to build authors, as the JScript.NET
+ does not support this.
+
+
+
+
+ Specifies a strong name key file.
+
+
+ Override to avoid exposing this to build authors, as the JScript.NET
+ does not support this.
+
+
+
+
+ Indicates whether the compiler for a given target framework supports
+ the "keycontainer" option. The default is .
+
+
+ .
+
+
+ Override to avoid exposing this to build authors, as the JScript.NET
+ does not support this.
+
+
+
+
+ Indicates whether the compiler for a given target framework supports
+ the "keyfile" option. The default is .
+
+
+ .
+
+
+ Override to avoid exposing this to build authors, as the JScript.NET
+ does not support this.
+
+
+
+
+ Specifies whether the compiler for the active target framework
+ supports limiting the platform on which the compiled code can run.
+ The default is .
+
+
+
+
+ Link the specified modules into this assembly.
+
+
+ Override to avoid exposing this to build authors, as the JScript.NET
+ compiler does not support linking modules.
+
+
+
+
+ Gets the file extension required by the current compiler.
+
+
+ For the JScript.NET compiler, the file extension is always js.
+
+
+
+
+ Gets the class name regular expression for the language of the
+ current compiler.
+
+
+ Class name regular expression for the language of the current
+ compiler.
+
+
+
+
+ Gets the namespace regular expression for the language of the
+ current compiler.
+
+
+ Namespace regular expression for the language of the current
+ compiler.
+
+
+
+
+ Generates a .licence file from a .licx file.
+
+
+
+ If no output file is specified, the default filename is the name of the
+ target file with the extension .licenses appended.
+
+
+
+
+ Generate the file component.exe.licenses file from component.licx.
+
+
+
+ ]]>
+
+
+
+
+
+ Initializes the class.
+
+ The used to initialize the task.
+
+
+
+ Updates the of the specified
+ .
+
+ The of which the should be updated.
+
+
+
+ Generates the license file.
+
+
+
+
+ Determines whether the .licenses file needs to be recompiled
+ or is uptodate.
+
+ The .licenses file.
+
+ if the .licenses file needs compiling;
+ otherwise, .
+
+
+
+
+ Input file to process.
+
+
+
+
+ Name of the license file to output.
+
+
+
+
+ Names of the references to scan for the licensed component.
+
+
+
+
+ Specifies the executable for which the .licenses file is generated.
+
+
+
+
+ Specifies the executable for which the .licenses file is generated.
+
+
+
+
+ Indicates whether assembly references are supported by the current
+ target framework. The default is .
+
+
+ Applies only to frameworks having a command line tool for compiling
+ licenses files.
+
+
+
+
+ Indicates whether the current target framework has a command line
+ tool for compiling licenses files. The default is
+ .
+
+
+
+
+ Gets the working directory for the application.
+
+
+ The working directory for the application.
+
+
+
+
+ The command-line arguments for the external program.
+
+
+ Override to avoid exposing these elements in build file.
+
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ Gets the filename of the external program to start.
+
+
+ The filename of the external program.
+
+
+ Override in derived classes to explicitly set the location of the
+ external tool.
+
+
+
+
+ Responsible for reading the license and writing them to a license
+ file.
+
+
+
+
+ Obtains a lifetime service object to control the lifetime policy for
+ this instance.
+
+
+ An object of type used to control the lifetime
+ policy for this instance. This is the current lifetime service object
+ for this instance if one exists; otherwise, a new lifetime service
+ object initialized with a lease that will never time out.
+
+
+
+
+ Creates the whole license file.
+
+ The instance for which the license file should be created.
+ The .licenses file to create.
+
+
+
+ Determines whether the given object is serializable in binary
+ format.
+
+ The object to check.
+
+ if is
+ serializable in binary format; otherwise, .
+
+
+
+
+ Runs NDoc V1.3.1 to create documentation.
+
+
+
+ See the NDoc home page for more
+ information.
+
+
+ By default, only the NDoc MSDN documenter ships as part of the NAnt
+ distribution. To make another NDoc documenter from the NDoc V1.3.1
+ distribution available to the , copy the
+ documenter assembly (and possible dependencies) to the "lib"
+ directory corresponding with the CLR you're running NAnt on
+ (eg. <nant root>/bin/lib/net/1.1).
+
+
+
+
+ Document two assemblies using the MSDN documenter. The namespaces are
+ documented in NamespaceSummary.xml.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+ Content of NamespaceSummary.xml :
+
+
+
+ The Foo.Bar namespace reinvents the wheel.
+
+
+ The Foo.Bar.Tests namespace ensures that the Foo.Bar namespace reinvents the wheel correctly.
+
+
+ ]]>
+
+
+
+
+
+ Initializes the taks and verifies the parameters.
+
+ containing the XML fragment used to define this task instance.
+
+
+
+ Generates an NDoc project and builds the documentation.
+
+
+
+
+ Represents the method that will be called to update the overall
+ percent complete value and the current step name.
+
+ The source of the event.
+ A that contains the event data.
+
+
+
+ Represents the method that will be called to update the current
+ step's precent complete value.
+
+ The source of the event.
+ A that contains the event data.
+
+
+
+ Returns the documenter for the given project.
+
+
+ Documenter is not found.
+
+
+ is .
+
+
+
+
+ Performs macro expansion for the given nodes.
+
+ for which expansion should be performed.
+
+
+
+ The set of assemblies to document.
+
+
+
+
+ The set of namespace summary files.
+
+
+
+
+ Specifies the formats in which the documentation should be generated.
+
+
+
+
+ Collection of additional directories to search for referenced
+ assemblies.
+
+
+
+
+ Installs or removes .NET Services.
+
+
+
+ This tasks provides the same functionality as the regsvcs tool
+ provided in the .NET SDK.
+
+
+ It performs the following actions:
+
+
+
+ Loads and registers an assembly.
+
+
+ Generates, registers, and installs a type library into a specified COM+ application.
+
+
+ Configures services that are added programmatically to your class.
+
+
+
+ Refer to the .NET Services Installation Tool (Regsvcs.exe) for more information.
+
+
+
+
+ Adds all public classes contained in myTest.dll to a COM+
+ application and produces the myTest.tlb type library. If the
+ application already exists, it is overwritten.
+
+
+
+ ]]>
+
+
+
+
+ Adds all public classes contained in myTest.dll to myTargetApp
+ and produces the myTest.tlb type library. If the application already
+ exists, it is overwritten.
+
+
+
+ ]]>
+
+
+
+
+ Adds all public classes contained in myTest.dll to a COM+
+ application and produces the myTest.tlb type library. A new
+ application is always created.
+
+
+
+ ]]>
+
+
+
+
+ Uninstalls the COM+ application contained in myTest.dll.
+
+
+
+ ]]>
+
+
+
+
+
+ Performs the specified action.
+
+
+
+
+ Defines the action to take with the assembly. The default is
+ .
+
+
+
+
+ The source assembly file.
+
+
+ The assembly must be signed with a strong name.
+
+
+
+
+ Specifies the type library file to install.
+
+
+
+
+ Uses an existing type library. The default is .
+
+
+
+
+ Do not reconfigure an existing target application.
+ The default is .
+
+
+
+
+ Configures components only; ignores methods and interfaces.
+ The default is .
+
+
+
+
+ Expect an existing application. The default is .
+
+
+
+
+ Specifies the name of the COM+ application to either find or create.
+
+
+
+
+ Specifies the name or id of the COM+ application to either find or
+ create.
+
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ Defines the possible actions for a .NET Service.
+
+
+
+
+ Finds or creates the target application.
+
+
+
+
+ Creates the target application.
+
+
+
+
+ Uninstalls the target application.
+
+
+
+
+ Converts files from one resource format to another.
+
+
+
+ If no is specified, the resource file will
+ be created next to the input file.
+
+
+
+
+ Convert a resource file from the .resx to the .resources
+ format.
+
+
+
+ ]]>
+
+
+
+
+ Convert a set of .resx files to the .resources format.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Updates the of the specified
+ .
+
+ The of which the should be updated.
+
+
+
+ Converts a single file or group of files.
+
+
+
+
+ Cleans up generated files.
+
+
+
+
+ Determines whether the specified input file needs to be compiled.
+
+ The input file.
+ The output file.
+
+ if the input file need to be compiled;
+ otherwise .
+
+
+
+
+ Determines the full path and extension for the output file.
+
+ The output file for which the full path and extension should be determined.
+
+ The full path (with extensions) for the specified file.
+
+
+
+
+ Determines whether the specified resource file references third
+ party assemblies by checking whether a <data> element exists
+ with a "type" attribute that does not start with
+ "System.".
+
+ The resource file to check.
+
+ if the resource file references third party
+ assemblies, or an error occurred; otherwise, .
+
+
+ This check will only be accurate for 1.0 resource file, but the
+ 2.0 resx files can only be compiled with a resgen tool that supported
+ assembly references, so this method will not be used anyway.
+
+
+
+
+ Returns a list of external file references for the specified file.
+
+ The resx file for which a list of external file references should be returned.
+
+ A list of external file references for the specified file, or
+ if does not
+ exist or does not support external file references.
+
+
+
+
+ Input file to process.
+
+
+ The full path to the input file.
+
+
+
+
+ The resource file to output.
+
+
+
+
+ The target type. The default is resources.
+
+
+
+
+ The directory to which outputs will be stored.
+
+
+
+
+ Use each source file's directory as the current directory for
+ resolving relative file paths. The default is .
+ Only supported when targeting .NET 2.0 (or higher).
+
+
+
+
+ Takes a list of .resx or .txt files to convert to .resources files.
+
+
+
+
+ Reference metadata from the specified assembly files.
+
+
+
+
+ Indicates whether assembly references are supported by the
+ resgen tool for the current target framework. The default
+ is .
+
+
+
+
+ Indicates whether external file references are supported by the
+ resgen tool for the current target framework. The default
+ is .
+
+
+
+
+ For internal use only !
+
+
+
+
+ Gets the working directory for the application.
+
+
+ The working directory for the application.
+
+
+
+
+ Gets the command line arguments for the external program.
+
+
+ The command line arguments for the external program.
+
+
+
+
+ Gets the filename of the external program to start.
+
+
+ The filename of the external program.
+
+
+ Override in derived classes to explicitly set the location of the
+ external tool.
+
+
+
+
+ For internal use only !
+
+
+
+
+ Initializes a new instance of the
+ class for a given input and output file.
+
+ The resource to compile.
+ The compiled resource.
+
+
+
+ Gets the resource file to compile.
+
+
+ The resource file to compile.
+
+
+
+
+ Gets the compiled resource file.
+
+
+ The compiled resource file.
+
+
+
+
+ Executes the code contained within the task. This code can include custom extension function definitions.
+ Once the script task has executed those custom functions will be available for use in the buildfile.
+
+
+
+ The must contain a single code
+ element, which in turn contains the script code.
+
+
+ A static entry point named ScriptMain is required if no custom functions have been defined. It must
+ have a single parameter.
+
+
+ The following namespaces are loaded by default:
+
+
+
+ System
+
+
+ System.Collections
+
+
+ System.Collections.Specialized
+
+
+ System.IO
+
+
+ System.Text
+
+
+ System.Text.RegularExpressions
+
+
+ NAnt.Core
+
+
+
+
+ Run C# code that writes a message to the build log.
+
+ <script language="C#">
+ <code>
+ <![CDATA[
+ public static void ScriptMain(Project project) {
+ project.Log(Level.Info, "Hello World from a script task using C#");
+ }
+ ]]>
+ </code>
+ </script>
+
+
+
+ Define a custom function and call it using C#.
+
+ <script language="C#" prefix="test" >
+ <code>
+ <![CDATA[
+ [Function("test-func")]
+ public static string Testfunc( ) {
+ return "some result !!!!!!!!";
+ }
+ ]]>
+ </code>
+ </script>
+ <echo message='${test::test-func()}'/>
+
+
+
+ Use a custom namespace in C# to create a database
+
+ <script language="C#" >
+ <references>
+ <include name="System.Data.dll" />
+ </references>
+ <imports>
+ <import namespace="System.Data.SqlClient" />
+ </imports>
+ <code>
+ <![CDATA[
+ public static void ScriptMain(Project project) {
+ string dbUserName = "nant";
+ string dbPassword = "nant";
+ string dbServer = "(local)";
+ string dbDatabaseName = "NAntSample";
+ string connectionString = String.Format("Server={0};uid={1};pwd={2};", dbServer, dbUserName, dbPassword);
+
+ SqlConnection connection = new SqlConnection(connectionString);
+ string createDbQuery = "CREATE DATABASE " + dbDatabaseName;
+ SqlCommand createDatabaseCommand = new SqlCommand(createDbQuery);
+ createDatabaseCommand.Connection = connection;
+
+ connection.Open();
+
+ try {
+ createDatabaseCommand.ExecuteNonQuery();
+ project.Log(Level.Info, "Database added successfully: " + dbDatabaseName);
+ } catch (Exception e) {
+ project.Log(Level.Error, e.ToString());
+ } finally {
+ connection.Close();
+ }
+ }
+ ]]>
+ </code>
+ </script>
+
+
+
+
+ Run Visual Basic.NET code that writes a message to the build log.
+
+
+ <script language="VB">
+ <code>
+ <![CDATA[
+ Public Shared Sub ScriptMain(project As Project)
+ project.Log(Level.Info, "Hello World from a script task using Visual Basic.NET")
+ End Sub
+ ]]>
+ </code>
+ </script>
+
+
+
+ Define a custom task and call it using C#.
+
+ <script language="C#" prefix="test" >
+ <code>
+ <![CDATA[
+ [TaskName("usertask")]
+ public class TestTask : Task {
+ #region Private Instance Fields
+
+ private string _message;
+
+ #endregion Private Instance Fields
+
+ #region Public Instance Properties
+
+ [TaskAttribute("message", Required=true)]
+ public string FileName {
+ get { return _message; }
+ set { _message = value; }
+ }
+
+ #endregion Public Instance Properties
+
+ #region Override implementation of Task
+
+ protected override void ExecuteTask() {
+ Log(Level.Info, _message.ToUpper());
+ }
+ #endregion Override implementation of Task
+ }
+ ]]>
+ </code>
+ </script>
+ <usertask message='Hello from UserTask'/>
+
+
+
+
+ Define a custom function and call it using Boo.
+
+
+ <script language="Boo.CodeDom.BooCodeProvider, Boo.CodeDom, Version=1.0.0.0, Culture=neutral, PublicKeyToken=32c39770e9a21a67"
+ failonerror="true">
+ <code>
+ <![CDATA[
+
+ [Function("test-func")]
+ def MyFunc():
+ return "Hello from Boo !!!!!!"
+ ]]>
+ </code>
+ </script>
+ <echo message='${script::test-func()}'/>
+
+
+
+
+
+ Initializes the task using the specified xml node.
+
+
+
+
+ Executes the script block.
+
+
+
+
+ The language of the script block. Possible values are "VB", "vb", "VISUALBASIC", "C#", "c#", "CSHARP".
+ "JS", "js", "JSCRIPT" "VJS", "vjs", "JSHARP" or a fully-qualified name for a class implementing
+ .
+
+
+
+
+ Any required references.
+
+
+
+
+ The name of the main class containing the static ScriptMain
+ entry point.
+
+
+
+
+ The namespace prefix for any custom functions defined in the script.
+ If ommitted the prefix will default to 'script'
+
+
+
+
+ The namespaces to import.
+
+
+
+
+ The code to execute.
+
+
+
+
+ Compiles Visual Basic.NET programs.
+
+
+
+ In order to have generate manifest resource names
+ that match those generated by Microsoft Visual Studio.NET, the value of
+ the attribute of the <>
+ element should match the "Root namespace" of the VB.NET project, and the
+ value of the attribute
+ should be set to "".
+
+
+
+ Example build file using this task.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Finds the correct namespace/classname for a resource file from the
+ given dependent source file, and ensure the
+ is prefixed.
+
+ The file from which the resource linkage of the resource file should be determined.
+ The culture of the resource file for which the resource linkage should be determined.
+
+ The namespace/classname of the source file matching the resource or
+ if the dependent source file does not exist.
+
+
+
+
+ Writes conditional compilation constants to the specified
+ .
+
+ The to which the conditional compilation constants should be written.
+
+
+
+ Writes the compiler options to the specified .
+
+ to which the compiler options should be written.
+
+
+
+ Determines whether compilation is needed.
+
+
+
+
+ The preferred base address at which to load a DLL. The default base
+ address for a DLL is set by the .NET Framework common language
+ runtime.
+
+
+ The preferred base address at which to load a DLL.
+
+
+ This address must be specified as a hexadecimal number.
+
+
+
+
+ Specifies the type of debugging information generated by the
+ compiler. The default is .
+
+
+
+
+ No longer expose this to build authors. Use
+ instead.
+
+
+
+
+ The name of the XML documentation file to generate. Only supported
+ when targeting .NET 2.0 (or higher).
+
+
+
+ Corresponds with the /doc: flag.
+
+
+
+
+
+ Specifies whether the /imports option gets passed to the
+ compiler.
+
+
+ The value of this attribute is a string that contains one or more
+ namespaces separated by commas.
+
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+ Example of an imports attribute
+
+
+
+
+
+ The namespaces to import.
+
+
+
+
+ Instructs the compiler not to reference standard libraries
+ (system.dll and VBC.RSP). The default is .
+ Only supported when targeting .NET 2.0 (or higher).
+
+
+
+ Corresponds with the /nostdlib flag.
+
+
+
+
+
+ Specifies whether /optioncompare option gets passed to the
+ compiler.
+
+
+ text, binary, or an empty string. If the value is
+ or an empty string, the option will not be
+ passed to the compiler.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies whether the /optionexplicit option gets passed to
+ the compiler. The default is .
+
+
+ if the option should be passed to the compiler;
+ otherwise, .
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies whether the /optimize option gets passed to the
+ compiler. The default is .
+
+
+ if the option should be passed to the compiler;
+ otherwise, .
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies whether the /optionstrict option gets passed to
+ the compiler. The default is .
+
+
+ if the option should be passed to the compiler;
+ otherwise, .
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies which platform version of common language runtime (CLR)
+ can run the output file.
+
+
+ The platform version of common language runtime (CLR) that can run
+ the output file.
+
+
+
+ Corresponds with the /platform flag.
+
+
+
+
+
+ Specifies whether the /removeintchecks option gets passed to
+ the compiler. The default is .
+
+
+ if the option should be passed to the compiler;
+ otherwise, .
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies whether the /rootnamespace option gets passed to
+ the compiler.
+
+
+ The value of this attribute is a string that contains the root
+ namespace of the project.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies whether the compiler for the active target framework
+ supports generation of XML Documentation file. The default is
+ .
+
+
+
+
+ Specifies whether the compiler for the active target framework
+ supports NOT referencing standard libraries (system.dll and VBC.RSP).
+ The default is .
+
+
+
+
+ Specifies whether the compiler for the active target framework
+ supports limiting the platform on which the compiled code can run.
+ The default is .
+
+
+
+
+ Gets the file extension required by the current compiler.
+
+
+ For the VB.NET compiler, the file extension is always vb.
+
+
+
+
+ Gets the class name regular expression for the language of the
+ current compiler.
+
+
+ Class name regular expression for the language of the current
+ compiler.
+
+
+
+
+ Gets the namespace regular expression for the language of the
+ current compiler.
+
+
+ Namespace regular expression for the language of the current
+ compiler.
+
+
+
+
+ Compiles Visual J# programs using vjc, Microsoft's J# compiler.
+
+
+
+ In order to have generate manifest resource names
+ that match those generated by Microsoft Visual Studio.NET, the value of
+ the attribute of the <>
+ element should match the "Default Package" of the J#.NET project, and
+ the value of the attribute
+ should be set to "".
+
+
+
+ Compile a "HelloWorld" application, including embedded resources.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Writes module references to the specified .
+
+ The to which the module references should be written.
+
+
+
+ Writes the compiler options to the specified .
+
+ to which the compiler options should be written.
+
+
+
+ The preferred base address at which to load a DLL. The default base
+ address for a DLL is set by the .NET Framework common language
+ runtime.
+
+
+ The preferred base address at which to load a DLL.
+
+
+ This address can be specified as a decimal, hexadecimal, or octal
+ number.
+
+
+
+
+ Specifies the type of debugging information generated by the
+ compiler. The default is .
+
+
+
+
+ No longer expose this to build authors. Use
+ instead.
+
+
+
+
+ Specifies whether package-scoped members are accessible outside of
+ the assembly. In other words, package scope is treated as assembly
+ scope when emitting metadata. The default is .
+
+
+ if the option should be passed to the compiler;
+ otherwise, .
+
+
+
+ Corresponds to the /securescoping flag.
+
+
+ See the Visual J# Reference for details.
+
+
+
+ ]]>
+
+
+
+
+ Specifies whether to disable language extensions.
+
+
+ The value of this property must be either all, net,
+ or an empty string.
+
+
+
+ Corresponds to the /x flag.
+
+
+ See the Visual J# Reference for details.
+
+
+
+ To disable only the .NET Framework extensions:
+ ]]>
+ To disable the .NET Framework extensions and the VJ++ 6.0 extensions:
+ ]]>
+
+
+
+
+ Specifies the location of assemblies referenced by way of the /reference flag.
+
+
+
+ Corresponds to the /libpath:dir[;dir2] flag.
+
+
+ See the Visual J# Reference for details.
+
+
+
+
+
+ Associate Java-language/COM package names.
+
+
+ The value of this propery. must be package=namespace, @filename,
+ or an empty string.
+
+
+
+ Corresponds to the /jcpa:package=namespace and /jcpa:@filename flags.
+
+
+ See the Visual J# Reference for details.
+
+
+
+ Map package 'x' to namespace 'y':
+ ]]>
+
+
+
+
+ Specifies the code page to use for all source code files in the
+ compilation.
+
+
+
+ Corresponds with the /codepage flag.
+
+
+ See the Visual J# Reference for details.
+
+
+
+
+
+ Specifies the warning level for the compiler to display. Valid values
+ are 0-4. The default is 4.
+
+
+ The warning level for the compiler to display.
+
+
+
+ Corresponds with the /warn option.
+
+
+
+
+
+ Controls which warnings should be reported as errors.
+
+
+ Override to avoid exposing this to build authors, as the Visual J#
+ compiler does not allow control over which warnings should be
+ reported as errors.
+
+
+
+
+ Reference packages
+
+
+ Override to avoid exposing this to build authors, as the Visual J#
+ compiler does not support package references.
+
+
+
+
+ Link the specified modules into this assembly.
+
+
+ Override to avoid exposing this to build authors, as the Visual J#
+ compiler does not support linking modules.
+
+
+
+
+ Gets the file extension required by the current compiler.
+
+
+ For the J# compiler, the file extension is always jsl.
+
+
+
+
+ Gets the class name regular expression for the language of the
+ current compiler.
+
+
+ Class name regular expression for the language of the current
+ compiler.
+
+
+
+
+ Gets the namespace regular expression for the language of the
+ current compiler.
+
+
+ Namespace regular expression for the language of the current
+ compiler.
+
+
+
+
+ Override to avoid exposing the configuration setting for this
+ task as Visual J# will never support package references.
+
+
+ , as the Visual J# compiler will never
+ support package references.
+
+
+
+
+ Represents an assembly-level attribute.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Typename of the assembly-level attribute.
+
+
+
+
+ Value of the attribute.
+
+
+
+
+ If then the value of the attribute will be
+ set as is, without actually looking for a matching constructor or
+ named properties. The default is .
+
+
+ if the value of the attribute should be set
+ as is; otherwise, .
+
+
+
+
+ Indicates if the attribute should be generated.
+
+
+ if the attribute should be generated;
+ otherwise, .
+
+
+
+
+ Indicates if the attribute should be not generated.
+
+
+ if the attribute should be not generated;
+ otherwise, .
+
+
+
+
+ Contains a strongly typed collection of
+ objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a with the specified
+ value is in the collection.
+
+ The argument value to locate in the collection.
+
+ if a with
+ value is found in the collection; otherwise,
+ .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the with the specified value.
+
+ The value of the to get.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ A specialized used for setting the lib directories.
+
+
+ The primary reason for this class is to allow the
+ to always be the same value as the parent
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+
+ override this. We will always use the base directory of the parent.
+ overriding without the TaskAttribute attribute prevents it being set
+ in the source xml
+
+
+
+
+ Specialized class for managing assembly files.
+
+
+
+ If an include pattern does not contain any wildcard characters then
+ the assembly will be searched for in following locations (in the order listed):
+
+
+
+
+ The base directory of the fileset.
+
+
+
+
+ The directories specified using the nested <lib> element.
+
+
+
+
+ The assembly directory of the current target framework.
+
+
+
+
+
+
+ Define a reference with name "sys.assemblies", holding
+ a set of system assemblies.
+
+
+
+
+
+
+
+ ]]>
+
+
+ Use the predefined set of assemblies to compile a C# assembly.
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ Compile a C# assembly using assembly references that are searched for
+ in the "Third Party Assemblies" and "Company Assemblies"
+ directories.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ copy constructor for FileSet. Required in order to
+ assign references of FileSet type where
+ AssemblyFileSets are used
+
+
+
+
+
+ Do a normal scan and then resolve assemblies.
+
+
+
+
+ Resolves references to system assemblies and assemblies that can be
+ resolved using directories specified in .
+
+
+
+
+ Additional directories to search in for assembly references.
+
+
+
+ loosely Corresponds with the /lib[path]: flag of the various compiler tasks.
+
+
+
+
+
+ Represents a compiler warning.
+
+
+
+
+ A warning number, or comma-separated list of warnings, that you want
+ the compiler to suppress or report.
+
+
+
+
+ If then the element will be processed;
+ otherwise, skipped. The default is .
+
+
+
+
+ If then the element will be skipped;
+ otherwise, processed. The default is .
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Specifies the type of debugging information generated by the compiler.
+
+
+
+ For backward compatibility, the following string values can also be
+ used in build files:
+
+
+
+ Value
+ Corresponding field
+
+
+ "true"
+
+
+
+ "false"
+
+
+
+
+ When set to then the following conditional
+ compilation symbols will also be defined:
+
+
+
+ DEBUG
+
+
+ TRACE
+
+
+
+
+
+
+ Create no debug information.
+
+
+
+
+ Enable attaching a debugger to the running program.
+
+
+
+
+ Enable attaching a debugger to the running program.
+
+
+
+
+ Only display assembler when the running program is attached to the
+ debugger.
+
+
+
+
+ Specialized that also supports
+ case-insensitive conversion of "true" to
+ and "false" to
+ .
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Converts the given object to the type of this converter, using the
+ specified context and culture information.
+
+ An that provides a format context.
+ A object. If a is passed, the current culture is assumed.
+ The to convert.
+
+ An that represents the converted value.
+
+
+
+
+ Represents an embedded resource.
+
+
+ Do not yet expose this to build authors.
+
+
+
+
+ Initializes a new instance of the
+ with the specified file name and manifest resource name.
+
+ The path of the compiled resource.
+ The manifest resource name of the embedded resource.
+
+
+
+ Gets the physical location of the resource to embed.
+
+
+ The physical location of the resource to embed.
+
+
+
+
+ Gets the manifest resource name to use when embedding the resource.
+
+
+ The manifest resource name to use when embedding the resource.
+
+
+
+
+ Contains a collection of items.
+
+
+ Do not yet expose this to build authors.
+
+
+
+
+ Base class for collections that needs to be globally referencable.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Copies the items of the collection to an ,
+ starting at a particular index.
+
+ The one-dimensional that is the destination of the items copied from the collection. The must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Returns an enumerator that can iterate through a collection.
+
+
+ An that can be used to iterate through
+ the collection.
+
+
+
+
+ Removes an item at a specific index.
+
+ The zero-based index of the item to remove.
+
+
+
+ Removes all items from the collection.
+
+
+
+
+ Used by methods that take instances as argument
+ to verify whether the instance is valid for the collection class.
+
+ The instance to verify.
+
+
+
+ Checks whether the specified index is within the range of this
+ collection.
+
+ The index to check.
+
+
+
+ Gets a value indicating whether access to the collection is
+ synchronized (thread-safe).
+
+
+ .
+
+
+
+
+ Gets the number of items in the collection.
+
+
+ The number of items in the collection.
+
+
+
+
+ Gets an object that can be used to synchronize access to the
+ collection.
+
+
+ An object that can be used to synchronize access to the collection.
+
+
+
+
+ Gets a value indicating whether the collection has a fixed size.
+
+
+ .
+
+
+
+
+ Gets a value indicating whether the collection has a fixed size.
+
+
+ .
+
+
+
+
+ Gets the list of elements contained in the
+ instance.
+
+
+ An containing the elements of the
+ collection.
+
+
+
+
+ Gets the of the items in this collection.
+
+
+ The of the items in this collection.
+
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Inserts a into the collection at the
+ specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Removes the specified from the
+ collection.
+
+ The to remove from the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Gets the location of a in the collection.
+
+ The object to locate.
+
+ The zero-based location of the in the
+ collection.
+
+
+ If the is not currently a member of
+ the collection, -1 is returned.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+ The position into which the new item was inserted.
+
+
+
+
+ Adds the items of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+ The position into which the new item was inserted.
+
+
+
+
+ Inserts a into the collection at the
+ specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Removes the specified from the
+ collection.
+
+ The to remove from the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Gets the location of a in the collection.
+
+ The object to locate.
+
+ The zero-based location of the in the
+ collection.
+
+
+ If the is not currently a member of
+ the collection, -1 is returned.
+
+
+
+
+ Gets or sets the item at the specified index.
+
+ The zero-based index of the item to get or set.
+
+
+
+ Gets the with the specified manifest
+ resource name.
+
+ The manifest resource name of the to get.
+
+
+
+ Gets the of the items in this collection.
+
+
+ The of the items in this collection.
+
+
+
+
+ Gets or sets the item at the specified index.
+
+ The zero-based index of the item to get or set.
+
+
+
+ Enumerates the items of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next item of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next item; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first item in the collection.
+
+
+
+
+ Gets the current item in the collection.
+
+
+ The current item in the collection.
+
+
+
+
+ Gets the current item in the collection.
+
+
+ The current item in the collection.
+
+
+
+
+ Represents a namespace to import.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Initializes a new instance of the
+ class for the specified namespace.
+
+ The namespace.
+ is .
+
+
+
+ The name of the namespace to import.
+
+
+ The name of the namespace to import.
+
+
+
+
+ The name of the namespace to import.
+
+
+ The name of the namespace to import.
+
+
+
+
+ Indicates if the import should be generated.
+
+
+ if the import should be generated; otherwise,
+ .
+
+
+
+
+ Indicates if the import should be not generated.
+
+
+ if the import should be not generated;
+ otherwise, .
+
+
+
+
+ Contains a collection of items.
+
+
+ Define a reference with name "system.imports".
+
+
+
+
+
+ ]]>
+
+ Use the predefined set of imports to compile a VB.NET assembly.
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Returns a comma-delimited list of namespace imports.
+
+
+ A comma-delimited list of namespace imports, or an empty
+ if there are no namespace imports.
+
+
+ Each namespace import is quoted individually.
+
+
+
+
+ Inserts a into the collection at the
+ specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Removes the specified from the
+ collection.
+
+ The to remove from the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Gets the location of a in the collection.
+
+ The object to locate.
+
+ The zero-based location of the in the
+ collection.
+
+
+ If the is not currently a member of
+ the collection, -1 is returned.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+ The position into which the new item was inserted.
+
+
+
+
+ Adds the items of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+ The position into which the new item was inserted.
+
+
+
+
+ Inserts a into the collection at the
+ specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Removes the specified from the
+ collection.
+
+ The to remove from the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Gets the location of a in the collection.
+
+ The object to locate.
+
+ The zero-based location of the in the
+ collection.
+
+
+ If the is not currently a member of
+ the collection, -1 is returned.
+
+
+
+
+ Gets or sets the item at the specified index.
+
+ The zero-based index of the item to get or set.
+
+
+
+ Gets the with the specified namespace.
+
+ The namespace of the to get.
+
+
+
+ Gets the of the items in this collection.
+
+
+ The of the items in this collection.
+
+
+
+
+ Gets or sets the item at the specified index.
+
+ The zero-based index of the item to get or set.
+
+
+
+ Enumerates the items of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next item of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next item; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first item in the collection.
+
+
+
+
+ Gets the current item in the collection.
+
+
+ The current item in the collection.
+
+
+
+
+ Gets the current item in the collection.
+
+
+ The current item in the collection.
+
+
+
+
+ Represents a package.
+
+
+
+
+ Name of the package to reference. Multiple package can be specified
+ with a single element as a semi-colon separated list of
+ package names.
+
+
+
+
+ Indicates if the package should be passed to the task.
+ If then the package will be passed;
+ otherwise, skipped. The default is .
+
+
+
+
+ Indicates if the package should not be passed to the task.
+ If then the package will be passed;
+ otherwise, skipped. The default is .
+
+
+
+
+ Contains a strongly typed collection of
+ objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Specialized class for managing resource files.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ copy constructor for FileSet. Required in order to
+ assign references of FileSet type where
+ ResourceFileSet are used
+
+
+
+
+
+ Creates a shallow copy of the .
+
+
+ A shallow copy of the .
+
+
+
+
+ Gets the manifest resource name for the specified resource file.
+
+ The physical path of the resource file.
+
+ The manifest resource name to be sent to the compiler.
+
+
+
+
+ Gets the manifest resource name for the file using both its physical
+ and logical path.
+
+ The physical path of the resource file.
+ The logical location of the resource file.
+
+ The manifest resource name to be sent to the compiler.
+
+
+ We use the relative path of the logical path, but the filename and
+ and the extension of the physical path to match VS.NET
+
+
+
+
+ Indicates the prefix to prepend to the actual resource.
+ This is usually the default namspace of the assembly.
+
+
+
+
+ Indicates that prefixes should be dynamically generated by taking
+ the path of the resource relative to the basedir and appending it
+ to the specified prefix.
+
+
+
+
+ Gets a containing all matching resx files.
+
+
+ A containing all matching resx files.
+
+
+
+
+ Gets a containing all matching non-resx
+ files.
+
+
+ A containing all matching non-resx files.
+
+
+
+
+ Contains a strongly typed collection of objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Controls the behaviour of a compiler with regards to the reporting of
+ warnings.
+
+
+
+ Instruct a compiler to report warning 0519 as an error.
+
+
+
+
+
+ ]]>
+
+
+
+
+ Instruct a compiler not to report warning 0519 as an error, if the
+ release property is .
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Specifies a list of warnings that the compiler should treat as
+ errors. This overrides the
+ attribute. Only supported when targeting .NET 2.0 or higher.
+
+
+
+
+ Specifies a list of warnings that the compiler should NOT treat as
+ errors. This is only useful if
+ is . Only supported when targeting .NET 2.0
+ or higher.
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.MSNetTasks.dll b/build-support/tools/nant/bin/NAnt.MSNetTasks.dll
new file mode 100644
index 00000000..a679416a
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.MSNetTasks.dll differ
diff --git a/build-support/tools/nant/bin/NAnt.MSNetTasks.xml b/build-support/tools/nant/bin/NAnt.MSNetTasks.xml
new file mode 100644
index 00000000..31e25845
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.MSNetTasks.xml
@@ -0,0 +1,580 @@
+
+
+
+ NAnt.MSNetTasks
+
+
+
+
+ Disassembles any portable executable (PE) file that contains
+ intermediate language (IL) code.
+
+
+
+ Files are only disassembled if the input file is newer than the output
+ file, or if the output file does not exist. However, you can
+ explicitly force files to be disassembled with the
+ attribute.
+
+
+ A can be used to select files to disassemble.
+ To use a , the
+ attribute must be set. The file name of the output file will be equal
+ to the file name of the input file, but with extension ".il".
+
+
+
+
+ Disassembles helloworld.exe to helloworld.il.
+
+
+
+ ]]>
+
+
+
+
+ Disassembles a set of PE files into the specified directory.
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Checks whether the task is initialized with valid attributes.
+
+ The used to initialize the task.
+
+
+
+ Disassembles the PE file(s).
+
+
+
+
+ Disassembles the specified PE file.
+
+ The PE file to disassemble.
+
+
+
+ Determines the full path and extension for the output file.
+
+
+ A that represents the PE file
+ file for which the corresponding output file should be determined.
+
+
+ A that represents the full path
+ for the output file.
+
+ The path of the output file could not be determined.
+
+
+
+ Writes the disassembler options.
+
+
+
+
+ Writes an option using the default output format.
+
+
+ The to which the disassembler options
+ should be written.
+
+
+ A that contains the name of the
+ option which should be passed to the disassembler.
+
+
+
+
+ Writes an option and its value using the default output format.
+
+
+ The to which the disassembler options
+ should be written.
+
+
+ A that contains the name of the
+ option which should be passed to the disassembler.
+
+
+ A that contains the value of the
+ option which should be passed to the disassembler.
+
+
+
+
+ Determines whether or not disassembling is needed.
+
+
+ if disassembling is needed; otherwise,
+ .
+
+
+
+
+ Specifies whether or not the disassembler should combine the
+ /HEADER, /BYTE, and /TOKENS options. The default
+ is .
+
+
+ if the disassembler should combine the
+ /HEADER, /BYTE, and /TOKENS options;
+ otherwise, . The default is
+ .
+
+
+
+ Corresponds to the /ALL flag.
+
+
+
+
+
+ Specifies whether or not the disassembler should generate the
+ IL stream bytes (in hexadecimal notation) as instruction comments.
+ The default is .
+
+
+ if the IL stream bytes should be generated
+ as instruction comments; otherwise, . The
+ default is .
+
+
+
+ Corresponds to the /BYTE flag.
+
+
+
+
+
+ Instructs NAnt to rebuild the output file regardless of the file
+ timestamps. The default is .
+
+
+ if the output file should be rebuilt
+ regardless of its timestamps; otherwise .
+ The default is .
+
+
+
+
+ Specifies whether or not the disassembler should include PE header
+ information and runtime header information in the output. The default
+ is .
+
+
+ if PE header information and runtime header
+ information should be included in the output; otherwise,
+ . The default is .
+
+
+
+ Corresponds to the /HEADER flag.
+
+
+
+
+
+ Specifies the PE file to disassemble.
+
+
+ A that represents the PE file
+ to disassemble.
+
+
+
+
+ Specifies whether or not the disassembler should include
+ references to original source lines. The default is .
+
+
+ if references to original source lines
+ should be included; otherwise, . The
+ default is .
+
+
+
+ Corresponds to the /LINENUM flag.
+
+
+
+
+
+ Specifies whether or not the disassembler should suppress ILASM
+ code output. The default is .
+
+
+ if ILASM code output should be suppresses;
+ otherwise, . The default is
+ .
+
+
+
+ Corresponds to the /NOIL flag.
+
+
+
+
+
+ Specifies whether or not the disassembler should disassemble
+ public items only. This is a shortcut for ="pub".
+ The default is .
+
+
+ if only public items should be
+ disassembled; otherwise, . The default is
+ .
+
+
+
+ Corresponds to the /PUBONLY flag.
+
+
+
+
+
+ Specifies whether or not the disassembler should enclose all names
+ in single quotation marks. By default, only names that don't match
+ the ILASM definition of a simple name are quoted. The default is
+ .
+
+
+ if all names should be enclosed in single
+ quotation marks; otherwise, . The default
+ is .
+
+
+
+ Corresponds to the /QUOTEALLNAMES flag.
+
+
+
+
+
+ Specifies whether or not the disassembler should generate
+ structured exception handling clauses in canonical (label) form.
+ The default is .
+
+
+ if structured exception handling clauses
+ should be generated in canonical form; otherwise,
+ . The default is .
+
+
+
+ Corresponds to the /RAWEH flag.
+
+
+
+
+
+ Specifies whether or not the disassembler should generate
+ original source lines as comments. The default is .
+
+
+ if original source lines should be
+ generated as comments; otherwise, .
+ The default is .
+
+
+
+ Corresponds to the /SOURCE flag.
+
+
+
+
+
+ Specifies whether or not the disassembler should generate metadata
+ token values as comments. The default is .
+
+
+ if metadata token values should be
+ generated as comments; otherwise, . The
+ default is .
+
+
+
+ Corresponds to the /TOKENS flag.
+
+
+
+
+
+ Specifies whether or not the disassembler should use the UNICODE
+ encoding when generating the output. The default is ANSI.
+
+
+ if the output should be generated using
+ the UNICODE encoding; otherwise, . The
+ default is .
+
+
+
+ Corresponds to the /UNICODE flag.
+
+
+
+
+
+ Specifies whether or not the disassembler should use the UTF-8
+ encoding when generating the output. The default is ANSI.
+
+
+ if the output should be generated using
+ the UTF-8 encoding; otherwise, . The
+ default is .
+
+
+
+ Corresponds to the /UTF8 flag.
+
+
+
+
+
+ Instructs the disassembler to disassemble the specified item only.
+
+
+ A that specifies the item to
+ disassemble.
+
+
+
+ Corresponds to the /ITEM flag.
+
+
+
+
+
+ Instructs the disassembler to disassemble only the items with the
+ specified visibility. Possible values are PUB, PRI,
+ FAM, ASM, FAA, FOA, PSC,
+ or any combination of them separated by +.
+
+
+ A that contains the visibility
+ suboptions.
+
+
+
+ Corresponds to the /VISIBILITY flag.
+
+
+
+
+
+ Specifies the name of the output file created by the disassembler.
+
+
+ A that represents the name of
+ the output file.
+
+
+
+ Corresponds to the /OUT flag.
+
+
+
+
+
+ Specifies the directory to which outputs will be stored.
+
+
+ A that represents the
+ directory to which outputs will be stored.
+
+
+
+
+ Specifies a list of PE files to disassemble. To use a ,
+ the attribute must be specified.
+
+
+ A that represents the set
+ of PE files to disassemble.
+
+
+
+
+ The command-line arguments for the external program.
+
+
+ Overridden to ensure the <arg> elements would not be exposed
+ to build authors.
+
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ A that contains the command-line
+ arguments for the external program.
+
+
+
+
+ Allows a Windows service to be controlled.
+
+
+ Starts the World Wide Web Publishing Service on the local computer.
+
+
+ ]]>
+
+
+
+ Stops the Alerter service on computer 'MOTHER'.
+
+
+ ]]>
+
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Peforms actions on the service in order to reach the desired status.
+
+
+
+
+ Determines the desired status of the service based on the action
+ that should be performed on it.
+
+
+ The that should be reached
+ in order for the to be considered successful.
+
+
+
+
+ Starts the service identified by and
+ .
+
+ instance for controlling the service identified by and .
+
+
+
+ Stops the service identified by and
+ .
+
+ instance for controlling the service identified by and .
+
+
+
+ Restarts the service identified by and
+ .
+
+ instance for controlling the service identified by and .
+
+
+
+ Pauses the service identified by and
+ .
+
+ instance for controlling the service identified by and .
+
+
+
+ Continues the service identified by and
+ .
+
+ instance for controlling the service identified by and .
+
+
+
+ Holds the name of the service that should be controlled.
+
+
+
+
+ Holds the name of the computer on which the service resides.
+
+
+
+
+ Holds the action that should be performed on the service.
+
+
+
+
+ Holds the time, in milliseconds, the task will wait for a service
+ to reach the desired status.
+
+
+
+
+ The name of the service that should be controlled.
+
+
+
+
+ The name of the computer on which the service resides. The default
+ is the local computer.
+
+
+
+
+ The action that should be performed on the service.
+
+
+
+
+ The time, in milliseconds, the task will wait for the service to
+ reach the desired status. The default is 5000 milliseconds.
+
+
+
+
+ Defines the actions that can be performed on a service.
+
+
+
+
+ Starts a service.
+
+
+
+
+ Stops a service.
+
+
+
+
+ Restarts a service.
+
+
+
+
+ Pauses a running service.
+
+
+
+
+ Continues a paused service.
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.NUnit.dll b/build-support/tools/nant/bin/NAnt.NUnit.dll
new file mode 100644
index 00000000..e78b7b7f
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.NUnit.dll differ
diff --git a/build-support/tools/nant/bin/NAnt.NUnit.xml b/build-support/tools/nant/bin/NAnt.NUnit.xml
new file mode 100644
index 00000000..39d46d6b
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.NUnit.xml
@@ -0,0 +1,353 @@
+
+
+
+ NAnt.NUnit
+
+
+
+
+ Carries data specified through the formatter element.
+
+
+
+
+ Gets or sets the type of the formatter.
+
+ The type of the formatter.
+
+
+
+ Gets or sets a value indicating whether output should be persisted
+ to a file.
+
+
+ if output should be written to a file; otherwise,
+ . The default is .
+
+
+
+
+ Gets or sets the extension to append to the output filename.
+
+ The extension to append to the output filename.
+
+
+
+ Gets or sets the directory where the output file should be written
+ to, if is .
+
+
+ The directory where the output file should be written to.
+
+
+
+
+ Contains a strongly typed collection of objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ The built-in formatter types.
+
+
+
+
+ A plaintext formatter.
+
+
+
+
+ An XML formatter.
+
+
+
+
+ Represents the FormatterElement of the NUnit task.
+
+
+
+
+ Type of formatter.
+
+
+
+
+ Extension to append to the output filename.
+
+
+
+
+ Determines whether output should be persisted to a file. The default
+ is .
+
+
+
+
+ Specifies the directory where the output file should be written to,
+ if is . If not
+ specified, the output file will be written to the directory where
+ the test module is located.
+
+
+
+
+ Gets the underlying for the element.
+
+
+
+
+ Contains a strongly typed collection of objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.NUnit1Tasks.dll b/build-support/tools/nant/bin/NAnt.NUnit1Tasks.dll
new file mode 100644
index 00000000..a95b4d01
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.NUnit1Tasks.dll differ
diff --git a/build-support/tools/nant/bin/NAnt.NUnit1Tasks.xml b/build-support/tools/nant/bin/NAnt.NUnit1Tasks.xml
new file mode 100644
index 00000000..941273b9
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.NUnit1Tasks.xml
@@ -0,0 +1,538 @@
+
+
+
+ NAnt.NUnit1Tasks
+
+
+
+
+ The whole test suite started.
+
+
+
+
+ The whole test suite ended.
+
+
+
+
+ Sets the the formatter is supposed to write
+ its results to.
+
+
+
+
+ Contains a strongly typed collection of objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Prints information about running tests directly to the build log.
+
+
+
+ Not used, all output goes to Log class.
+
+
+ Called when the whole test suite has started.
+
+
+ Called when the whole test suite has ended.
+
+
+ Convert a stack trace line into something that can be clicked on in an IDE output window.
+ The StackTrace string, see .
+ The string that gets appended to the end of file(line): portion.
+
+
+
+ Runs tests using the NUnit V1.0 framework.
+
+
+
+ See the NUnit home page for more
+ information.
+
+
+ The or
+ attributes are only used to stop more than one test suite to stop
+ running. If any test suite fails a build error will be thrown.
+ Set to to
+ ignore test errors and continue build.
+
+
+
+
+ Run tests in the MyProject.Tests.dll assembly.
+
+
+ The test results are logged in results.xml and results.txt
+ using the and
+ formatters, respectively.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Stops running tests when a test causes an error. The default is
+ .
+
+
+ Implies haltonfailure.
+
+
+
+
+ Stops running tests if a test fails (errors are considered failures
+ as well). The default is .
+
+
+
+
+ Cancel the individual tests if they do not finish in the specified
+ time (measured in milliseconds). Ignored if fork is disabled.
+
+
+
+
+ Tests to run.
+
+
+
+
+ Formatters to output results of unit tests.
+
+
+
+
+ Represents a test element of an .
+
+
+
+
+ Base name of the test result. The full filename is determined by this
+ attribute and the extension of formatter.
+
+
+
+
+ Directory to write the reports to.
+
+
+
+
+ Class name of the test.
+
+
+
+
+ Assembly to load the test from.
+
+
+
+
+ Run the tests in a separate .
+
+
+
+
+ Stop the build process if an error occurs during the test run.
+
+
+
+
+ Stop the build process if a test fails (errors are considered failures
+ as well).
+
+
+
+
+ The application configuration file to use for the NUnit test domain.
+
+
+
+
+ Contains a strongly typed collection of objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Carries data specified through the test element.
+
+
+
+
+ Determines if the unit test needs running.
+
+
+ if unit test needs running, otherwise,
+ .
+
+
+
+ Determines if the test needs running by looking at the date stamp
+ of the test assembly and the test results log.
+
+
+
+
+
+ Runs a Suite extracted from a TestCase subclass.
+
+
+
+
+ Creates the formatters to be used when running this test.
+
+
+
+
+ Returns the output file or null if does not use a file.
+
+
+
+
+ Returns the test suite from a given class.
+
+
+ The assemblyQualifiedName parameter needs to be in form:
+ "full.qualified.class.name,Assembly"
+
+
+
+
+ Gets the collection of registered formatters.
+
+ Collection of registered formatters.
+
+
+
+ Gets the result of the test.
+
+ The result of the test.
+
+
+
+ Prints information about running tests in plain text.
+
+
+
+ Sets the Writer the formatter is supposed to write its results to.
+
+
+ Called when the whole test suite has started.
+
+
+ Called when the whole test suite has ended.
+
+
+ Convert a stack trace line into something that can be clicked on in an IDE output window.
+ The StackTrace string, see .
+ The string that gets appended to the end of file(line): portion.
+
+
+
+ Decorates NUnits with extra information such as
+ run-time.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Gets or sets the total run-time of a test.
+
+ The total run-time of a test.
+
+
+
+ Prints detailed information about running tests in XML format.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Sets the the formatter is supposed to
+ write its results to.
+
+
+
+
+ Called when the whole test suite has started.
+
+
+
+
+ Called when the whole test suite has ended.
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.NUnit2Tasks.dll b/build-support/tools/nant/bin/NAnt.NUnit2Tasks.dll
new file mode 100644
index 00000000..7eab179c
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.NUnit2Tasks.dll differ
diff --git a/build-support/tools/nant/bin/NAnt.NUnit2Tasks.xml b/build-support/tools/nant/bin/NAnt.NUnit2Tasks.xml
new file mode 100644
index 00000000..4e16c35b
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.NUnit2Tasks.xml
@@ -0,0 +1,568 @@
+
+
+
+ NAnt.NUnit2Tasks
+
+
+
+
+ Controls the categories of tests to execute using the .
+
+
+
+ Only include test cases and fixtures that require no internet access.
+
+
+
+
+
+ ]]>
+
+
+
+
+ Exclude test cases and fixtures that are known to fail.
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Specifies a list of categories to include.
+
+
+
+
+ Specifies a list of categories to exclude.
+
+
+
+
+ Represents a certain group of test cases or fixtures.
+
+
+
+
+ A name of a category, or comma-separated list of names.
+
+
+
+
+ If then the category will be processed;
+ otherwise, skipped. The default is .
+
+
+
+
+ If then the category will be skipped;
+ otherwise, processed. The default is .
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Returns a comma-delimited list of categories.
+
+
+ A comma-delimited list of categories, or an empty
+ if there are no categories.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a with the specified
+ value is in the collection.
+
+ The argument value to locate in the collection.
+
+ if a with value
+ is found in the collection; otherwise,
+ .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the with the specified name.
+
+ The name of the to get.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Contains a strongly typed collection of objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Runs tests using the NUnit V2.2 framework.
+
+
+
+ The attribute is only useful when more
+ than one test suite is used, and you want to continue running other
+ test suites although a test failed.
+
+
+ Set to to
+ ignore any errors and continue the build.
+
+
+ In order to run a test assembly built with NUnit 2.0 or 2.1 using
+ , you must add the following node to your
+ test config file :
+
+
+
+ ...
+
+
+
+
+
+
+
+
+
+ ...
+
+ ]]>
+
+
+ See the NUnit home page for more
+ information.
+
+
+
+
+ Run tests in the MyProject.Tests.dll assembly.
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ Only run tests that are not known to fail in files listed in the tests.txt
+ file.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Runs the tests and sets up the formatters.
+
+
+
+
+ Stop the test run if a test fails. The default is .
+
+
+
+
+ Tests to run.
+
+
+
+
+ Formatters to output results of unit tests.
+
+
+
+
+ Represents a test element of an .
+
+
+
+
+ Name of the assembly to search for tests.
+
+
+
+
+ Name of a specific testfixture to run. If not specified then all
+ testfixtures are run.
+
+
+
+
+ Assemblies to include in test.
+
+
+
+
+ Categories of test cases to include or exclude.
+
+
+
+
+ Build fails on failure. The default is .
+
+
+
+
+ XSLT transform file to use when using the
+ formatter.
+
+
+
+
+ The application configuration file to use for the NUnit test domain.
+ If not specified, NAnt will try to use a configuration name matching
+ the file name of the assembly with extension ".config".
+
+
+
+
+ Gets all assemblies specified for these tests.
+
+
+ All assemblies specified for these tests.
+
+
+
+
+ Custom TestDomain, similar to the one included with NUnit, in order
+ to workaround some limitations in it.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Runs a single testcase.
+
+ The test assembly.
+ The application configuration file for the test domain.
+
+ The result of the test.
+
+
+
+
+ Helper class called when an assembly resolve event is raised.
+
+
+
+
+ Initializes an instanse of the
+ class.
+
+
+
+
+ Called back when the CLR cannot resolve a given assembly.
+
+ The source of the event.
+ A that contains the event data.
+
+ The nunit.framework we know to be in NAnts bin directory, if
+ that is the assembly that needs to be resolved; otherwise,
+ .
+
+
+
+
+ Occurs when an assembly is loaded. The loaded assembly is added
+ to the assembly cache.
+
+ The source of the event.
+ An that contains the event data.
+
+
+
+ Holds the list of directories that will be scanned for missing
+ assembly references.
+
+
+
+
+ Holds the loaded assemblies.
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.SourceControlTasks.dll b/build-support/tools/nant/bin/NAnt.SourceControlTasks.dll
new file mode 100644
index 00000000..c44fd3a5
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.SourceControlTasks.dll differ
diff --git a/build-support/tools/nant/bin/NAnt.SourceControlTasks.xml b/build-support/tools/nant/bin/NAnt.SourceControlTasks.xml
new file mode 100644
index 00000000..e8bc7664
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.SourceControlTasks.xml
@@ -0,0 +1,1285 @@
+
+
+
+ NAnt.SourceControlTasks
+
+
+
+
+ A base class for creating tasks for executing CVS client commands on a
+ CVS repository.
+
+
+
+
+ A base class for creating tasks for executing CVS client commands on a
+ CVS repository.
+
+
+
+
+ Name of the environmental variable specifying a users' home
+ in a *nix environment.
+
+
+
+
+ Used on windows to specify the location of application data.
+
+
+
+
+ The environment variable that holds path information.
+
+
+
+
+ The environment variable that holds the location of the
+ .cvspass file.
+
+
+
+
+ Property name used to specify the source control executable. This is
+ used as a readonly property.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Build up the command line arguments, determine which executable is being
+ used and find the path to that executable and set the working
+ directory.
+
+ The process to prepare.
+
+
+
+ Adds a new global option if none exists. If one does exist then
+ the use switch is toggled on or of.
+
+ The common name of the option.
+ The option value or command line switch
+ of the option.
+ true if the option should be
+ appended to the commandline, otherwise false.
+
+
+
+ Adds a new command option if none exists. If one does exist then
+ the use switch is toggled on or of.
+
+ The common name of the option.
+ The option value or command line switch
+ of the option.
+ true if the option should be
+ appended to the commandline, otherwise false.
+
+
+
+ Set up the environment variables for a process.
+
+ A process to setup.
+
+
+
+ Append the files specified in the fileset to the command line argument.
+ Files are changed to use a relative path from the working directory
+ that the task is spawned in.
+
+
+
+
+ Derive the location of the version control system from the environment
+ variable PATH.
+
+ The file information of the version control system,
+ or null if this cannot be found.
+
+
+
+ The name of the passfile, overriden for each version control system (VCS).
+
+
+
+
+ The path to the specific home directory of the version control system,
+ this can be where the binary files are kept, or other app
+ information.
+
+
+
+
+ The environment variable that defines where the version control system
+ (VCS) home variable is kept.
+
+
+
+
+ The name of the version control system (VCS) executable file.
+
+
+
+
+
+ The root variable contains information on how to locate a repository.
+ Although this information is in different formats it typically must
+ define the following:
+
+ server location
+ protocol used to communicate with the repository
+ repository location on the server
+ project location in the repository
+
+
+
+
+
+
+ Destination directory for the local sandbox. If destination is not specified
+ then the current directory is used.
+
+
+ Root path of the local sandbox.
+
+
+
+ Root path of the local sandbox.
+
+
+
+
+
+ The password for logging in to the repository.
+
+
+ The password for logging in to the repository.
+
+
+
+
+ The full path to the cached password file. If not specified then the
+ environment variables are used to try and locate the file.
+
+
+
+
+ Holds a collection of globally available options.
+
+
+
+
+ A collection of options that can be used to modify the default behavoir
+ of the version control commands. See the sub-tasks for implementation
+ specifics.
+
+
+
+
+ Command-line arguments for the program. The command line arguments are used to specify
+ any cvs command options that are not available as attributes. These are appended
+ after the command itself and are additive to whatever attributes are currently specified.
+
+
+ <cvs-checkout cvsroot=":pserver:anonymous@cvs.sourceforge.net:/cvsroot/nant"
+ module="nant"
+ destination="e:\test\merillcornish\working"
+ readonly="true"
+ quiet="true"
+ commandline="-n"
+ cvsfullpath="C:\Program Files\TortoiseCVS\cvs.exe"
+ />
+
+ Produces the cvs command:
+ c:\Program Files\TortoiseCVS\cvs.exe -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/nant -q checkout -n nant
+
+
+
+
+ The name of the command that is going to be executed.
+
+
+
+
+ Used to specify the version control system (VCS) files that are going
+ to be acted on.
+
+
+
+
+ The executable to use for ssh communication.
+
+
+
+
+ The environment name for the ssh variable.
+
+
+
+
+ The name of the version control system executable.
+
+
+
+
+ Get the command line arguments for the task.
+
+
+
+
+ Default value for the recursive directive. The default is
+ .
+
+
+
+
+ Default value for the quiet command.
+
+
+
+
+ Default value for the really quiet command.
+
+
+
+
+ An environment variable that holds path information about where
+ cvs is located.
+
+
+
+
+ Name of the password file that cvs stores pserver
+ cvsroot/ password pairings.
+
+
+
+
+ The default compression level to use for cvs commands.
+
+
+
+
+ The default use of binaries, defaults to use sharpcvs.
+
+
+
+
+ The name of the cvs executable.
+
+
+
+
+ The temporary name of the sharpcvslib binary file, to avoid
+ conflicts in the path variable.
+
+
+
+
+ Environment variable that holds the executable name that is used for
+ ssh communication.
+
+
+
+
+ Property name used to specify on a project level whether sharpcvs is
+ used or not.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Build up the command line arguments, determine which executable is being
+ used and find the path to that executable and set the working
+ directory.
+
+ The process to prepare.
+
+
+
+ Override to append any commands before the modele and files.
+
+
+
+
+ Append the command line options or commen names for the options
+ to the generic options collection. This is then piped to the
+ command line as a switch.
+
+
+
+
+ Add the given argument to the command line options. Note that are not explicitly
+ quoted are split into seperate arguments. This is to resolve a recent issue
+ with quoting command line arguments.
+
+
+
+
+
+ The environment name for the ssh variable.
+
+
+
+
+ The name of the cvs binary, or cvs.exe at the time this
+ was written.
+
+
+
+
+ The name of the pass file, or .cvspass at the time
+ of this writing.
+
+
+
+
+ The name of the version control system specific home environment
+ variable.
+
+
+
+
+ Specify if the module is needed for this cvs command. It is
+ only needed if there is no module information on the local file
+ system.
+
+
+
+
+ Used to specify the version control system (VCS) files that are going
+ to be acted on.
+
+
+
+
+ Get the cvs file set.
+
+
+
+
+ The name of the cvs executable.
+
+
+
+
+ The full path to the cvs binary used. The cvs tasks will attempt to
+ "guess" the location of your cvs binary based on your path. If the
+ task is unable to resolve the location, or resolves it incorrectly
+ this can be used to manually specify the path.
+
+
+ A full path (i.e. including file name) of your cvs binary:
+ On Windows: c:\vcs\cvs\cvs.exe
+ On *nix: /usr/bin/cvs
+
+
+
+
+
+ The cvs root variable has the following components:
+
+
+ [protocol]:[username]@[servername]:[server path]
+
+
protocol: ext, pserver, ssh (sharpcvslib); if you are not using sharpcvslib consult your cvs documentation.
+
username: [username]
+
servername: cvs.sourceforge.net
+
server path: /cvsroot/nant
+
+
+
+
+ NAnt anonymous cvsroot:
+
+ :pserver:anonymous@cvs.sourceforge.net:/cvsroot/nant
+
+
+
+
+
+ The module to perform an operation on.
+
+
+ The module to perform an operation on. This is a normal file/folder
+ name without path information.
+
+
+ In NAnt the module name would be:
+ nant
+
+
+
+
+
+ if the SharpCvsLib binaries that come bundled
+ with NAnt should be used to perform the cvs commands,
+ otherwise.
+
+
+ You may also specify an override value for all cvs tasks instead
+ of specifying a value for each. To do this set the property
+ sourcecontrol.usesharpcvslib to .
+
+
+ If you choose not to use SharpCvsLib to checkout from cvs you will
+ need to include a cvs.exe binary in your path.
+
+
+
+ To use a cvs client in your path instead of sharpcvslib specify
+ the property:
+ >property name="sourcecontrol.usesharpcvslib" value="false"<
+
+ The default settings is to use sharpcvslib and the setting closest
+ to the task execution is used to determine which value is used
+ to execute the process.
+
+ For instance if the attribute usesharpcvslib was set to false
+ and the global property was set to true, the usesharpcvslib is
+ closes to the point of execution and would be used and is false.
+ Therefore the sharpcvslib binary would NOT be used.
+
+
+
+
+ The executable to use for ssh communication.
+
+
+
+
+ Indicates if the output from the cvs command should be supressed.
+ The default is .
+
+
+
+
+ Indicates if the output from the cvs command should be stopped.
+ The default is .
+
+
+
+
+ if the sandbox files should be checked out in
+ read only mode. The default is .
+
+
+
+
+ if the sandbox files should be checked out in
+ read/write mode. The default is .
+
+
+
+
+ Compression level to use for all net traffic. This should be a value from 1-9.
+
+
+ NOTE: This is not available on sharpcvslib.
+
+
+
+
+ Produces an XML report that represents the cvs changes from the given
+ start day, to a given end date.
+
+
+ Report changes in NAnt from 1st of June 2004 until 25th of July 2004.
+
+
+ ]]>
+
+
+
+
+
+ The command being executed.
+
+
+
+
+ Name of the xml file that will contain the cvs log information.
+
+
+
+
+ The earliest change to use in the cvs log command.
+
+
+
+
+ The latest date to use in the cvs log command.
+
+
+
+
+ The cvs command to execute.
+
+
+
+
+ Override use of sharpcvslib, needs to be true.
+
+
+
+
+
+ The cvs root variable has the following components:
+
+
+ [protocol]:[username]@[servername]:[server path]
+
+
protocol: ext, pserver, ssh (sharpcvslib); if you are not using sharpcvslib consult your cvs documentation.
+
username: [username]
+
servername: cvs.sourceforge.net
+
server path: /cvsroot/nant
+
+
+
+ If the cvsroot is not specified then the directory specified by the
+ attribute
+ is searched for CVS\Root.
+
+
+
+ NAnt anonymous cvsroot:
+
+ :pserver:anonymous@cvs.sourceforge.net:/cvsroot/nant
+
+
+
+
+
+ Checks out a CVS module to the required directory.
+
+
+ Checkout NAnt.
+
+
+ ]]>
+
+
+
+
+ Checkout NAnt revision named 0_85 to the
+ folder c:\src\nant\v0.85.
+
+
+
+ ]]>
+
+ So the nant module tagged with revision 0_85 will be checked
+ out in the folder v0.85 under the working/ destination directory.
+ This could be used to work on different
+ branches of a repository at the same time.
+
+
+
+ Checkout NAnt with specified revision date to the
+ folder c:\src\nant\2003_08_16.
+
+
+
+ ]]>
+
+
+
+
+
+ The command being executed.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Specify the revision to checkout. This corresponds to the "sticky-tag"
+ of the file.
+
+
+
+
+ Sticky tag or revision to checkout.
+
+
+
+
+ Specify the revision date to checkout. The date specified is validated
+ and then passed to the cvs binary in a standard format recognized by
+ cvs.
+
+
+
+
+ Specify a directory name to replace the module name. Valid names
+ include any valid filename, excluding path information.
+
+
+
+
+ Specify a directory name to replace the module name. Valid names
+ include any valid filename, excluding path information.
+
+
+
+
+ The name of the cvs command that is going to be executed.
+
+
+
+
+ Executes the cvs login command which appends or updates an entry to the
+ specified .cvspass file.
+
+
+ Update .cvspass file to include the NAnt anonymous login.
+
+
+ ]]>
+
+
+
+
+
+ Ensures all information is available to execute the .
+
+ The used to initialize the .
+
+
+
+ Update the .cvspass file with the given password. If the passfile
+ is not specified then the default search locations are used:
+
+ CVS_PASSFILE/.cvspass
+ HOME/.cvspass
+ USERPROFILE/.cvspass TODO: Confirm that this is valid
+ behavior or if it is going to give problems with the
+ cvsnt implementation.
+
+
+
+
+
+ Password to append or update to the .cvspass file.
+
+
+
+
+ The full path to the .cvspass file. The default is ~/.cvspass.
+
+
+
+
+
+ The current working directory.
+
+
+
+
+ The repository root string.
+
+
+
+
+ Executes the cvs command specified by the command attribute.
+
+
+ Checkout NAnt.
+
+
+ ]]>
+
+
+
+
+
+ The cvs command to execute.
+
+
+
+
+ Specify if the module is needed for this cvs command.
+
+
+
+
+ Exports a cvs module in preperation for a release (i.e. the CVS version
+ folders are not exported).
+
+
+ Export the most recent NAnt sources from cvs.
+
+
+ ]]>
+
+
+
+
+ Export NAnt revision named your_favorite_revision_here to the
+ folder c:\src\nant\replacement_for_module_directory_name.
+
+ **NOTE**: filesets names for the export task must be
+ prefixed with the module name. This is different than other tasks.
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ The command being executed.
+
+
+
+
+ Create a new instance of the .
+
+
+ The following values are set by default:
+
+
Recursive:
+
+
+
+
+
+ No shortening. Do not shorten module paths if -d specified.
+
+
+
+
+ Indicates whether the head revision should be used if the revison specified by
+ or the tags are not
+ found. The default is .
+
+
+ if the specified tag should be moved;
+ otherwise, . The default is .
+
+
+
+
+ If a directory is specified indicates whether sub-directories should
+ also be processed.
+
+
+ if the sub-directories should be tagged;
+ otherwise, . The default is .
+
+
+
+
+ Specify the revision to update the file to. This corresponds to the "sticky-tag"
+ of the file.
+
+
+
+
+ Specify the revision date to update to. The version of the file that
+ existed at the date specified is retrieved.
+
+
+ A valid date time value, which is then converted to a format that
+ cvs can parse.
+
+
+
+
+ Specify a directory name to replace the module name. Valid names
+ include any valid filename, excluding path information.
+
+
+
+
+ The export command name for the cvs client.
+
+
+
+
+ Tags all sources in the remote repository with a given tag.
+
+
+
+ Unlike tag, the rtag command acts only on sources that are in the repository.
+ Any modified sources on the local file system will NOT be tagged with this
+ command, so a commit should be performed before an rtag is done.
+
+
+ NOTE: Although a working directory is not necessary to perform the command
+ one must be specified in order to remain in compliance with the cvs library.
+
+
+
+ Tag NAnt sources remotely.
+
+
+ ]]>
+
+
+
+ Remove a tag from the remote repository.
+
+
+ ]]>
+
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Append the tag information to the commandline.
+
+
+
+
+ The name of the tag to assign or remove.
+
+
+ The name of the tag to assign or remove.
+
+
+
+
+ Indicates whether the tag specified in should
+ be removed or not.
+
+
+ if the specified tag should be removed;
+ otherwise, . The default is .
+
+
+
+
+ Indicates whether the tag specified in should
+ be moved to the current file revision. If the tag does not exist
+ then it is created.
+
+
+ if the specified tag should be moved;
+ otherwise, . The default is .
+
+
+
+
+ If a directory is specified indicates whether sub-directories should
+ also be processed.
+
+
+ if the sub-directories should be tagged;
+ otherwise, . The default is .
+
+
+
+
+ Indicates the repository that is acted on
+ for the tag command. Note if is
+ then the tag specified is moved to the revision
+ of the file on the HEAD of the branch specified.
+
+
+ The tag (or more likely) branch that should be used to apply the new tag.
+
+
+
+
+ Indicates the revision date of the file that the tag should be
+ applied to.
+
+
+ A valid date which specifies the revision point that the tag will
+ be applied to.
+
+
+
+
+ Indicates whether the head revision should be used if the
+ or the tags are not
+ found.
+
+
+ if the specified tag should be moved;
+ otherwise, . The default is .
+
+
+
+
+ The name of the cvs command that is going to be executed.
+
+
+
+
+ Tags all local sources with the specified tag.
+
+
+
+ This differs from the
+ in that it acts on references to the cvs files
+ contained in your local filesystem. As such the sticky tags and local
+ revisions can be considered in commits. It also allows you to verify that
+ all local files have been checked in before a tag is performed.
+
+
+
+ Tag NAnt sources remotely.
+
+
+ ]]>
+
+
+
+ Remove a tag from the remote repository.
+
+
+ ]]>
+
+
+
+
+
+ Cvs command to be executed.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Append the tag information to the commandline.
+
+
+
+
+ The name of the tag to assign or remove.
+
+
+ The name of the tag to assign or remove.
+
+
+
+
+ Indicates whether the tag specified in should
+ be removed or not.
+
+
+ if the specified tag should be removed;
+ otherwise, . The default is .
+
+
+
+
+ Indicates whether the tag specified in should
+ be moved to the current file revision. If the tag does not exist
+ then it is created.
+
+
+ if the specified tag should be moved;
+ otherwise, . The default is .
+
+
+
+
+ If a directory is specified indicates whether sub-directories should
+ also be processed.
+
+
+ if the sub-directories should be tagged;
+ otherwise, . The default is .
+
+
+
+
+ Indicates the repository that is acted on
+ for the tag command. Note if is
+ then the tag specified is moved to the revision
+ of the file on the HEAD of the branch specified.
+
+
+ The tag (or more likely) branch that should be used to apply the new tag.
+
+
+
+
+ Indicates the revision date of the file that the tag should be
+ applied to.
+
+
+ A valid date which specifies the revision point that the tag will
+ be applied to.
+
+
+
+
+ Indicates whether the head revision should be used if the revision specified by
+ or the tags are not
+ found.
+
+
+ if the specified tag should be moved;
+ otherwise, . The default is .
+
+
+
+
+ Indicates whether the head revision should be used if the
+ or the tags are not
+ found.
+
+
+ if the specified tag should be moved;
+ otherwise, . The default is .
+
+
+
+
+ The name of the cvs command that is going to be executed.
+
+
+
+
+ Not used
+
+
+
+
+ Specify if the module is needed for this cvs command. It is
+ only needed if there is no module information on the local file
+ system.
+
+
+
+
+ Updates a CVS module in a local working directory.
+
+
+ Update nant.
+
+
+ ]]>
+
+
+
+
+ Update your NAnt revision named your_favorite_revision_here in
+ the folder c:\src\nant\replacement_for_module_directory_name.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ The command being executed.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+ Sets the build directory and prune empty directory properties to
+ .
+
+
+
+
+ If . new directories will be created on the local
+ sandbox. The default is .
+
+
+
+
+ If empty directories copied down from the
+ remote repository will be removed from the local sandbox.
+ The default is .
+
+
+
+
+ If the local copy of the file will be
+ overwritten with the copy from the remote repository. The default
+ is .
+
+
+
+
+ Specifies if the command should be executed recursively. The
+ default is .
+
+
+ The -R option is on by default in cvs.
+
+
+
+
+ Specify the revision to update the file to. This corresponds to the
+ "sticky-tag" of the file.
+
+
+
+
+ Sticky tag or revision to update the local file to.
+
+
+ A valid cvs tag.
+
+
+
+
+ Specify the revision date to update to. The version of the file that
+ existed at the date specified is retrieved.
+
+
+ A valid date time value, which is then converted to a format that
+ cvs can parse.
+
+
+
+
+ Specify if the module is needed for this cvs command. It is
+ only needed if there is no module information on the local file
+ system.
+
+
+
+
+ The name of the cvs command that is going to be executed.
+
+
+
+
+ A is a with extra
+ attributes useful in the context of the .
+
+
+
+
+ Initialize the object and locate the .cvsignore
+ files to add to the exclude list.
+
+
+
+
+
+ Indicates whether the entires in the .cvsignore should be used to limit the
+ file list; to exclude files in .cvsignore, otherwise
+ . The default is .
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.VSNetTasks.dll b/build-support/tools/nant/bin/NAnt.VSNetTasks.dll
new file mode 100644
index 00000000..da9d9754
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.VSNetTasks.dll differ
diff --git a/build-support/tools/nant/bin/NAnt.VSNetTasks.xml b/build-support/tools/nant/bin/NAnt.VSNetTasks.xml
new file mode 100644
index 00000000..a782968c
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.VSNetTasks.xml
@@ -0,0 +1,3881 @@
+
+
+
+ NAnt.VSNetTasks
+
+
+
+
+ Analyses Microsoft Visual Studio .NET 2003 (Everett) solution files.
+
+
+
+
+ Gets the project file of the project with the given unique identifier.
+
+ The unique identifier of the project for which the project file should be retrieves.
+
+ The project file of the project with the given unique identifier.
+
+ No project with unique identifier could be located.
+
+
+
+ Logs a message with the given priority.
+
+ The message priority at which the specified message is to be logged.
+ The message to be logged.
+
+ The actual logging is delegated to the underlying task.
+
+
+
+
+ Logs a message with the given priority.
+
+ The message priority at which the specified message is to be logged.
+ The message to log, containing zero or more format items.
+ An array containing zero or more objects to format.
+
+ The actual logging is delegated to the underlying task.
+
+
+
+
+ Loads the projects from the file system and stores them in an
+ instance variable.
+
+ instance to use to determine whether an assembly is located in the Global Assembly Cache.
+ instance to use to determine location and references of assemblies.
+ TODO
+ A project GUID in the solution file does not match the actual GUID of the project in the project file.
+
+
+
+ Translates a project path, in the form of a relative file path or
+ a URL, to an absolute file path.
+
+ The directory of the solution.
+ The project path to translate to an absolute file path.
+
+ The project path translated to an absolute file path.
+
+
+
+
+ Converts assembly references to projects to project references, adding
+ a build dependency.c
+
+ The to analyze.
+ The solution configuration that is built.
+ containing list of projects that have been built.
+ containing list of projects that failed to build.
+
+
+
+ Determines whether any of the project dependencies of the specified
+ project still needs to be built.
+
+ The to analyze.
+ containing list of projects that have been built.
+
+ if one of the project dependencies has not
+ yet been built; otherwise, .
+
+
+
+
+ Gets or sets the in memory representation of the project.
+
+
+ The in memory representation of the project, or
+ if the project is not (yet) loaded.
+
+
+ This property will always be for
+ projects that are not supported.
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+ The position into which the new element was inserted.
+
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a with the specified
+ GUID is in the collection, using a case-insensitive lookup.
+
+ The GUID to locate in the collection.
+
+ if a with GUID
+ is found in the collection; otherwise,
+ .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the with the specified GUID.
+
+ The GUID of the to get.
+
+ Performs a case-insensitive lookup.
+
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Analyses Microsoft Visual Studio .NET 2002 (Rainier) solution files.
+
+
+
+
+ Compiles VS.NET solutions (or sets of projects), automatically determining
+ project dependencies from inter-project references.
+
+
+
+ This task support the following projects:
+
+
+
+ Visual Basic .NET
+
+
+ Visual C# .NET
+
+
+ Visual J# .NET
+
+
+ Visual C++ .NET
+
+
+
+ Right now, only Microsoft Visual Studio .NET 2002 and 2003 solutions
+ and projects are supported. Support for .NET Compact Framework projects
+ is also not available at this time.
+
+
+ The also supports the model of referencing
+ projects by their output filenames, rather than referencing them inside
+ the solution. It will automatically detect the existance of a file
+ reference and convert it to a project reference. For example, if project
+ "A" references the file in the release output directory of
+ project "B", the will automatically
+ convert this to a project dependency on project "B" and will
+ reference the appropriate configuration output directory at the final
+ build time (ie: reference the debug version of "B" if the
+ solution is built as debug).
+
+
+ The expects all project files to be valid
+ XML files.
+
+
Resx Files
+
+ When building a project for a down-level target framework, special care
+ should be given to resx files. Resx files (can) contain references to
+ a specific version of CLR types, and as such are only upward compatible.
+
+
+ For example: if you want to be able to build a project both as a .NET 1.0
+ and .NET 1.1 assembly, the resx files should only contain references to
+ .NET 1.0 CLR types. Failure to do this may result in a
+ failure at runtime on machines with only the .NET Framework 1.0 installed.
+
+
+
+
+ Compiles all of the projects in test.sln, in release mode, in
+ the proper order.
+
+
+
+ ]]>
+
+
+
+
+ Compiles all of the projects in projects.txt, in the proper
+ order.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ Compiles projects A, B and C, using the output of project X as a
+ reference.
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ Compiles all of the projects in the solution except for project A.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ Compiles all of the projects in the solution mapping the specific project at
+ http://localhost/A/A.csproj to c:\inetpub\wwwroot\A\A.csproj and any URLs under
+ http://localhost/B/[remainder] to c:\other\B\[remainder]. This allows the build
+ to work without WebDAV.
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+ Compiles all of the projects in the solution placing compiled outputs
+ in c:\temp.
+
+
+ ]]>
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Expands the given macro.
+
+ The macro to expand.
+
+ The expanded macro or if the macro is not
+ supported.
+
+ The macro cannot be expanded.
+
+
+
+ Builds the list of folders that should be scanned for assembly
+ references.
+
+
+ The list of folders that should be scanned for assembly references.
+
+
+
+
+ The projects to build.
+
+
+
+
+ The projects to scan, but not build.
+
+
+ These projects are used to resolve project references and are
+ generally external to the solution being built. References to
+ these project's output files are converted to use the appropriate
+ solution configuration at build time.
+
+
+
+
+ The name of the VS.NET solution file to build.
+
+
+
+ The can be used instead to supply a list
+ of Visual Studio.NET projects that should be built.
+
+
+
+
+
+ The name of the solution configuration to build.
+
+
+
+ Generally release or debug. Not case-sensitive.
+
+
+
+
+
+ The directory where compiled targets will be placed. This
+ overrides path settings contained in the solution/project.
+
+
+
+
+ WebMap of URL's to project references.
+
+
+
+
+ Fileset of projects to exclude.
+
+
+
+
+ Set of folders where references are searched when not found in path
+ from project file (HintPath).
+
+
+
+
+ Includes Visual Studio search folders in reference search path.
+ The default is .
+
+
+
+
+ Allow the task to use WebDAV for retrieving/compiling the projects within solution. Use of
+ is preferred over WebDAV. The default is .
+
+
+ WebDAV support requires permission changes to be made on your project server. These changes may affect
+ the security of the server and should not be applied to a public installation.
+ Consult your web server or the NAnt Wiki documentation for more information.
+
+
+
+
+ Gets the list of folders to scan for assembly references.
+
+
+ The list of folders to scan for assembly references.
+
+
+
+
+ Defines how the project is using the ATL library.
+
+
+
+
+ Don't use ATL.
+
+
+
+
+ Use ATL in a Static Library.
+
+
+
+
+ Use ATL in a Shared DLL.
+
+
+
+
+ Defines how the project is using the MFC library.
+
+
+
+
+ Don't use MFC.
+
+
+
+
+ Use MFC in a Static Library.
+
+
+
+
+ Use MFC in a Shared DLL.
+
+
+
+
+ Indicates the possible ways in which precompiled header file use is
+ specified in a Visual C++ project.
+
+
+ The integer values assigned match those specified in the Visual C++
+ project file for each setting.
+ >
+
+
+
+ Precompiled header file use not specified.
+
+
+
+
+ Don't use a precompiled header file.
+
+
+ For further information on the use of this option
+ see the Microsoft documentation on the C++ compiler flag /Yc.
+
+
+
+
+ Create precompiled header file.
+
+
+ For further information on the use of this option
+ see the Microsoft documentation on the C++ compiler flag /Yc.
+
+
+
+
+ Automatically create precompiled header file if necessary.
+
+
+ For further information on the use of this option
+ see the Microsoft documentation on the C++ compiler flag /Yc.
+
+
+
+
+ Use a precompiled header file.
+
+
+ For further information on the use of this option
+ see the Microsoft documentation on the C++ compiler flag /Yu.
+
+
+
+
+ Represents a single mapping from URL project path to physical project
+ path.
+
+
+
+
+ Specifies the URL of the project file, or a URL fragment to match.
+
+
+ The URL of the project file or the URL fragment to match.
+
+
+
+
+ Specifies the actual path to the project file, or the path fragment
+ to replace.
+
+
+ The actual path to the project file or the path fragment to replace
+ the URL fragment with.
+
+
+
+
+ Specifies whether the mapping is case-sensitive or not.
+
+
+ A boolean flag representing the case-sensitivity of the mapping. Default is .
+
+
+
+
+ Indicates if the URL of the project file should be mapped.
+
+
+ if the URL of the project file should be
+ mapped; otherwise, .
+
+
+
+
+ Indicates if the URL of the project file should not be mapped.
+
+
+ if the URL of the project file should not
+ be mapped; otherwise, .
+
+
+
+
+ Contains a strongly typed collection of
+ objects.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Find the best matching for the given Uri.
+
+ The value to match against the objects in the collection.
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a with the specified
+ value is in the collection.
+
+ The argument value to locate in the collection.
+
+ if a with value
+ is found in the collection; otherwise,
+ .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the with the specified value.
+
+ The value of the to get.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Gets the output path of the reference, without taking the "copy local"
+ setting into consideration.
+
+ The solution configuration that is built.
+
+ The full output path of the reference.
+
+
+
+
+ Gets the complete set of output files of the reference for the
+ specified configuration.
+
+ The solution configuration that is built.
+ The set of output files to be updated.
+
+ The key of the case-insensitive is the
+ full path of the output file and the value is the path relative to
+ the output directory.
+
+
+
+
+ Gets the complete set of assemblies that need to be referenced when
+ a project references this component.
+
+ The solution configuration that is built.
+
+ The complete set of assemblies that need to be referenced when a
+ project references this component.
+
+
+
+
+ Gets the timestamp of the reference.
+
+ The solution configuration that is built.
+
+ The timestamp of the reference.
+
+
+
+
+ Gets a value indicating whether the reference is managed for the
+ specified configuration.
+
+ The solution configuration that is built.
+
+ if the reference is managed for the
+ specified configuration; otherwise, .
+
+
+
+
+ Returns the date and time the specified file was last written to.
+
+ The file for which to obtain write date and time information.
+
+ A structure set to the date and time that
+ the specified file was last written to, or
+ if the specified file does not
+ exist.
+
+
+
+
+ Logs a message with the given priority.
+
+ The message priority at which the specified message is to be logged.
+ The message to be logged.
+
+ The actual logging is delegated to the underlying task.
+
+
+
+
+ Logs a message with the given priority.
+
+ The message priority at which the specified message is to be logged.
+ The message to log, containing zero or more format items.
+ An array containing zero or more objects to format.
+
+ The actual logging is delegated to the underlying task.
+
+
+
+
+ Gets a value indicating whether the output file(s) of this reference
+ should be copied locally.
+
+
+ if the output file(s) of this reference
+ should be copied locally; otherwise, .
+
+
+
+
+ Gets a value indicating whether this reference represents a system
+ assembly.
+
+
+ if this reference represents a system
+ assembly; otherwise, .
+
+
+
+
+ Gets the project in which the reference is defined.
+
+
+
+
+ Gets a value indicating whether the reference is managed for the
+ specified configuration.
+
+ The build configuration of the reference.
+
+ .
+
+
+
+
+ Gets the complete set of output files for the specified assembly
+ and adds them to collection.
+
+ The path of the assembly to get the output files for.
+ The set of output files to be updated.
+
+ The key of the case-insensitive is the
+ full path of the output file and the value is the path relative to
+ the output directory.
+
+
+
+
+ Gets the path of the reference, without taking the "copy local"
+ setting into consideration.
+
+ The solution configuration that is built.
+
+ The output path of the reference.
+
+
+
+
+ Gets the complete set of output files for the referenced project.
+
+ The solution configuration that is built.
+ The set of output files to be updated.
+
+ The key of the case-insensitive is the
+ full path of the output file and the value is the path relative to
+ the output directory.
+
+
+
+
+ Gets the complete set of assemblies that need to be referenced when
+ a project references this component.
+
+ The solution configuration that is built.
+
+ The complete set of assemblies that need to be referenced when a
+ project references this component.
+
+
+
+
+ Gets the timestamp of the reference.
+
+ The solution configuration that is built.
+
+ The timestamp of the reference.
+
+
+
+
+ Resolves an assembly reference.
+
+
+ The full path to the resolved assembly, or
+ if the assembly reference could not be resolved.
+
+
+
+
+ Searches for the given file in all paths in .
+
+ The folders to search.
+ The file to search for.
+
+ The path of the assembly if was found
+ in ; otherwise, .
+
+
+
+
+ Resolves an assembly reference in the framework assembly directory
+ of the target framework.
+
+ The file to search for.
+
+ The full path of the assembly file if the assembly could be located
+ in the framework assembly directory; otherwise, .
+
+
+
+
+ Resolves an assembly reference using a path relative to the project
+ directory.
+
+
+ The full path of the assembly, or if
+ is or an
+ empty .
+
+
+
+
+ Gets a value indicating whether the output file(s) of this reference
+ should be copied locally.
+
+
+ if the output file(s) of this reference
+ should be copied locally; otherwise, .
+
+
+
+
+ Gets a value indicating whether this reference represents a system
+ assembly.
+
+
+ if this reference represents a system
+ assembly; otherwise, .
+
+
+
+
+ Base class for all project classes.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the complete set of output files for the project.
+ configuration.
+
+ The solution configuration that is built.
+ The set of output files to be updated.
+
+ The key of the case-insensitive is the
+ full path of the output file and the value is the path relative to
+ the output directory.
+
+
+
+
+ Gets a value indicating whether building the project for the specified
+ build configuration results in managed output.
+
+ The build configuration.
+
+ if the project output for the given build
+ configuration is managed; otherwise, .
+
+
+
+
+ Expands the given macro.
+
+ The macro to expand.
+
+ The expanded macro or if the macro is not
+ supported.
+
+
+
+
+ Returns the Visual Studio product version of the specified project
+ XML fragment.
+
+ XML fragment representing the project file.
+
+ The Visual Studio product version of the specified project XML
+ file.
+
+
+ The product version could not be determined.
+ -or-
+ The product version is not supported.
+
+
+
+
+ Verifies whether the specified XML fragment represents a valid project
+ that is supported by this .
+
+ XML fragment representing the project file.
+
+ The XML fragment is not supported by this .
+ -or-
+ The XML fragment does not represent a valid project (for this ).
+
+
+
+
+ Prepares the project for being built.
+
+ The solution configuration that is built.
+
+ The default implementation will ensure that none of the output files
+ are marked read-only.
+
+
+
+
+ Copies the specified file if the destination file does not exist, or
+ the source file has been modified since it was previously copied.
+
+ The file to copy.
+ The destination file.
+ The in which context the operation will be performed.
+
+
+
+ Logs a message with the given priority.
+
+ The message priority at which the specified message is to be logged.
+ The message to be logged.
+
+ The actual logging is delegated to the underlying task.
+
+
+
+
+ Logs a message with the given priority.
+
+ The message priority at which the specified message is to be logged.
+ The message to log, containing zero or more format items.
+ An array containing zero or more objects to format.
+
+ The actual logging is delegated to the underlying task.
+
+
+
+
+ Gets the Visual Studio product version of the project.
+
+
+ The Visual Studio product version of the project.
+
+
+
+
+ Gets the name of the VS.NET project.
+
+
+
+
+ Gets the type of the project.
+
+
+ The type of the project.
+
+
+
+
+ Gets the path of the VS.NET project.
+
+
+
+
+ Gets the directory containing the VS.NET project.
+
+
+
+
+ Get the location of the project.
+
+
+
+
+ Get the directory in which intermediate build output that is not
+ specific to the build configuration will be stored.
+
+
+
+ For projects, this is defined
+ as <Project Directory<\obj.
+
+
+ For projects, this is defined
+ as %HOMEPATH%\VSWebCache\<Machine Name>\<Project Directory>\obj.
+
+
+
+
+
+ Gets or sets the unique identifier of the VS.NET project.
+
+
+
+
+ Gets a case-insensitive list of project configurations.
+
+
+ The key of the is the name of the
+ configuration and the value is a
+ instance.
+
+
+
+
+ Gets a list of project configurations that can be build.
+
+
+
+ Project configurations that are not in this list do not need to be
+ compiled (unless the project was not loaded through a solution file).
+
+
+ The key of the is the name of the
+ configuration and the value is a
+ instance.
+
+
+
+
+
+ Gets the extra set of output files for the project.
+
+
+ The extra set of output files for the project.
+
+
+ The key of the case-insensitive is the
+ full path of the output file and the value is the path relative to
+ the output directory.
+
+
+
+
+ Gets the set of projects that the project depends on.
+
+
+ The set of projects that the project depends on.
+
+
+
+
+ TODO: refactor this !!!
+
+
+
+
+ Gets a value indicating whether building the project for the specified
+ build configuration results in managed output.
+
+ The solution configuration that is built.
+
+ .
+
+
+
+
+ Prepares the project for being built.
+
+ The solution configuration that is built.
+
+ Ensures the configuration-level object directory exists and ensures
+ that none of the output files are marked read-only.
+
+
+
+
+ Returns a for launching the compiler
+ for this project.
+
+ The configuration to build.
+ The response file for the compiler.
+
+ A for launching the compiler for
+ this project.
+
+
+
+
+ Returns the project location from the specified project XML fragment.
+
+ XML fragment representing the project file.
+
+ The project location of the specified project XML file.
+
+
+ The project location could not be determined.
+ -or-
+ The project location is invalid.
+
+
+
+
+ Gets the absolute path of the type library for the project
+ output.
+
+ The configuration to build.
+
+ The absolute path of the type library for the project output.
+
+
+
+
+ Generates a type library for the specified assembly, registers it.
+
+ The project configuration that is built.
+ The path of the type library to generate.
+
+ The regasm tool is used to generate the type library.
+
+
+
+
+ Unregister a type library for the specified assembly, and the types
+ in that assembly.
+
+ The project configuration that is built.
+
+ The regasm tool is used to unregister the type library, and
+ remove the COM registration for types in the specified assembly.
+
+
+
+
+ Returns containing culture-specific resources.
+
+
+ A containing culture-specific resources.
+
+
+ The key of the is
+ and the value is an instance
+ for that culture.
+
+
+
+
+ Creates and initializes a instance.
+
+
+ An initialized instance.
+
+
+
+
+ Returns the Visual Studio product version of the specified project
+ XML fragment.
+
+ XML fragment representing the project to check.
+
+ The Visual Studio product version of the specified project XML
+ fragment.
+
+
+ The product version could not be determined.
+ -or-
+ The product version is not supported.
+
+
+
+
+ Returns the of the specified project
+ XML fragment.
+
+ XML fragment representing the project to check.
+
+ The of the specified project XML
+ fragment.
+
+
+ The project location could not be determined.
+ -or-
+ The project location is invalid.
+
+
+
+
+ Holds a case-insensitive list of source files.
+
+
+ The key of the is the full path of the
+ source file and the value is .
+
+
+
+
+ Gets the default file extension of sources for this project.
+
+
+ The default file extension of sources for this project.
+
+
+
+
+ Gets a value indicating if this is a web project.
+
+
+ if this is a web project; otherwise,
+ .
+
+
+ If the url of a web project has been mapped to a local path
+ (using the <webmap> element), then this property will return
+ for a
+ project.
+
+
+
+
+ Gets the name of the VS.NET project.
+
+
+
+
+ Gets the path of the VS.NET project.
+
+
+
+
+ Gets the directory containing the VS.NET project.
+
+
+
+
+ Get the location of the project.
+
+
+
+
+ Gets or sets the unique identifier of the VS.NET project.
+
+
+
+
+ Groups a set of instances for a specific
+ culture.
+
+
+
+
+ Initializes a new instance
+ for the specified culture.
+
+ A .
+
+
+
+ Gets the intermediate build directory in which the satellite
+ assembly is built.
+
+ The project build configuration.
+
+ The intermediate build directory in which the satellite assembly
+ is built.
+
+
+
+
+ Gets a representing the path to the
+ intermediate file location of the satellite assembly.
+
+ The project build configuration.
+ The project settings.
+
+ A representing the path to the
+ intermediate file location of the satellite assembly.
+
+
+
+
+ Gets path of the satellite assembly, relative to the output
+ directory.
+
+ The project settings.
+
+ The path of the satellite assembly, relative to the output
+ directory.
+
+
+
+
+ Gets the of the
+ .
+
+
+
+
+ Gets the set of localized resources.
+
+
+
+
+ Verifies whether the specified XML fragment represents a valid project
+ that is supported by this .
+
+ XML fragment representing the project file.
+
+ The XML fragment is not supported by this .
+ -or-
+ The XML fragment does not represent a valid project (for this ).
+
+
+
+
+ Returns the Visual Studio product version of the specified project
+ XML fragment.
+
+ The document element of the project.
+
+ The Visual Studio product version of the specified project XML
+ fragment.
+
+
+ The product version could not be determined.
+ -or-
+ The product version is not supported.
+
+
+
+
+ Returns a for launching the compiler
+ for this project.
+
+ The configuration to build.
+ The response file for the compiler.
+
+ A for launching the compiler for
+ this project.
+
+
+
+
+ Returns the project location from the specified project XML fragment.
+
+ XML fragment representing the project file.
+
+ The project location of the specified project XML file.
+
+
+ The project location could not be determined.
+ -or-
+ The project location is invalid.
+
+
+
+
+ Returns a value indicating whether the project represented by the
+ specified XML fragment is supported by .
+
+ XML fragment representing the project to check.
+
+ if supports
+ the specified project; otherwise, .
+
+
+
+ A project is identified as as C# project, if the XML fragment at
+ least has the following information:
+
+
+
+
+ ...
+
+
+ ]]>
+
+
+
+
+
+ Gets the type of the project.
+
+
+ The type of the project.
+
+
+
+
+ Gets the default file extension of sources for this project.
+
+
+ For C# projects, the default file extension is ".cs".
+
+
+
+
+ Initializes a new instance of the
+ class with the given .
+
+ The project of the configuration.
+
+
+
+ Expands the given macro.
+
+ The macro to expand.
+
+ The expanded macro.
+
+
+ The macro is not supported.
+ -or-
+ The macro is not implemented.
+ -or-
+ The macro cannot be expanded.
+
+
+ Expansion of a given macro is not yet implemented.
+
+
+
+
+ Is called each time a regular expression match is found during a
+ operation.
+
+ The resulting from a single regular expression match during a .
+
+ The expanded .
+
+
+
+
+ Gets the project.
+
+
+
+
+ Gets the name of the configuration.
+
+
+
+
+ Get the directory in which intermediate build output will be stored
+ for this configuration.
+
+
+
+ This is a directory relative to the project directory named
+ obj\<configuration name>.
+
+
+ .resx and .licx files will only be recompiled if the
+ compiled resource files in the are not
+ uptodate.
+
+
+
+
+
+ Gets the output directory.
+
+
+
+
+ Gets the path for the output file.
+
+
+
+
+ Gets the path in which the output file will be created before its
+ copied to the actual output path.
+
+
+
+
+ Get the path of the output directory relative to the project
+ directory.
+
+
+
+
+ Gets the platform that the configuration targets.
+
+
+ The platform targeted by the configuration.
+
+
+
+
+ Gets the set of output files that is specific to the project
+ configuration.
+
+
+ The set of output files that is specific to the project
+ configuration.
+
+
+ The key of the case-insensitive is the
+ full path of the output file and the value is the path relative to
+ the output directory.
+
+
+
+
+ Gets the platform that the configuration targets.
+
+
+ The platform targeted by the configuration.
+
+
+
+
+ Gets the path in which the output file will be created before its
+ copied to the actual output path.
+
+
+
+
+ Gets a value indicating whether to register the project output for
+ use with COM components.
+
+
+ if the project output should be registered
+ for use with COM components; otherwise, .
+
+
+
+
+ Supports grouping of individual projects, and treating them as a solution.
+
+
+
+
+ Verifies whether the specified XML fragment represents a valid project
+ that is supported by this .
+
+ XML fragment representing the project file.
+
+ The XML fragment is not supported by this .
+ -or-
+ The XML fragment does not represent a valid project (for this ).
+
+
+
+
+ Returns the Visual Studio product version of the specified project
+ XML fragment.
+
+ The document element of the project.
+
+ The Visual Studio product version of the specified project XML
+ fragment.
+
+
+ The product version could not be determined.
+ -or-
+ The product version is not supported.
+
+
+
+
+ Prepares the project for being built.
+
+ The solution configuration that is built.
+
+ Ensures the configuration-level object directory exists and ensures
+ that none of the output files are marked read-only.
+
+
+
+
+ Returns a for launching the compiler
+ for this project.
+
+ The configuration to build.
+ The response file for the compiler.
+
+ A for launching the compiler for
+ this project.
+
+
+
+
+ Returns the project location from the specified project XML fragment.
+
+ XML fragment representing the project file.
+
+ The project location of the specified project XML file.
+
+
+ The project location could not be determined.
+ -or-
+ The project location is invalid.
+
+
+
+
+ Returns a value indicating whether the project represented by the
+ specified XML fragment is supported by .
+
+ XML fragment representing the project to check.
+
+ if supports
+ the specified project; otherwise, .
+
+
+
+ A project is identified as as J# project, if the XML fragment at
+ least has the following information:
+
+
+
+
+ ...
+
+
+ ]]>
+
+
+
+
+
+ Gets the type of the project.
+
+
+ The type of the project.
+
+
+
+
+ Gets the default file extension of sources for this project.
+
+
+ For J# projects, the default file extension is ".jsl".
+
+
+
+
+ Resolves an assembly reference.
+
+
+ The full path to the resolved assembly, or
+ if the assembly reference could not be resolved.
+
+
+
+ Visual Studio .NET uses the following search mechanism :
+
+
+
+
+ The project directory.
+
+
+
+
+ The directories specified in the "ReferencePath" property,
+ which is stored in the .USER file.
+
+
+
+
+ The .NET Framework directory (see KB306149)
+
+
+
+
+
+ The directories specified under the following registry
+ keys:
+
+
+
+
+ HKLM\SOFTWARE\Microsoft\.NETFramework\AssemblyFolders
+
+
+
+
+ HKCU\SOFTWARE\Microsoft\.NETFramework\AssemblyFolders
+
+
+
+
+ HKLM\SOFTWARE\Microsoft\VisualStudio\<major version>.<minor version>\AssemblyFolders
+
+
+
+
+ HKCU\SOFTWARE\Microsoft\VisualStudio\<major version>.<minor version>\AssemblyFolders
+
+
+
+
+ Future versions of Visual Studio .NET will also check
+ in:
+
+
+
+
+ HKLM\SOFTWARE\Microsoft\.NETFramework\AssemblyFoldersEx
+
+
+
+
+ HKCU\SOFTWARE\Microsoft\.NETFramework\AssemblyFoldersEx
+
+
+
+
+
+
+
+ The HintPath.
+
+
+
+
+
+
+
+ Gets the name of the referenced assembly.
+
+
+ The name of the referenced assembly, or if
+ the name could not be determined.
+
+
+
+
+ Gets the Visual Studio .NET AssemblyFolders registry key matching
+ the current target framework.
+
+
+ The Visual Studio .NET AssemblyFolders registry key matching the
+ current target framework.
+
+ The current target framework is not supported.
+
+ We use the target framework instead of the product version of the
+ containing project file to determine what registry key to scan, as
+ we don't want to use assemblies meant for uplevel framework versions.
+
+
+
+
+ Indentifies the different output types of a managed project.
+
+
+ Visual Studio .NET does not support modules.
+
+
+
+
+ A class library.
+
+
+
+
+ A console application.
+
+
+
+
+ A Windows program.
+
+
+
+
+ Gets the output path of the reference, without taking the "copy local"
+ setting into consideration.
+
+ The solution configuration that is built.
+
+ The output path of the reference.
+
+
+
+
+ Gets the complete set of output files for the referenced project.
+
+ The solution configuration that is built.
+ The set of output files to be updated.
+
+ The complete set of output files for the referenced project.
+
+
+ The key of the case-insensitive is the
+ full path of the output file and the value is the path relative to
+ the output directory.
+
+
+
+
+ Gets the complete set of assemblies that need to be referenced when
+ a project references this project.
+
+ The solution configuration that is built.
+
+ The complete set of assemblies that need to be referenced when a
+ project references this project.
+
+
+
+ Apparently, there's some hack in VB.NET that allows a type to be used
+ that derives from a type in an assembly that is not referenced by the
+ project.
+
+
+ When building from the command line (using vbc), the following error
+ is reported "error BC30007: Reference required to assembly 'X'
+ containing the base class 'X'. Add one to your project".
+
+
+ Somehow VB.NET can workaround this issue, without actually adding a
+ reference to that assembly. I verified this with both VS.NET 2003 and
+ VS.NET 2005.
+
+
+ For now, we have no other option than to return all assembly
+ references of the referenced project if the parent is a VB.NET
+ project.
+
+
+
+
+
+ Gets the timestamp of the reference.
+
+ The solution configuration that is built.
+
+ The timestamp of the reference.
+
+
+
+
+ Gets a value indicating whether the output file(s) of this reference
+ should be copied locally.
+
+
+ if the output file(s) of this reference
+ should be copied locally; otherwise, .
+
+
+
+
+ Gets a value indicating whether this reference represents a system
+ assembly.
+
+
+ as a project by itself can never be a
+ system assembly.
+
+
+
+
+ Gets a value indicating whether the reference is managed for the
+ specified configuration.
+
+ The solution configuration that is built.
+
+ .
+
+
+
+
+ Gets the path of the reference, without taking the "copy local"
+ setting into consideration.
+
+ The solution configuration that is built.
+
+ The output path of the reference.
+
+
+
+
+ Gets the complete set of output files for the referenced project.
+
+ The solution configuration that is built.
+ The set of output files to be updated.
+
+ The key of the case-insensitive is the
+ full path of the output file and the value is the path relative to
+ the output directory.
+
+
+
+
+ Gets the complete set of assemblies that need to be referenced when
+ a project references this component.
+
+ The solution configuration that is built.
+
+ The complete set of assemblies that need to be referenced when a
+ project references this component.
+
+
+
+
+ Gets the timestamp of the reference.
+
+ The solution configuration that is built.
+
+ The timestamp of the reference.
+
+
+
+
+ Removes wrapper assembly from build directory, if wrapper assembly
+ no longer exists in output directory or is not in sync with build
+ directory, to force rebuild.
+
+ The project configuration.
+
+
+
+ Gets a value indicating whether the output file(s) of this reference
+ should be copied locally.
+
+
+ if the reference wraps a Primary Interop
+ Assembly; otherwise, .
+
+
+
+
+ Gets a value indicating whether this reference represents a system
+ assembly.
+
+
+ as none of the system assemblies are wrappers
+ or Primary Interop Assemblies anyway.
+
+
+
+
+ Gets the name of the tool that should be used to create the
+ .
+
+
+ The name of the tool that should be used to create the
+ .
+
+
+
+
+ Gets the path of the wrapper assembly.
+
+
+ The path of the wrapper assembly.
+
+
+ The wrapper assembly is stored in the object directory of the
+ project.
+
+
+
+
+ Gets a value indicating whether the wrapper assembly has already been
+ created.
+
+
+
+
+ Gets the path of the Primary Interop Assembly.
+
+
+ The path of the Primary Interop Assembly, or
+ if not available.
+
+
+
+
+ Gets the hex version of the type library as defined in the definition
+ of the reference.
+
+
+ The hex version of the type library.
+
+
+
+
+ Gets the GUID of the type library as defined in the definition
+ of the reference.
+
+
+ The GUID of the type library.
+
+
+
+
+ Gets the locale of the type library in hex notation.
+
+
+ The locale of the type library.
+
+
+
+
+ Gets the name of the type library.
+
+
+ The name of the type library.
+
+
+
+
+ Gets the name of the referenced assembly.
+
+
+ The name of the referenced assembly, or if
+ the name could not be determined.
+
+
+
+
+ Gets the name of the tool that should be used to create the
+ .
+
+
+ The name of the tool that should be used to create the
+ .
+
+
+
+
+ Gets the path of the wrapper assembly.
+
+
+ The path of the wrapper assembly.
+
+
+ The wrapper assembly is stored in the object directory of the
+ project.
+
+
+
+
+ Gets the path of the Primary Interop Assembly.
+
+
+ The path of the Primary Interop Assembly, or
+ if not available.
+
+
+
+
+ Gets the hex version of the type library as defined in the definition
+ of the reference.
+
+
+ The hex version of the type library.
+
+
+
+ The definition of the reference does not contain a "VersionMajor" attribute.
+
+ -or
+
+ The definition of the reference does not contain a "VersionMinor" attribute.
+
+
+
+
+
+ Gets the GUID of the type library as defined in the definition
+ of the reference.
+
+
+ The GUID of the type library.
+
+
+
+
+ Gets the locale of the type library in hex notation.
+
+
+ The locale of the type library.
+
+
+
+
+ Specifies the type of the project.
+
+
+
+
+ A Visual Basic.NET project.
+
+
+
+
+ A Visual C# project.
+
+
+
+
+ A Visual C++ project.
+
+
+
+
+ A Visual J# project.
+
+
+
+
+ Specifies the result of the build.
+
+
+
+
+ The build failed.
+
+
+
+
+ The build succeeded.
+
+
+
+
+ The build succeeded and the output was updated.
+
+
+
+
+ Visual Studio.NET 2002
+
+
+
+
+ Visual Studio.NET 2003
+
+
+
+
+ Indentifies the physical location of a managed project.
+
+
+
+
+ A local project.
+
+
+
+
+ A web project.
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Determines whether a with the specified
+ GUID is in the collection, using a case-insensitive lookup.
+
+ The GUID to locate in the collection.
+
+ if a with GUID
+ is found in the collection; otherwise,
+ .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Remove items with the specified guid from the collection.
+
+ The guid of the project to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Gets the with the specified GUID.
+
+ The GUID of the to get.
+
+ Performs a case-insensitive lookup.
+
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Factory class for VS.NET projects.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Holds a case-insensitive list of cached projects.
+
+
+ The key of the is the path of the project
+ file (for web projects this can be a URL) and the value is a
+ instance.
+
+
+
+
+ Holds a case-insensitive list of cached project GUIDs.
+
+
+ The key of the is the path of the project
+ file (for web projects this can be a URL) and the value is the GUID
+ of the project.
+
+
+
+
+ Holds a case-insensitive list of cached project GUIDs.
+
+
+ The key of the is the path of the project
+ file (for web projects this can be a URL) and the value is the Xml
+ of the project.
+
+
+
+
+ Determines the output type of the project from its XML definition.
+
+ The XML definition of the project settings.
+
+ The output type of the project.
+
+
+
+ The output type of the project is not set in the specified XML
+ definition.
+
+ -or-
+
+ The output type of the project is not supported.
+
+
+
+
+
+ Gets the project GUID from the given
+ holding a <VisualStudioProject> node.
+
+ The path of the project file.
+ The <VisualStudioProject> node from which the project GUID should be retrieved.
+
+ The project GUID from specified <VisualStudioProject> node.
+
+
+
+
+ Gets the .ico file to use as application icon.
+
+
+ The .ico file to use as application icon, or
+ if no application icon should be used.
+
+
+
+
+ Gets the key file to use to sign ActiveX/COM wrappers.
+
+
+ The path of the key file to use to sign ActiveX/COM wrappers,
+ relative to the project root directory, or
+ if the wrapper assembly should not be signed using a key file.
+
+
+
+
+ Gets the key name to use to sign ActiveX/COM wrappers.
+
+
+ The name of the key container to use to sign ActiveX/COM wrappers,
+ or if the wrapper assembly should not be
+ signed using a key container.
+
+
+
+
+ Gets the output type of this project.
+
+
+
+
+ Designates when the command line should
+ be run. Possible values are "OnBuildSuccess", "Always" or
+ "OnOutputUpdated".
+
+
+
+
+ Contains commands to be run before a build takes place.
+
+
+ Valid commands are those in a .bat file. For more info see MSDN.
+
+
+
+
+ Contains commands to be ran after a build has taken place.
+
+
+ Valid commands are those in a .bat file. For more info see MSDN.
+
+
+
+
+ Obtains a lifetime service object to control the lifetime policy for
+ this instance.
+
+
+ An object of type used to control the lifetime
+ policy for this instance. This is the current lifetime service object
+ for this instance if one exists; otherwise, a new lifetime service
+ object initialized with a lease that will never time out.
+
+
+
+
+ Gets the file name of the assembly with the given assembly name.
+
+ The assembly name of the assembly of which the file name should be returned.
+
+ The file name of the assembly with the given assembly name.
+
+
+
+
+ Compiles the resource file.
+
+ The solution configuration that is built.
+
+ A representing the compiled resource file.
+
+
+
+
+ Returns a representing the compiled resource
+ file.
+
+ The solution configuration that is built.
+
+ A representing the compiled resource file.
+
+
+ Calling this method does not force compilation of the resource file.
+
+
+
+
+ Gets a representing the physical location
+ of the resource file.
+
+
+
+
+ Gets a representing the logical location
+ of the resource file in the project.
+
+
+ When the resource file is not linked, this matches the
+ .
+
+
+
+
+ Gets a value indicating whether the resource is in fact a ResX file.
+
+
+ if the resource is a ResX file; otherwise,
+ .
+
+
+
+
+ Factory class for VS.NET solutions.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Verifies whether the specified XML fragment represents a valid project
+ that is supported by this .
+
+ XML fragment representing the project file.
+
+ The XML fragment is not supported by this .
+ -or-
+ The XML fragment does not represent a valid project (for this ).
+
+
+
+
+ Returns the Visual Studio product version of the specified project
+ XML fragment.
+
+ The document element of the project.
+
+ The Visual Studio product version of the specified project XML
+ fragment.
+
+
+ The product version could not be determined.
+ -or-
+ The product version is not supported.
+
+
+ This method is called from the ctor, and
+ at that time we're not sure the XML that is passed in, is indeed a
+ valid Visual Basic project.
+
+
+
+
+ Returns the project location from the specified project XML fragment.
+
+ XML fragment representing the project file.
+
+ The project location of the specified project XML file.
+
+
+ The project location could not be determined.
+ -or-
+ The project location is invalid.
+
+
+
+
+ Returns a for launching the compiler
+ for this project.
+
+ The configuration to build.
+ The response file for the compiler.
+
+ A for launching the compiler for
+ this project.
+
+
+
+
+ Returns a value indicating whether the project represented by the
+ specified XML fragment is supported by .
+
+ XML fragment representing the project to check.
+
+ if supports the
+ specified project; otherwise, .
+
+
+
+ A project is identified as as Visual Basic project, if the XML
+ fragment at least has the following information:
+
+
+
+
+ ...
+
+
+ ]]>
+
+
+
+
+
+ Gets the type of the project.
+
+
+ The type of the project.
+
+
+
+
+ Gets the default file extension of sources for this project.
+
+
+ For VB projects, the default file extension is ".vb".
+
+
+
+
+ A mapping from properties in the .vcproj file to command line arguments.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Gets the argument string corresponding with a configuration property
+ named with value .
+ An ignore mask can be used to eliminate some arguments from the search.
+
+ The name of the configuration property.
+ The value of the configuration property.
+ Specify any groups that needs to be ignored.
+
+ The argument string corresponding with a configuration property
+ named with value ,
+ or if no corresponding argument exists.
+
+
+
+
+ Creates a mapping between configuration properties for the Visual
+ C++ compiler and corresponding command-line arguments.
+
+
+ A mapping between configuration properties for the Visual C++
+ compiler and corresponding command-line arguments.
+
+
+
+ The following configuration properties are processed by
+ :
+
+
+
+ Category
+ Property
+
+
+ General
+ Addtional Include Directories (/I[path])
+
+
+ General
+ Resolve #using References (/AI[path])
+
+
+ Preprocessor
+ Preprocessor Definitions (/D[macro])
+
+
+ Code Generation
+ Enable C++ Exceptions (/EHsc)
+
+
+ Precompiled Headers
+ Create/Use Precompiled Header
+
+
+ Precompiled Headers
+ Create/Use PCH Through File
+
+
+ Precompiled Headers
+ Precompiled Header File
+
+
+ Output Files
+ Assembler Output
+
+
+ Output Files
+ ASM List Location
+
+
+ Browse Information
+ Enable Browse Information
+
+
+ Browse Information
+ Browse File
+
+
+ Advanced
+ Force Includes (/FI[name])
+
+
+ Advanced
+ Force #using (/FU[name])
+
+
+ Advanced
+ Undefine Preprocessor Definitions (/U[macro])
+
+
+
+
+
+
+ Creates a mapping between configuration properties for the Visual
+ C++ linker and corresponding command-line arguments.
+
+
+ A mapping between configuration properties for the Visual C++
+ linker and corresponding command-line arguments.
+
+
+
+ The following configuration properties are processed by
+ :
+
+
+
+ Category
+ Property
+
+
+ General
+ Output File (/OUT:[file])
+
+
+ General
+ Additional Library Directories (/LIBPATH:[dir])
+
+
+ Input
+ Additional Dependencies
+
+
+ Input
+ Add Module to Assembly (/ASSEMBLYMODULE:file)
+
+
+ Input
+ Embed Managed Resource File (/ASSEMBLYRESOURCE:file)
+
+
+ Debugging
+ Generate Debug Info (/DEBUG)
+
+
+ Debugging
+ Generate Program Database File (/PDB:name)
+
+
+ Debugging
+ Generate Map File (/MAP)
+
+
+ Debugging
+ Map File Name (/MAP:[filename])
+
+
+ System
+ Heap Reserve Size (/HEAP:reserve)
+
+
+ System
+ Heap Commit Size (/HEAP:reserve, commit)
+
+
+ System
+ Stack Reserve Size (/STACK:reserve)
+
+
+ System
+ Stack Commit Size (/STACK:reserve, commit)
+
+
+
+ The following configuration properties are ignored:
+
+
+
+ Category
+ Property
+
+
+ General
+ Show Progress (/VERBOSE, /VERBOSE:LIB)
+
+
+ General
+ Suppress Startup Banner (/NOLOGO)
+
+
+
+ Support for the following configuration properties still needs to
+ be implemented:
+
+
+
+ Category
+ Property
+
+
+ General
+ Ignore Import Library
+
+
+ General
+ Register Output
+
+
+ Input
+ Delay Loaded DLLs (/DELAYLOAD:[dll_name])
+
+
+ Embedded IDL
+ MIDL Commands (/MIDL:[file])
+
+
+
+
+
+
+ Gets the name of the command-line argument.
+
+
+ The name of the command-line argument.
+
+
+
+
+ Represents a command-line arguments of which the trailing backslashes
+ in the value should be duplicated.
+
+
+
+
+ Represents a command-line argument of which the value should be
+ quoted, and of which trailing backslahes should be duplicated.
+
+
+
+
+ Gets the string that the configuration setting should match in
+ order for the command line argument to be set.
+
+
+
+
+ Allow us to assign an argument to a specific group.
+
+
+
+
+ The argument is not assigned to any group.
+
+
+
+
+ The argument is ignored when the optimization level is set to
+ Minimum Size (1) or Maximum Size (2).
+
+
+
+
+ Resolves an assembly reference.
+
+
+ The full path to the resolved assembly, or
+ if the assembly reference could not be resolved.
+
+
+
+
+ Is called each time a regular expression match is found during a
+ operation.
+
+ The resulting from a single regular expression match during a .
+
+ The expanded .
+
+ The macro is not supported.
+ Expansion of a given macro is not yet implemented.
+
+
+
+ Gets the name of the referenced assembly.
+
+
+ The name of the referenced assembly, or if
+ the name could not be determined.
+
+
+
+
+ A single build configuration for a Visual C++ project or for a specific
+ file in the project.
+
+
+
+
+ Expands the given macro.
+
+ The macro to expand.
+
+ The expanded macro.
+
+
+ The macro is not supported.
+ -or-
+ The macro is not implemented.
+ -or-
+ The macro cannot be expanded.
+
+
+
+
+ Gets the value of a given setting for a specified tool.
+
+ The name of the tool.
+ The name of the setting.
+
+ The value of a setting for the specified tool, or
+ if the setting is not defined for the specified tool.
+
+
+ An empty setting value, which is used as a means to override the
+ project default, will be returned as a empty .
+
+
+
+
+ Gets the value of a given setting for a specified tool.
+
+ The name of the tool.
+ The name of the setting.
+ The value to return if setting is not defined.
+
+ The value of a setting for the specified tool, or
+ if the setting is not defined for
+ the specified tool.
+
+
+ An empty setting value, which is used as a means to override the
+ project default, will be returned as a empty .
+
+
+
+
+ Gets the intermediate directory, specified relative to project
+ directory.
+
+
+ The intermediate directory, specified relative to project directory.
+
+
+
+
+ Gets a comma-separated list of directories to scan for assembly
+ references.
+
+
+ A comma-separated list of directories to scan for assembly
+ references, or if no additional directories
+ should scanned.
+
+
+
+
+ Gets the name of the configuration, including the platform it
+ targets.
+
+
+ Tthe name of the configuration, including the platform it targets.
+
+
+
+
+ Gets the output directory.
+
+
+
+
+ Gets the path in which the output file will be created before its
+ copied to the actual output path.
+
+
+ For Visual C++ projects, the output file will be immediately
+ created in the output path.
+
+
+
+
+ Gets the name of the configuration.
+
+
+ The name of the configuration.
+
+
+
+
+ Gets the platform that the configuration targets.
+
+
+ The platform targeted by the configuration.
+
+
+
+
+ Represents the configuration of a file.
+
+
+
+
+ Expands the given macro.
+
+ The macro to expand.
+
+ The expanded macro.
+
+
+ The macro is not supported.
+ -or-
+ The macro is not implemented.
+ -or-
+ The macro cannot be expanded.
+
+
+
+
+ Gets the value of a given setting for a specified tool.
+
+ The name of the tool.
+ The name of the setting.
+ The value to return if setting is not defined in both the file and project configuration.
+
+ The value of a setting for the specified tool, or
+ if the setting is not defined in
+ both the file and project configuration.
+
+
+
+ If the setting is not defined in the file configuration, then
+ the project level setting will be used.
+
+
+ An empty setting value, which is used as a means to override the
+ project default, will be returned as a empty .
+
+
+
+
+
+ Gets a value indication whether the file should be excluded from
+ the build for this configuration.
+
+
+ if the file should be excluded from the
+ build for this configuration; otherwise, .
+
+
+
+
+ Gets the relative path of the file.
+
+
+ The path of the file relative to the project directory.
+
+
+
+
+ Get the path of the output directory relative to the project
+ directory.
+
+
+
+
+ Gets the intermediate directory, specified relative to project
+ directory.
+
+
+ The intermediate directory, specified relative to project directory.
+
+
+
+
+ Gets the path for the output file.
+
+
+ The path for the output file, or if there's
+ no output file for this configuration.
+
+
+
+
+ Gets a comma-separated list of directories to scan for assembly
+ references.
+
+
+ A comma-separated list of directories to scan for assembly
+ references, or if no additional directories
+ should scanned.
+
+
+
+
+ Visual C++ project.
+
+
+
+
+ Gets a value indicating whether building the project for the specified
+ build configuration results in managed output.
+
+ The solution configuration that is built.
+
+ if the project output for the specified build
+ configuration is either a Dynamic Library (dll) or an Application
+ (exe), and Managed Extensions are enabled; otherwise,
+ .
+
+
+
+
+ Verifies whether the specified XML fragment represents a valid project
+ that is supported by this .
+
+ XML fragment representing the project file.
+
+ The XML fragment is not supported by this .
+ -or-
+ The XML fragment does not represent a valid project (for this ).
+
+
+
+
+ Returns the Visual Studio product version of the specified project
+ XML fragment.
+
+ The document element of the project.
+
+ The Visual Studio product version of the specified project XML
+ fragment.
+
+
+ The product version could not be determined.
+ -or-
+ The product version is not supported.
+
+
+
+
+ Expands the given macro.
+
+ The macro to expand.
+
+ The expanded macro or if the macro is not
+ supported.
+
+
+
+
+ Build resource files for the given configuration.
+
+ The resource files to build.
+ The project configuration.
+ The build configuration.
+
+ TODO: refactor this as we should always get only one element in the
+ list. Each res file should be built
+ with its own file configuration.
+
+
+
+
+ Build Interface Definition Language files for the given
+ configuration.
+
+ The IDL files to build.
+ The project configuration.
+ The build configuration.
+
+ TODO: refactor this as we should always get only one element in the
+ list. Each IDL file should be built
+ with its own file configuration.
+
+
+
+
+ Merges the specified tool setting of
+ with .
+
+
+ The merge is suppressed when the flag $(noinherit) is defined in
+ .
+
+
+
+
+ Gets the absolute path to the object file or directory.
+
+ The build configuration
+
+ The absolute path to the object file or directory, or
+
+
+ We use an absolute path for the object file, otherwise
+ <cl> assumes a location relative to the output
+ directory - not the project directory.
+
+
+
+
+ Returns a value indicating whether the project represented by the
+ specified XML fragment is supported by .
+
+ XML fragment representing the project to check.
+
+ if supports the
+ specified project; otherwise, .
+
+
+
+ A project is identified as as Visual C++ project, if the XML
+ fragment at least has the following information:
+
+
+
+
+ ]]>
+
+
+
+
+
+ Removes leading and trailing quotes from the specified path.
+
+ The path to clean.
+
+
+
+ Returns the Visual Studio product version of the specified project
+ XML fragment.
+
+ XML fragment representing the project to check.
+
+ The Visual Studio product version of the specified project XML
+ fragment.
+
+
+ The product version could not be determined.
+ -or-
+ The product version is not supported.
+
+
+
+
+ Holds the files included in the project.
+
+
+
+ For project files with no specific file configuration, the relative
+ path is added to the list.
+
+
+ For project files that have a specific file configuration, a
+ containing the
+ instance representing the file configurations is added.
+
+
+
+
+
+ Gets the name of the Visual C++ project.
+
+
+
+
+ Gets the type of the project.
+
+
+ The type of the project.
+
+
+
+
+ Gets the path of the Visual C++ project.
+
+
+
+
+ Gets the directory containing the VS.NET project.
+
+
+
+
+ Get the location of the project.
+
+
+ .
+
+
+ For now, we only support local Visual C++ projects.
+
+
+
+
+ Get the directory in which intermediate build output that is not
+ specific to the build configuration will be stored.
+
+
+ This is a directory relative to the project directory,
+ named temp\.
+
+
+
+
+ Gets or sets the unique identifier of the Visual C++ project.
+
+
+
+
+ Represents a Visual C++ project configuration.
+
+
+
+
+ Expands the given macro.
+
+ The macro to expand.
+
+ The expanded macro.
+
+
+ The macro is not supported.
+ -or-
+ The macro is not implemented.
+ -or-
+ The macro cannot be expanded.
+
+
+ Expansion of a given macro is not yet implemented.
+
+
+
+
+ Gets the value of the specified attribute from the specified node.
+
+ The node of which the attribute value should be retrieved.
+ The attribute of which the value should be returned.
+
+ The value of the attribute with the specified name or
+ if the attribute does not exist or has no value.
+
+
+
+
+ Holds the output path for this build configuration.
+
+
+ Lazy initialized by .
+
+
+
+
+ Holds list of files to link in the order in which they are defined
+ in the project file.
+
+
+
+
+ Holds the C++ sources for each build configuration.
+
+
+ The key of the hashtable is a build configuration, and the
+ value is an ArrayList holding the C++ source files for that
+ build configuration.
+
+
+
+
+ Holds the resources for each build configuration.
+
+
+ The key of the hashtable is a build configuration, and the
+ value is an ArrayList holding the resources files for that
+ build configuration.
+
+
+
+
+ Holds the IDL files for each build configuration.
+
+
+ The key of the hashtable is a build configuration, and the
+ value is an ArrayList holding the IDL files for that build
+ configuration.
+
+
+
+
+ Tells the compiler which character set to use.
+
+
+
+
+ Gets a value indicating whether Managed Extensions for C++ are
+ enabled.
+
+
+
+
+ Gets a value indicating how MFC is used by the configuration.
+
+
+
+
+ Gets a value indicating how ATL is used by the configuration.
+
+
+
+
+ Gets the list of files to link in the order in which they are
+ defined in the project file.
+
+
+
+
+ Holds the C++ sources for each build configuration.
+
+
+ The key of the hashtable is a build configuration, and the
+ value is an ArrayList holding the C++ source files for that
+ build configuration.
+
+
+
+
+ Gets the resources for each build configuration.
+
+
+ The key of the hashtable is a build configuration, and the
+ value is an ArrayList holding the resources files for that
+ build configuration.
+
+
+
+
+ Get the IDL files for each build configuration.
+
+
+ The key of the hashtable is a build configuration, and the
+ value is an ArrayList holding the IDL files for that build
+ configuration.
+
+
+
+
+ Gets the target path for usage in macro expansion.
+
+
+ The target path, or a zero-length string if there's no output file
+ for this configuration.
+
+
+
+
+ Get the directory in which intermediate build output will be stored
+ for this configuration.
+
+
+
+ This is a directory relative to the project directory named
+ obj\<configuration name>.
+
+
+ .resx and .licx files will only be recompiled if the
+ compiled resource files in the are not
+ uptodate.
+
+
+
+
+
+ Get the path of the output directory relative to the project
+ directory.
+
+
+
+
+ Gets the intermediate directory, specified relative to project
+ directory.
+
+
+ The intermediate directory, specified relative to project directory.
+
+
+
+
+ Gets the absolute path for the output file.
+
+
+ The absolute path for the output file, or
+ if there's no output file for this configuration.
+
+
+
+
+ Gets a comma-separated list of directories to scan for assembly
+ references.
+
+
+ A comma-separated list of directories to scan for assembly
+ references, or if no additional directories
+ should scanned.
+
+
+
+
+ The type of output for a given configuration.
+
+
+
+
+ A Makefile.
+
+
+
+
+ Application (.exe).
+
+
+
+
+ Dynamic Library (.dll).
+
+
+
+
+ Static Library (.lib).
+
+
+
+
+ Utility.
+
+
+
+
+ Gets a instance representing the
+ absolute path to the import library to generate.
+
+
+ A representing the absolute path to the
+ import library to generate, or if no
+ import library must be generated.
+
+
+
+
+ Gets a value indicating whether the reference is managed for the
+ specified configuration.
+
+ The build configuration of the reference.
+
+ if the reference is managed for the
+ specified configuration; otherwise, .
+
+
+
+
+ Gets the name of the referenced assembly.
+
+
+ The name of the referenced assembly.
+
+
+
+
+ Gets the name of the tool that should be used to create the
+ .
+
+
+ The name of the tool that should be used to create the
+ .
+
+
+
+
+ Gets the path of the wrapper assembly.
+
+
+ The path of the wrapper assembly.
+
+
+ The wrapper assembly is stored in the object directory of the
+ project.
+
+
+
+
+ Gets the path of the Primary Interop Assembly.
+
+
+ The path of the Primary Interop Assembly, or
+ if not available.
+
+
+
+
+ Gets the hex version of the type library as defined in the definition
+ of the reference.
+
+
+ The hex version of the type library.
+
+ The definition of the reference does not contain a "ControlVersion" attribute.
+
+
+
+ Gets the GUID of the type library as defined in the definition
+ of the reference.
+
+
+ The GUID of the type library.
+
+
+
+
+ Gets the locale of the type library in hex notation.
+
+
+ The locale of the type library.
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.VisualCppTasks.dll b/build-support/tools/nant/bin/NAnt.VisualCppTasks.dll
new file mode 100644
index 00000000..4ca00adc
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.VisualCppTasks.dll differ
diff --git a/build-support/tools/nant/bin/NAnt.VisualCppTasks.xml b/build-support/tools/nant/bin/NAnt.VisualCppTasks.xml
new file mode 100644
index 00000000..d27da40f
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.VisualCppTasks.xml
@@ -0,0 +1,1205 @@
+
+
+
+ NAnt.VisualCppTasks
+
+
+
+
+ Compiles C/C++ programs using cl.exe, Microsoft's C/C++ compiler.
+
+
+ This task is intended for version 13.00.9466 of cl.exe.
+
+
+ Compiles helloworld.cpp for the Common Language Runtime.
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Compiles the sources.
+
+
+
+
+ Determines if the sources need to be compiled.
+
+
+
+
+ Determines whether the precompiled header file is up-to-date.
+
+
+ if no precompiled header file was specified;
+ otherwise, .
+
+
+ In order to determine accurately whether the precompile header file
+ is up-to-date, we'd need scan all the header files that are pulled
+ in. As this is not implemented right now, its safer to always
+ recompile.
+
+
+
+
+ Determines whether any file that are includes in the specified
+ source file has been updated after the obj was compiled.
+
+ The source file to check.
+ The last write time of the compiled obj.
+
+ The full path to the include file that was modified after the obj
+ was compiled, or if no include files were
+ modified since the obj was compiled.
+
+
+
+ To determine what includes are defined in a source file, conditional
+ directives are not honored.
+
+
+ If a given include cannot be resolved to an existing file, then
+ it will be considered stable.
+
+
+
+
+
+ Quotes an argument value and duplicates trailing backslahes.
+
+ The argument value to quote.
+
+ The quotes argument value.
+
+
+
+
+ Determines the file name of the OBJ file for the specified source
+ file.
+
+ The source file for which the OBJ file should be determined.
+ The path of the object file.
+
+ The file name of the OBJ file for the specified source file.
+
+
+
+
+ Directory where all output files are placed.
+
+
+
+
+ Specifies the path and/or name of the generated precompiled header
+ file - given either relative to or as an
+ absolute path.
+
+
+
+
+ The path of the boundary file when generating/using the
+ specified . If a precompiled header file is
+ not specified then this attribute is ignored.
+
+
+
+
+ The mode in which the specified (if any) is
+ used. The default is .
+
+
+
+
+ Specifies whether Managed Extensions for C++ should be enabled.
+ The default is .
+
+
+
+
+ Tells the compiler to use the specified character set.
+
+
+
+
+ Options to pass to the compiler.
+
+
+
+
+ The list of files to compile.
+
+
+
+
+ The list of directories in which to search for include files.
+
+
+
+
+ Directories that the compiler will search to resolve file references
+ passed to the #using directive.
+
+
+
+
+ Specifies metadata files to reference in this compilation as an
+ alternative to passing a file name to #using in source code.
+
+
+
+
+ Macro definitions to pass to cl.exe.
+ Each entry will generate a /D
+
+
+
+
+ Macro undefines (/U) to pass to cl.exe.
+
+
+
+
+ A name to override the default object file name; can be either a file
+ or directory name. The default is the output directory.
+
+
+
+
+ A name for the compiler-generated PDB file; can be either a file or
+ directory name. The default is the output directory.
+
+
+
+
+ Gets the filename of the external program to start.
+
+ The filename of the external program.
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ Defines the supported modes for the use of precompiled header files.
+
+
+
+
+ Create a precompiled header file.
+
+
+ For further information on the use of this option
+ see the Microsoft documentation on the C++ compiler flag /Yc.
+
+
+
+
+ Automatically create a precompiled header file if necessary.
+
+
+ For further information on the use of this option
+ see the Microsoft documentation on the C++ compiler flag /YX.
+
+
+
+
+ Use a (previously generated) precompiled header file.
+
+
+ For further information on the use of this option
+ see the Microsoft documentation on the C++ compiler flag /Yu.
+
+
+
+
+ Run lib.exe, Microsoft's Library Manager.
+
+
+ Create a library.
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Creates the library.
+
+
+
+
+ Determines if the sources need to be linked.
+
+
+
+
+ Options to pass to the compiler.
+
+
+
+
+ The output file.
+
+
+
+
+ The module definition file.
+
+
+
+
+ The list of files to combine into the output file.
+
+
+
+
+ Symbols to add to the symbol table.
+
+
+
+
+ Names of default libraries to ignore.
+
+
+
+
+ The list of additional library directories to search.
+
+
+
+
+ Gets the filename of the external program to start.
+
+ The filename of the external program.
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ Links files using link.exe, Microsoft's Incremental Linker.
+
+
+ This task is intended for version 7.00.9466 of link.exe.
+
+
+
+ Combine all object files in the current directory into helloworld.exe.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Links the sources.
+
+
+
+
+ Determines if the output needs linking.
+
+
+
+
+ Quotes an argument value and duplicates trailing backslahes.
+
+ The argument value to quote.
+
+ The quotes argument value.
+
+
+
+
+ Options to pass to the compiler.
+
+
+
+
+ Create debugging information for the .exe file or DLL. The default is
+ .
+
+
+
+
+ The output file.
+
+
+
+
+ A user-specified name for the program database (PDB) that the linker
+ creates. The default file name for the PDB has the base name of the
+ and the extension .pdb.
+
+
+
+
+ Specified DLLs for delay loading.
+
+
+
+
+ The list of files to combine into the output file.
+
+
+
+
+ The list of additional library directories to search.
+
+
+
+
+ Link the specified modules into this assembly.
+
+
+
+
+ Embed the specified resources into this assembly.
+
+
+
+
+ Symbols to add to the symbol table.
+
+
+
+
+ Names of libraries that you want the linker to ignore when it
+ resolves external references.
+
+
+
+
+ Gets the filename of the external program to start.
+
+ The filename of the external program.
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ Compiles messages using mc.exe, Microsoft's Win32 message compiler.
+
+
+
+ Compile text.mc using the default options.
+
+
+
+ ]]>
+
+
+ Compile text.mc, passing a path to store the header, the rc
+ file and some additonal options.
+
+
+
+ ]]>
+
+
+
+
+
+ Compiles the sources.
+
+
+
+
+ Determine if source files need re-building.
+
+
+
+
+ Options to pass to the compiler.
+
+
+
+
+ Path to store header file. The default is the project base directory.
+
+
+
+
+ Path to store RC file. The default is the project base directory.
+
+
+
+
+ Input filename.
+
+
+
+
+ Gets the filename of the external program to start.
+
+
+ The filename of the external program.
+
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ This tasks allows you to run MIDL.exe.
+
+
+
+ This task only supports a small subset of the MIDL.EXE command line
+ switches, but you can use the options element to specify any other
+ unsupported commands you want to specify.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ This is where the work is done.
+
+
+
+
+ Check output files to see if we need rebuilding.
+
+ if a rebuild is needed; otherwise,
+ .
+
+
+
+ Check output files to see if we need rebuilding.
+
+
+ if a rebuild is needed; otherwise,
+ .
+
+
+
+
+ Writes the response file for midl.exe.
+
+
+
+
+ The /acf switch allows the user to supply an
+ explicit ACF file name. The switch also
+ allows the use of different interface names in
+ the IDL and ACF files.
+
+
+
+
+ The /align switch is functionally the same as the
+ MIDL /Zp option and is recognized by the MIDL compiler
+ solely for backward compatibility with MkTypLib.
+
+ The alignment value can be 1, 2, 4, or 8.
+
+
+
+ The /app_config switch selects application-configuration
+ mode, which allows you to use some ACF keywords in the
+ IDL file. With this MIDL compiler switch, you can omit
+ the ACF and specify an interface in a single IDL file.
+
+
+
+
+ The /char switch helps to ensure that the MIDL compiler
+ and C compiler operate together correctly for all char
+ and small types.
+
+ Can be one of signed | unsigned | ascii7
+
+
+
+ The /client switch directs the MIDL compiler to generate
+ client-side C source files for an RPC interface
+
+ can be one of stub | none
+
+
+
+ The /cstub switch specifies the name of the client
+ stub file for an RPC interface.
+
+
+
+
+ Specifies the file name for the generated dlldata file for a proxy
+ DLL. The default file name Dlldata.c is used if
+ is not specified.
+
+
+
+
+ The /env switch selects the
+ environment in which the application runs.
+
+ It can take the values win32 and win64
+
+
+
+ The /Oi switch directs the MIDL compiler to
+ use a fully-interpreted marshaling method.
+ The /Oic and /Oicf switches provide additional
+ performance enhancements.
+
+
+ If you specify the Oi attribute, you must set it to
+ one of the values:
+ - Oi=""
+ - Oi="c"
+ - Oi="f"
+ - Oi="cf"
+
+
+
+
+ Specifies a file name for the type library generated by the MIDL
+ compiler.
+
+
+
+
+ Specifies the name of the header file.
+
+
+
+
+ Specifies the name of the interface identifier file for a COM
+ interface, overriding the default name obtained by adding _i.c
+ to the IDL file name.
+
+
+
+
+ Specifies the name of the interface proxy file for a COM interface.
+
+
+
+
+ Name of .IDL file to process.
+
+
+
+
+ Additional options to pass to midl.exe.
+
+
+
+
+ Macro definitions to pass to mdil.exe.
+ Each entry will generate a /D
+
+
+
+
+ Macro undefines (/U) to pass to mdil.
+
+
+
+
+ The list of directories in which to search for include files.
+
+
+
+
+ Filename of program to execute
+
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ Compiles resources using rc.exe, Microsoft's Win32 resource
+ compiler.
+
+
+
+ Compile text.rc to text.res using the default options.
+
+
+
+ ]]>
+
+
+
+
+ Compile text.rc, passing an additional option.
+
+
+
+ ]]>
+
+
+
+
+
+ Compile the resource file
+
+
+
+
+ Determines if the resource need compiling.
+
+
+
+
+ Check if a resource file has been updated.
+
+
+
+
+
+
+ Options to pass to the compiler.
+
+
+
+
+ Output file.
+
+
+
+
+ The resource file to compile.
+
+
+
+
+ Default language ID.
+
+
+
+
+ The list of directories in which to search for include files.
+
+
+
+
+ Macro definitions to pass to rc.exe.
+ Each entry will generate a /d
+
+
+
+
+ Filename of program to execute
+
+
+
+
+ Arguments of program to execute
+
+
+
+
+ Defines the character sets that can be used by the C++ compiler.
+
+
+
+
+ Have the compiler determine the character set.
+
+
+
+
+ Unicode character set.
+
+
+
+
+ Multi-byte character set.
+
+
+
+
+ Represents a library.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ the specified name.
+
+ is .
+
+
+
+ The name of the library.
+
+
+
+
+ If then the element will be processed;
+ otherwise, skipped. The default is .
+
+
+
+
+ If then the element will be skipped;
+ otherwise, processed. The default is .
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Represents a symbol.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with
+ the specified name.
+
+ is .
+
+
+
+ The name of the symbol.
+
+
+
+
+ If then the element will be processed;
+ otherwise, skipped. The default is .
+
+
+
+
+ If then the element will be skipped;
+ otherwise, processed. The default is .
+
+
+
+
+ Contains a collection of elements.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified instance.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified array of instances.
+
+
+
+
+ Adds a to the end of the collection.
+
+ The to be added to the end of the collection.
+ The position into which the new element was inserted.
+
+
+
+ Adds the elements of a array to the end of the collection.
+
+ The array of elements to be added to the end of the collection.
+
+
+
+ Adds the elements of a to the end of the collection.
+
+ The to be added to the end of the collection.
+
+
+
+ Determines whether a is in the collection.
+
+ The to locate in the collection.
+
+ if is found in the
+ collection; otherwise, .
+
+
+
+
+ Copies the entire collection to a compatible one-dimensional array, starting at the specified index of the target array.
+
+ The one-dimensional array that is the destination of the elements copied from the collection. The array must have zero-based indexing.
+ The zero-based index in at which copying begins.
+
+
+
+ Retrieves the index of a specified object in the collection.
+
+ The object for which the index is returned.
+
+ The index of the specified . If the is not currently a member of the collection, it returns -1.
+
+
+
+
+ Inserts a into the collection at the specified index.
+
+ The zero-based index at which should be inserted.
+ The to insert.
+
+
+
+ Returns an enumerator that can iterate through the collection.
+
+
+ A for the entire collection.
+
+
+
+
+ Removes a member from the collection.
+
+ The to remove from the collection.
+
+
+
+ Gets or sets the element at the specified index.
+
+ The zero-based index of the element to get or set.
+
+
+
+ Enumerates the elements of a .
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The collection that should be enumerated.
+
+
+
+ Advances the enumerator to the next element of the collection.
+
+
+ if the enumerator was successfully advanced
+ to the next element; if the enumerator has
+ passed the end of the collection.
+
+
+
+
+ Sets the enumerator to its initial position, which is before the
+ first element in the collection.
+
+
+
+
+ Gets the current element in the collection.
+
+
+ The current element in the collection.
+
+
+
+
+ Defines how to deal with backslashes in values of command line
+ arguments.
+
+
+
+
+ Does not perform any processing on backslashes.
+
+
+
+
+ Duplicates the trailing backslash.
+
+
+
+
+ Fixes the trailing backslash by replaces trailing double backslashes
+ with only one backslash and removing single trailing backslashes.
+
+
+
+
+ Removes all the trailing backslashes.
+
+
+
+
+ Groups a set of useful manipulation methods for
+ command-line arguments.
+
+
+
+
+ Performs backslash processing on the specified value using a given
+ method.
+
+ The to process.
+ The to use.
+
+ with backslashes processed using the given
+ .
+
+
+
+
+ Duplicates the trailing backslash.
+
+ The input string to check and duplicate the trailing backslash if necessary.
+ The result string after being processed.
+
+ Also duplicates trailing backslash in quoted value.
+
+
+
+
+ Fixes the trailing backslash. This function replaces the trailing double backslashes with
+ only one backslash. It also, removes the single trailing backslash.
+
+ The input string.
+ The result string after being processed.
+
+
+
+ Removes all the trailing backslashes from the input.
+
+ The input string.
+ The result string without trailing backslashes.
+
+
+
+ Quotes an argument value and processes backslashes using a given
+ .
+
+ The argument value to quote.
+ The to use.
+
+ The quoted argument value.
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.Win32Tasks.dll b/build-support/tools/nant/bin/NAnt.Win32Tasks.dll
new file mode 100644
index 00000000..4979a834
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.Win32Tasks.dll differ
diff --git a/build-support/tools/nant/bin/NAnt.Win32Tasks.xml b/build-support/tools/nant/bin/NAnt.Win32Tasks.xml
new file mode 100644
index 00000000..059eb79c
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.Win32Tasks.xml
@@ -0,0 +1,690 @@
+
+
+
+ NAnt.Win32Tasks
+
+
+
+
+ Groups a set of functions that convert Windows native filenames to
+ Cygwin POSIX-style pathnames and vice versa.
+
+
+ It can be used when a Cygwin program needs to pass a file name to a
+ native Windows program, or expects to get a file name from a native
+ Windows program.
+
+
+
+
+ Initializes a new instance of the
+ class with the specified and properties.
+
+ The in which the class is used.
+ The set of properties to use for macro expansion.
+
+
+
+ Gets the DOS (short) form of the specified path.
+
+ The path to convert.
+
+ The DOS (short) form of the specified path.
+
+ cygpath could not be started.
+ could not be converted to a short form.
+
+
+
+ Gets the Unix form of the specified path.
+
+ The path to convert.
+
+ The Unix form of the specified path.
+
+ cygpath could not be started.
+ could not be converted to a Unix form.
+
+
+
+ Gets the Windows form of the specified path.
+
+ The path to convert.
+
+ The Windows form of the specified path.
+
+ cygpath could not be started.
+ could not be converted to a Windows form.
+
+
+
+ Runs cygpath with the specified arguments and returns the result
+ as a .
+
+ The arguments to pass to cygpath.
+
+ The result of running cygpath with the specified arguments.
+
+
+
+
+ Factory method to return a new instance of ExecTask
+
+
+
+
+
+
+ Generates a Windows Forms Control that wraps ActiveX Controls defined
+ in an OCX.
+
+
+
+
+ ]]>
+
+
+
+
+
+ Import the ActiveX control.
+
+
+
+
+ Determines whether the assembly needs to be created again.
+
+
+ if the assembly needs to be created again;
+ otherwise, .
+
+
+
+
+ Filename of the .ocx file.
+
+
+
+
+ Filename of the generated assembly.
+
+
+
+
+ Specifies the file containing the public key to use to sign the
+ resulting assembly.
+
+
+ The file containing the public key to use to sign the resulting
+ assembly.
+
+
+
+
+ Specifies the publisher's official public/private key pair with which
+ the resulting assembly should be signed with a strong name.
+
+
+ The keyfile to use to sign the resulting assembly with a strong name.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies the key container in which the public/private key pair
+ should be found that should be used to sign the resulting assembly
+ with a strong name.
+
+
+ The key container containing a public/private key pair that should
+ be used to sign the resulting assembly.
+
+
+
+
+ Specifies to sign the resulting control using delayed signing.
+
+
+
+
+ Determines whether C# source code for the Windows Form wrapper should
+ be generated. The default is .
+
+
+
+
+ Assembly to use for Runtime Callable Wrapper rather than generating
+ new one [.NET 1.1 or higher].
+
+
+
+
+ Indicates whether aximp supports using an existing Runtime
+ Callable Wrapper for a given target framework. The default is
+ .
+
+
+
+
+ Gets the command-line arguments for the external program.
+
+
+ The command-line arguments for the external program.
+
+
+
+
+ Reads a value or set of values from the Windows Registry into one or
+ more NAnt properties.
+
+
+ Read a single value from the registry.
+
+
+ ]]>
+
+ Read all the registry values in a key.
+
+
+ ]]>
+
+
+
+
+
+ read the specified registry value
+
+
+
+
+ Returns the hive for a given key.
+
+
+
+
+ The hive for a given key.
+
+
+
+
+ Returns the key for a given registry hive.
+
+ The registry hive to return the key for.
+
+ The key for a given registry hive.
+
+
+
+
+ The property to set to the specified registry key value.
+ If this attribute is used then a single value will be read.
+
+
+
+
+ The prefix to use for the specified registry key values.
+ If this attribute is used then all registry values will be read and stored as properties with this prefix.
+
+
+ Registry values a, b, c will be turned into prefixa, prefixb, prefixc named properties
+
+
+
+
+ The registry key to read, including the path.
+
+
+ SOFTWARE\Microsoft\.NETFramework\sdkInstallRoot
+
+
+
+
+ Space separated list of registry hives to search for .
+ For a list of possible values, see . The
+ default is .
+
+
+
+
+
+
+
+ Registers an assembly, or set of assemblies for use from COM clients.
+
+
+
+ Refer to the Regasm
+ documentation for more information on the regasm tool.
+
+
+
+
+ Register types in a single assembly.
+
+
+
+ ]]>
+
+
+
+
+ Register types of an assembly and generate a type library containing
+ definitions of accessible types defined within the assembly.
+
+
+
+ ]]>
+
+
+
+
+ Register types of set of assemblies at once, while specifying a set
+ of reference assemblies.
+
+
+
+
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Updates the of the specified
+ .
+
+ The of which the should be updated.
+
+
+
+ Registers or unregisters a single assembly, or a group of assemblies.
+
+
+
+
+ The name of the file to register. This is provided as an alternate
+ to using the task's .
+
+
+
+
+ Registry file to export to instead of entering the types directly
+ into the registry.
+
+
+
+
+ Set the code base registry setting.
+
+
+
+
+ Only refer to already registered type libraries.
+
+
+
+
+ Export the assemblies to the specified type library and register it.
+
+
+
+
+ Unregister the assembly. The default is .
+
+
+
+
+ The set of assemblies to register, or unregister.
+
+
+
+
+ The set of assembly references.
+
+
+
+
+ Gets the working directory for the application.
+
+
+ The working directory for the application.
+
+
+
+
+ Gets the command line arguments for the external program.
+
+
+ The command line arguments for the external program.
+
+
+
+
+ Gets the filename of the external program to start.
+
+
+ The filename of the external program.
+
+
+ Override in derived classes to explicitly set the location of the
+ external tool.
+
+
+
+
+ Exports a .NET assembly to a type library that can be used from unmanaged
+ code (wraps Microsoft's tlbexp.exe).
+
+
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Export DotNetAssembly.dll to LegacyCOM.dll.
+
+
+ ]]>
+
+
+
+
+
+ Exports the type library.
+
+
+
+
+ Determines whether the assembly needs to be exported to a type
+ library again.
+
+
+ if the assembly needs to be exported to a
+ type library; otherwise, .
+
+
+
+
+ Specifies the assembly for which to export a type library.
+
+
+ The assembly for which to export a type library.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies the name of the type library file to generate.
+
+
+ The name of the type library file to generate.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies the file used to determine capitalization of names in a
+ type library.
+
+
+ The file used to determine capitalization of names in a type library.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Gets the command line arguments for the external program.
+
+
+ The command line arguments for the external program.
+
+
+
+
+ Imports a type library to a .NET assembly (wraps Microsoft's tlbimp.exe).
+
+
+
+ This task lets you easily create interop assemblies. By default, it will
+ not reimport if the underlying COM TypeLib or reference has not changed.
+
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Import LegacyCOM.dll to DotNetAssembly.dll.
+
+
+ ]]>
+
+
+
+
+ Generate an assembly named "Interop.MSVidCtlLib.dll" for the
+ MS Video Control 1.0 Type Library, transforming any [out, retval]
+ parameters of methods on dispinterfaces in the type library into
+ return values in the managed library.
+
+
+
+
+
+
+
+ ]]>
+
+
+
+
+
+ Imports the type library to a .NET assembly.
+
+
+
+
+ Returns the path of the type library, removing the identifier of
+ the type library from the specified string.
+
+ The path from which to extract the path of the type library.
+
+ The path of the type library without the type library identifier.
+
+
+ An example of a path which includes the identifier of the type
+ library (in this case "2") is
+ C:\WINDOWS\system32\msvidctl.dll\2.
+
+
+
+
+ Determines whether the type library needs to be imported again.
+
+
+ if the type library needs to be imported;
+ otherwise, .
+
+
+
+
+ Specifies the name of the output file.
+
+
+ The name of the output file.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies the namespace in which to produce the assembly.
+
+
+ The namespace in which to produce the assembly.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies the version number of the assembly to produce.
+
+
+
+ The version number of the assembly to produce.
+
+
+ The version number should be in the format major.minor.build.revision.
+
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+
+
+ Specifies whether the resulting assembly should be signed with a
+ strong name using delayed signing. The default is .
+
+
+ if the resulting assembly should be signed
+ with a strong name using delayed signing; otherwise, .
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies whether a primary interop assembly should be produced for
+ the specified type library. The default is .
+
+
+ if a primary interop assembly should be
+ produced; otherwise, .
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies the file containing the public key to use to sign the
+ resulting assembly.
+
+
+ The file containing the public key to use to sign the resulting
+ assembly.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies the publisher's official public/private key pair with which
+ the resulting assembly should be signed with a strong name.
+
+
+ The keyfile to use to sign the resulting assembly with a strong name.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies the key container in which the public/private key pair
+ should be found that should be used to sign the resulting assembly
+ with a strong name.
+
+
+ The key container containing a public/private key pair that should
+ be used to sign the resulting assembly.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies the assembly files to use to resolve references to types
+ defined outside the current type library.
+
+
+ The assembly files to use to resolve references to types defined
+ outside the current type library.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies whether a type library should not be imported if all
+ references within the current assembly or the reference assemblies
+ cannot be resolved. The default is .
+
+
+ if a type library should not be imported if
+ all references cannot be resolved; otherwise, .
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies whether to import a COM style SafeArray as a managed
+ class type. The default is .
+
+
+ if a COM style SafeArray should be imported
+ as a managed class type; otherwise,
+ .
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies how to transform the metadata [.NET 1.1 or higher].
+
+
+
+
+ Specifies the source type library that gets passed to the type
+ library importer.
+
+
+ The source type library that gets passed to the type library
+ importer.
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Specifies whether interfaces should be produced without .NET Framework
+ security checks. The default is .
+
+
+ if interfaces without .NET Framework security
+ checks should be produced; otherwise, .
+
+ See the Microsoft.NET Framework SDK documentation for details.
+
+
+
+ Indicates whether tlbimp supports transforming metadata for
+ a given target framework. The default is .
+
+
+
+
+ Gets the command line arguments for the external program.
+
+
+ The command line arguments for the external program.
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.exe b/build-support/tools/nant/bin/NAnt.exe
new file mode 100644
index 00000000..689b1ebe
Binary files /dev/null and b/build-support/tools/nant/bin/NAnt.exe differ
diff --git a/build-support/tools/nant/bin/NAnt.exe.config b/build-support/tools/nant/bin/NAnt.exe.config
new file mode 100644
index 00000000..534d832f
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.exe.config
@@ -0,0 +1,1716 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ csc
+ true
+
+
+ vbc
+
+
+ jsc
+
+
+ vjc
+ true
+
+
+ resgen
+
+
+ al
+
+
+ sn
+
+
+ lc
+
+
+ ilasm
+
+
+ ildasm
+
+
+ false
+
+
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ csc
+ true
+
+
+ vbc
+
+
+ jsc
+
+
+ vjc
+ true
+
+
+ resgen
+
+
+ al
+
+
+ sn
+
+
+ lc
+
+
+ ilasm
+
+
+ ildasm
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ csc
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+ vbc
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+ jsc
+ true
+
+
+ vjc
+ true
+ true
+ true
+
+
+ resgen
+ true
+ true
+
+
+ al
+
+
+ sn
+
+
+ lc
+ true
+
+
+ ilasm
+
+
+ ildasm
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ csc
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+ vbc
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+ jsc
+ true
+
+
+ vjc
+ true
+ true
+ true
+
+
+ resgen
+ true
+ true
+
+
+ al
+
+
+ sn
+
+
+ lc
+ true
+
+
+ ilasm
+
+
+ ildasm
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ csc
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+ vbc
+ true
+ true
+ true
+ true
+ true
+ true
+ true
+
+
+ jsc
+ true
+
+
+ vjc
+ true
+ true
+ true
+
+
+ resgen
+ true
+ true
+
+
+ al
+
+
+ sn
+
+
+ lc
+ true
+
+
+ ilasm
+
+
+ ildasm
+
+
+
+
+
+
+
+
+
+
+
+ The .NET Framework 1.1 SDK is not installed.
+
+
+
+ csc
+ true
+ true
+ true
+
+
+ vbc
+
+
+ cfresgen
+
+
+ al
+
+
+ sn
+
+
+ ${path::combine(sdkInstallRoot.DesktopFramework, 'bin/lc.exe')}
+
+
+ ilasm
+
+
+ ildasm
+
+
+
+
+
+
+
+
+
+
+
+ The .NET Framework 2.0 SDK is not installed.
+
+
+
+ csc
+ true
+ true
+ true
+
+
+ vbc
+ true
+
+
+ resgen
+
+
+ al
+
+
+ sn
+
+
+ lc
+ true
+
+
+ ilasm
+
+
+ ildasm
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ al
+ true
+
+
+ ${csc.tool}
+ true
+ true
+ true
+ ${csc.supportsdocgeneration}
+ true
+ true
+ true
+
+
+ ${mbas.tool}
+ true
+
+
+ ${resgen.tool}
+ true
+
+
+ sn
+ true
+
+
+ false
+
+
+ ilasm
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ al
+ true
+
+
+ ${path::combine(frameworkAssemblyDirectory, 'mono/2.0/gmcs.exe')}
+ true
+ true
+ true
+ ${csc.supportsdocgeneration}
+ true
+ true
+ true
+
+
+
+ ${path::combine(frameworkAssemblyDirectory, 'mono/1.0/mbas.exe')}
+ true
+
+
+ ${resgen.tool}
+ true
+
+
+ sn
+ true
+
+
+ false
+
+
+ ilasm
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ al
+ true
+
+
+ ${path::combine(frameworkAssemblyDirectory, 'mono/2.0/gmcs.exe')}
+ true
+ true
+ true
+ ${csc.supportsdocgeneration}
+ true
+ true
+ true
+
+
+
+ ${path::combine(frameworkAssemblyDirectory, 'mono/1.0/mbas.exe')}
+ true
+
+
+ ${resgen.tool}
+ true
+
+
+ sn
+ true
+
+
+ false
+
+
+ ilasm
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ al
+ true
+
+
+ ${path::combine(frameworkAssemblyDirectory, 'mono/2.0/gmcs.exe')}
+ true
+ true
+ true
+ ${csc.supportsdocgeneration}
+ true
+ true
+ true
+
+
+
+ ${path::combine(frameworkAssemblyDirectory, 'mono/1.0/mbas.exe')}
+ true
+
+
+ ${resgen.tool}
+ true
+
+
+ sn
+ true
+
+
+ false
+
+
+ ilasm
+ true
+
+
+
+
+
+
+
+
+
+
+ csc
+ true
+
+
+ jsc
+ true
+
+
+ resgen
+
+
+ al
+
+
+ sn
+
+
+ false
+
+
+ ilasm
+ true
+
+
+ ildasm
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Unable to locate 'mono' module using pkg-config. Download the Mono development packages from http://www.mono-project.com/downloads/.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ al
+ true
+
+
+ ${path::combine(prefix, 'lib/mono/1.0/mcs.exe')}
+ true
+ true
+ true
+ ${csc.supportsdocgeneration}
+ true
+ true
+ true
+
+
+ ${path::combine(prefix, 'lib/mono/1.0/mbas.exe')}
+ true
+
+
+ ${resgen.tool}
+ true
+
+
+ sn
+ true
+
+
+ false
+
+
+ ilasm
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Unable to locate 'mono' module using pkg-config. Download the Mono development packages from http://www.mono-project.com/downloads/.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ al
+ true
+
+
+ ${path::combine(prefix, 'lib/mono/2.0/gmcs.exe')}
+ true
+ true
+ true
+ ${csc.supportsdocgeneration}
+ true
+ true
+ true
+
+
+
+ ${path::combine(prefix, 'lib/mono/1.0/mbas.exe')}
+ true
+
+
+ ${resgen.tool}
+ true
+
+
+ sn
+ true
+
+
+ false
+
+
+ ilasm
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Unable to locate 'mono' module using pkg-config. Download the Mono development packages from http://www.mono-project.com/downloads/.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ al
+ true
+
+
+ ${path::combine(prefix, 'lib/mono/2.0/gmcs.exe')}
+ true
+ true
+ true
+ ${csc.supportsdocgeneration}
+ true
+ true
+ true
+
+
+
+ ${path::combine(prefix, 'lib/mono/1.0/mbas.exe')}
+ true
+
+
+ ${resgen.tool}
+ true
+
+
+ sn
+ true
+
+
+ false
+
+
+ ilasm
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+ Unable to locate 'mono' module using pkg-config. Download the Mono development packages from http://www.mono-project.com/downloads/.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ al
+ true
+
+
+ ${path::combine(prefix, 'lib/mono/2.0/gmcs.exe')}
+ true
+ true
+ true
+ ${csc.supportsdocgeneration}
+ true
+ true
+ true
+
+
+
+ ${path::combine(prefix, 'lib/mono/1.0/mbas.exe')}
+ true
+
+
+ ${resgen.tool}
+ true
+
+
+ sn
+ true
+
+
+ false
+
+
+ ilasm
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/bin/NAnt.xml b/build-support/tools/nant/bin/NAnt.xml
new file mode 100644
index 00000000..fd75a54d
--- /dev/null
+++ b/build-support/tools/nant/bin/NAnt.xml
@@ -0,0 +1,48 @@
+
+
+
+ NAnt
+
+
+
+
+ Stub used to created and launch real ConsoleDriver
+ class in Core assembly.
+
+
+
+
+ Entry point for executable
+
+ Command Line arguments
+ The result of the real execution
+
+
+
+ Helper class for invoking the application entry point in NAnt.Core
+ and passing the command-line arguments.
+
+
+
+
+ Initializes a new instance of the
+ class with the specified command-line arguments.
+
+ The commandline arguments passed to NAnt.exe.
+ Directories relative to the base directory of the AppDomain to probe for missing assembly references.
+
+
+
+ Invokes the application entry point in NAnt.Core.
+
+
+
+
+ Gets the status that the build process returned when it exited.
+
+
+ The code that the build process specified when it terminated.
+
+
+
+
diff --git a/build-support/tools/nant/bin/NDoc.Documenter.NAnt.dll b/build-support/tools/nant/bin/NDoc.Documenter.NAnt.dll
new file mode 100644
index 00000000..06dda7e9
Binary files /dev/null and b/build-support/tools/nant/bin/NDoc.Documenter.NAnt.dll differ
diff --git a/build-support/tools/nant/bin/lib/ICSharpCode.SharpCvsLib.Console.dll b/build-support/tools/nant/bin/lib/ICSharpCode.SharpCvsLib.Console.dll
new file mode 100644
index 00000000..fcca99ee
Binary files /dev/null and b/build-support/tools/nant/bin/lib/ICSharpCode.SharpCvsLib.Console.dll differ
diff --git a/build-support/tools/nant/bin/lib/ICSharpCode.SharpCvsLib.dll b/build-support/tools/nant/bin/lib/ICSharpCode.SharpCvsLib.dll
new file mode 100644
index 00000000..fcd2d1ad
Binary files /dev/null and b/build-support/tools/nant/bin/lib/ICSharpCode.SharpCvsLib.dll differ
diff --git a/build-support/tools/nant/bin/lib/ICSharpCode.SharpZipLib.dll b/build-support/tools/nant/bin/lib/ICSharpCode.SharpZipLib.dll
new file mode 100644
index 00000000..77bafe8b
Binary files /dev/null and b/build-support/tools/nant/bin/lib/ICSharpCode.SharpZipLib.dll differ
diff --git a/build-support/tools/nant/bin/lib/NUnitCore.dll b/build-support/tools/nant/bin/lib/NUnitCore.dll
new file mode 100644
index 00000000..0f1873c1
Binary files /dev/null and b/build-support/tools/nant/bin/lib/NUnitCore.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/1.0/NDoc.Core.dll b/build-support/tools/nant/bin/lib/mono/1.0/NDoc.Core.dll
new file mode 100644
index 00000000..d360866d
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/1.0/NDoc.Core.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/1.0/NDoc.Documenter.Msdn.dll b/build-support/tools/nant/bin/lib/mono/1.0/NDoc.Documenter.Msdn.dll
new file mode 100644
index 00000000..c0fc50d6
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/1.0/NDoc.Documenter.Msdn.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/1.0/NDoc.ExtendedUI.dll b/build-support/tools/nant/bin/lib/mono/1.0/NDoc.ExtendedUI.dll
new file mode 100644
index 00000000..d075d5d7
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/1.0/NDoc.ExtendedUI.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/1.0/nunit.core.dll b/build-support/tools/nant/bin/lib/mono/1.0/nunit.core.dll
new file mode 100644
index 00000000..df7f9051
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/1.0/nunit.core.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/1.0/nunit.framework.dll b/build-support/tools/nant/bin/lib/mono/1.0/nunit.framework.dll
new file mode 100644
index 00000000..5316687a
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/1.0/nunit.framework.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/1.0/nunit.util.dll b/build-support/tools/nant/bin/lib/mono/1.0/nunit.util.dll
new file mode 100644
index 00000000..e9e479eb
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/1.0/nunit.util.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/2.0/NDoc.Core.dll b/build-support/tools/nant/bin/lib/mono/2.0/NDoc.Core.dll
new file mode 100644
index 00000000..d360866d
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/2.0/NDoc.Core.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/2.0/NDoc.Documenter.Msdn.dll b/build-support/tools/nant/bin/lib/mono/2.0/NDoc.Documenter.Msdn.dll
new file mode 100644
index 00000000..c0fc50d6
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/2.0/NDoc.Documenter.Msdn.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/2.0/NDoc.ExtendedUI.dll b/build-support/tools/nant/bin/lib/mono/2.0/NDoc.ExtendedUI.dll
new file mode 100644
index 00000000..d075d5d7
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/2.0/NDoc.ExtendedUI.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/2.0/nunit.core.dll b/build-support/tools/nant/bin/lib/mono/2.0/nunit.core.dll
new file mode 100644
index 00000000..a11e6234
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/2.0/nunit.core.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/2.0/nunit.framework.dll b/build-support/tools/nant/bin/lib/mono/2.0/nunit.framework.dll
new file mode 100644
index 00000000..44704bd5
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/2.0/nunit.framework.dll differ
diff --git a/build-support/tools/nant/bin/lib/mono/2.0/nunit.util.dll b/build-support/tools/nant/bin/lib/mono/2.0/nunit.util.dll
new file mode 100644
index 00000000..8fff811d
Binary files /dev/null and b/build-support/tools/nant/bin/lib/mono/2.0/nunit.util.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.0/NDoc.Core.dll b/build-support/tools/nant/bin/lib/net/1.0/NDoc.Core.dll
new file mode 100644
index 00000000..be20f124
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.0/NDoc.Core.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.0/NDoc.Documenter.Msdn.dll b/build-support/tools/nant/bin/lib/net/1.0/NDoc.Documenter.Msdn.dll
new file mode 100644
index 00000000..dc5b2fc5
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.0/NDoc.Documenter.Msdn.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.0/NDoc.ExtendedUI.dll b/build-support/tools/nant/bin/lib/net/1.0/NDoc.ExtendedUI.dll
new file mode 100644
index 00000000..ea29c6da
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.0/NDoc.ExtendedUI.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.0/nunit.core.dll b/build-support/tools/nant/bin/lib/net/1.0/nunit.core.dll
new file mode 100644
index 00000000..7b1916e0
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.0/nunit.core.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.0/nunit.framework.dll b/build-support/tools/nant/bin/lib/net/1.0/nunit.framework.dll
new file mode 100644
index 00000000..6038b272
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.0/nunit.framework.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.0/nunit.util.dll b/build-support/tools/nant/bin/lib/net/1.0/nunit.util.dll
new file mode 100644
index 00000000..a778921c
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.0/nunit.util.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.1/NDoc.Core.dll b/build-support/tools/nant/bin/lib/net/1.1/NDoc.Core.dll
new file mode 100644
index 00000000..84931f64
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.1/NDoc.Core.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.1/NDoc.Documenter.Msdn.dll b/build-support/tools/nant/bin/lib/net/1.1/NDoc.Documenter.Msdn.dll
new file mode 100644
index 00000000..bcda5274
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.1/NDoc.Documenter.Msdn.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.1/NDoc.ExtendedUI.dll b/build-support/tools/nant/bin/lib/net/1.1/NDoc.ExtendedUI.dll
new file mode 100644
index 00000000..2132a5c4
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.1/NDoc.ExtendedUI.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.1/nunit.core.dll b/build-support/tools/nant/bin/lib/net/1.1/nunit.core.dll
new file mode 100644
index 00000000..df7f9051
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.1/nunit.core.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.1/nunit.framework.dll b/build-support/tools/nant/bin/lib/net/1.1/nunit.framework.dll
new file mode 100644
index 00000000..5316687a
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.1/nunit.framework.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/1.1/nunit.util.dll b/build-support/tools/nant/bin/lib/net/1.1/nunit.util.dll
new file mode 100644
index 00000000..e9e479eb
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/1.1/nunit.util.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/2.0/NDoc.Core.dll b/build-support/tools/nant/bin/lib/net/2.0/NDoc.Core.dll
new file mode 100644
index 00000000..84931f64
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/2.0/NDoc.Core.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/2.0/NDoc.Documenter.Msdn.dll b/build-support/tools/nant/bin/lib/net/2.0/NDoc.Documenter.Msdn.dll
new file mode 100644
index 00000000..bcda5274
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/2.0/NDoc.Documenter.Msdn.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/2.0/NDoc.ExtendedUI.dll b/build-support/tools/nant/bin/lib/net/2.0/NDoc.ExtendedUI.dll
new file mode 100644
index 00000000..2132a5c4
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/2.0/NDoc.ExtendedUI.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/2.0/nunit.core.dll b/build-support/tools/nant/bin/lib/net/2.0/nunit.core.dll
new file mode 100644
index 00000000..a11e6234
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/2.0/nunit.core.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/2.0/nunit.framework.dll b/build-support/tools/nant/bin/lib/net/2.0/nunit.framework.dll
new file mode 100644
index 00000000..44704bd5
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/2.0/nunit.framework.dll differ
diff --git a/build-support/tools/nant/bin/lib/net/2.0/nunit.util.dll b/build-support/tools/nant/bin/lib/net/2.0/nunit.util.dll
new file mode 100644
index 00000000..8fff811d
Binary files /dev/null and b/build-support/tools/nant/bin/lib/net/2.0/nunit.util.dll differ
diff --git a/build-support/tools/nant/bin/log4net.dll b/build-support/tools/nant/bin/log4net.dll
new file mode 100644
index 00000000..f3772864
Binary files /dev/null and b/build-support/tools/nant/bin/log4net.dll differ
diff --git a/build-support/tools/nant/bin/scvs.exe b/build-support/tools/nant/bin/scvs.exe
new file mode 100644
index 00000000..34da1bc9
Binary files /dev/null and b/build-support/tools/nant/bin/scvs.exe differ
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.DataTypeBase.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.DataTypeBase.html
new file mode 100644
index 00000000..cd0aa52c
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.DataTypeBase.html
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+
+ DataTypeBase Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ DataTypeBase
+
+ v0.85
+
+
+
DataTypeBase
+
Provides the abstract base class for types.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
id
+
string
+
The ID used to be referenced later.
+
False
+
+
+
refid
+
string
+
The ID to use as the reference.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Filters.ChainableReader.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Filters.ChainableReader.html
new file mode 100644
index 00000000..4508f639
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Filters.ChainableReader.html
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+ ChainableReader Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ ChainableReader
+
+ v0.85
+
+
+
ChainableReader
+
Functions as a chainable TextReader
Implements a abstraction over a TextReader that allows the class to represent either a TextReader or another ChainableReader to which it is chained. By passing a ChainableReader as a constructor paramater it is possiable to chain many ChainableReaders together. The last ChainableReader in the chain must be based on a TextReader.
Requirements
Assembly: NAnt.Core (0.85.2478.0)
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Filters.Filter.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Filters.Filter.html
new file mode 100644
index 00000000..4ab6e927
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Filters.Filter.html
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+
+ Filter Element
+
+
+
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
+
False
+
+
+
file
+
file
+
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
+
False
+
+
+
if
+
bool
+
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
+
False
+
+
+
line
+
string
+
List of command-line arguments; will be passed to the executable as is.
+
False
+
+
+
path
+
<path>
+
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
+
False
+
+
+
unless
+
bool
+
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
+
False
+
+
+
value
+
string
+
A single command-line argument; can contain space characters.
The value for a directory-based environment variable. NAnt will convert it to an absolute path.
False
file
file
The value for a file-based environment variable. NAnt will convert it to an absolute filename.
False
if
bool
Indicates if the environment variable should be passed to the external program. If true then the environment variable will be passed; otherwise, skipped. The default is true.
False
path
<path>
The value for a PATH like environment variable. You can use : or ; as path separators and NAnt will convert it to the platform's local conventions.
False
unless
bool
Indicates if the environment variable should not be passed to the external program. If false then the environment variable will be passed; otherwise, skipped. The default is false.
The value for a directory-based environment variable. NAnt will convert it to an absolute path.
+
False
+
+
+
file
+
file
+
The value for a file-based environment variable. NAnt will convert it to an absolute filename.
+
False
+
+
+
if
+
bool
+
Indicates if the environment variable should be passed to the external program. If true then the environment variable will be passed; otherwise, skipped. The default is true.
+
False
+
+
+
path
+
<path>
+
The value for a PATH like environment variable. You can use : or ; as path separators and NAnt will convert it to the platform's local conventions.
+
False
+
+
+
unless
+
bool
+
Indicates if the environment variable should not be passed to the external program. If false then the environment variable will be passed; otherwise, skipped. The default is false.
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.Exclude.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.Exclude.html
new file mode 100644
index 00000000..78e8a058
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.Exclude.html
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+ FileSet.Exclude Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ FileSet.Exclude
+
+ v0.85
+
+
+
FileSet.Exclude
+
+
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
name
+
string
+
The pattern or file name to exclude.
+
True
+
+
+
if
+
bool
+
If true then the pattern will be excluded; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the pattern will be excluded; otherwise, skipped. The default is false.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.ExcludesFile.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.ExcludesFile.html
new file mode 100644
index 00000000..e59bda1e
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.ExcludesFile.html
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+ FileSet.ExcludesFile Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ FileSet.ExcludesFile
+
+ v0.85
+
+
+
FileSet.ExcludesFile
+
+
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
name
+
file
+
The name of a file; each line of this file is taken to be a pattern.
+
True
+
+
+
if
+
bool
+
If true then the patterns will be excluded; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the patterns will be excluded; otherwise, skipped. The default is false.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.Include.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.Include.html
new file mode 100644
index 00000000..cf0be6e7
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.Include.html
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+
+ FileSet.Include Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ FileSet.Include
+
+ v0.85
+
+
+
FileSet.Include
+
+
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
name
+
string
+
The pattern or file name to include.
+
True
+
+
+
asis
+
bool
+
If true then the file name will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
+
False
+
+
+
frompath
+
bool
+
If true then the file will be searched for on the path. The default is false.
+
False
+
+
+
if
+
bool
+
If true then the pattern will be included; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the pattern will be included; otherwise, skipped. The default is false.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.IncludesFile.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.IncludesFile.html
new file mode 100644
index 00000000..8643831e
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.FileSet.IncludesFile.html
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+
+ FileSet.IncludesFile Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ FileSet.IncludesFile
+
+ v0.85
+
+
+
FileSet.IncludesFile
+
+
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
asis
+
bool
+
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
+
False
+
+
+
frompath
+
bool
+
If true then the patterns in the include file will be searched for on the path. The default is false.
+
False
+
+
+
if
+
bool
+
If true then the patterns will be included; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
+
False
+
+
+
name
+
file
+
The name of a file; each line of this file is taken to be a pattern.
+
True
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.Formatter.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.Formatter.html
new file mode 100644
index 00000000..9953cbc9
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.Formatter.html
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+ <formatter> Element
+
+
+
Indicates if the formatter should be used to format the timestamp. If true then the formatter will be used; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Indicates if the formatter should be not used to format the timestamp. If false then the formatter will be used; otherwise, skipped. The default is false.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.Option.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.Option.html
new file mode 100644
index 00000000..8a93425b
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.Option.html
@@ -0,0 +1,68 @@
+
+
+
+
+
+
+
+ <option> Element
+
+
+
Indicates if the option should be passed to the task. If true then the option will be passed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Indicates if the option should not be passed to the task. If false then the option will be passed; otherwise, skipped. The default is false.
+
False
+
+
+
value
+
string
+
Value of the option. The default is a null reference (Nothing in Visual Basic).
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.PathElement.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.PathElement.html
new file mode 100644
index 00000000..92392760
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.PathElement.html
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+ <pathelement> Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ <pathelement>
+
+ v0.85
+
+
+
<pathelement>
+
Represents a nested path element.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
dir
+
directory
+
The name of a directory to add to the path. Will be replaced with the absolute path of the directory.
+
False
+
+
+
file
+
file
+
The name of a file to add to the path. Will be replaced with the absolute path of the file.
+
False
+
+
+
if
+
bool
+
If true then the entry will be added to the path; otherwise, skipped. The default is true.
+
False
+
+
+
path
+
<path>
+
A string that will be treated as a path-like string. You can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the entry will be added to the path; otherwise, skipped. The default is false.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.RawXml.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.RawXml.html
new file mode 100644
index 00000000..719dbb0c
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.RawXml.html
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+ RawXml Element
+
+
+
Indicates if the namespace should be added to the XmlNamespaceManager. If true then the namespace will be added; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Indicates if the namespace should not be added to the XmlNamespaceManager. list. If false then the parameter will be added; otherwise, skipped. The default is false.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.XsltExtensionObject.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.XsltExtensionObject.html
new file mode 100644
index 00000000..27ac2a21
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.XsltExtensionObject.html
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+ <xsltextensionobject> Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ <xsltextensionobject>
+
+ v0.85
+
+
+
<xsltextensionobject>
+
Represents an XSLT extension object. The object should have a default parameterless constructor and the return value should be one of the four basic XPath data types of number, string, Boolean or node set.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
assembly
+
file
+
The assembly which contains the XSLT extension object.
+
True
+
+
+
typename
+
string
+
The full type name of the XSLT extension object.
+
True
+
+
+
if
+
bool
+
Indicates if the extension object should be added to the XSLT argument list. If true then the extension object will be added; otherwise, skipped. The default is true.
+
False
+
+
+
namespaceuri
+
string
+
The namespace URI to associate with the extension object.
+
False
+
+
+
unless
+
bool
+
Indicates if the extension object should not be added to the XSLT argument list. If false then the extension object will be added; otherwise, skipped. The default is false.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.XsltParameter.html b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.XsltParameter.html
new file mode 100644
index 00000000..ef7725ae
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.Core.Types.XsltParameter.html
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+ <xsltparameter> Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ <xsltparameter>
+
+ v0.85
+
+
+
<xsltparameter>
+
Represents an XSLT parameter.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
name
+
string
+
The name of the XSLT parameter.
+
True
+
+
+
value
+
string
+
The value of the XSLT parameter.
+
True
+
+
+
if
+
bool
+
Indicates if the parameter should be added to the XSLT argument list. If true then the parameter will be added; otherwise, skipped. The default is true.
+
False
+
+
+
namespaceuri
+
string
+
The namespace URI to associate with the parameter.
+
False
+
+
+
unless
+
bool
+
Indicates if the parameter should not be added to the XSLT argument list. If false then the parameter will be added; otherwise, skipped. The default is false.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Tasks.CompilerBase.html b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Tasks.CompilerBase.html
new file mode 100644
index 00000000..fd68e9db
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Tasks.CompilerBase.html
@@ -0,0 +1,308 @@
+
+
+
+
+
+
+
+ CompilerBase Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ CompilerBase
+
+ v0.85
+
+
+
CompilerBase
+
Provides the abstract base class for compiler tasks.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
output
+
file
+
The output file created by the compiler.
+
True
+
+
+
target
+
string
+
Output type. Possible values are exe, winexe, library or module.
+
True
+
+
+
debug
+
bool
+
Generate debug output. The default is false.
+
False
+
+
+
define
+
string
+
Define conditional compilation symbol(s).
+
False
+
+
+
keycontainer
+
string
+
Specifies the key pair container used to strongname the assembly.
+
False
+
+
+
keyfile
+
file
+
Specifies a strong name key file.
+
False
+
+
+
main
+
string
+
Specifies which type contains the Main method that you want to use as the entry point into the program.
+
False
+
+
+
nowarn
+
string
+
+ Deprecated. Specifies a comma-separated list of warnings that should be suppressed by the compiler.
+
False
+
+
+
rebuild
+
bool
+
Instructs NAnt to recompile the output file regardless of the file timestamps.
+
False
+
+
+
warnaserror
+
bool
+
Instructs the compiler to treat all warnings as errors. The default is false.
+
False
+
+
+
win32icon
+
file
+
Icon to associate with the application.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
supportskeycontainer
+
bool
+
Indicates whether the compiler for a given target framework supports the "keycontainer" option. The default is false.
+
False
+
+
+
supportskeyfile
+
bool
+
Indicates whether the compiler for a given target framework supports the "keyfile" option. The default is false.
+
False
+
+
+
supportsnowarnlist
+
bool
+
Indicates whether the compiler for a given target framework supports a command line option that allows a list of warnings to be suppressed. The default is false.
+
False
+
+
+
supportspackagereferences
+
bool
+
Indicates whether package references are supported by compiler for a given target framework. The default is false.
+
False
+
+
+
supportswarnaserrorlist
+
bool
+
Indicates whether the compiler for a given target framework supports the "warnaserror" option that takes a list of warnings. The default is false.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
If true then the value of the attribute will be set as is, without actually looking for a matching constructor or named properties. The default is false.
+
False
+
+
+
if
+
bool
+
Indicates if the attribute should be generated.
+
False
+
+
+
unless
+
bool
+
Indicates if the attribute should be not generated.
+
False
+
+
+
value
+
string
+
Value of the attribute.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.DotNetTasks (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.CompilerWarning.html b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.CompilerWarning.html
new file mode 100644
index 00000000..9b6b9556
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.CompilerWarning.html
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+ CompilerWarning Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ CompilerWarning
+
+ v0.85
+
+
+
CompilerWarning
+
Represents a compiler warning.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
number
+
string
+
A warning number, or comma-separated list of warnings, that you want the compiler to suppress or report.
+
True
+
+
+
if
+
bool
+
If true then the element will be processed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
If true then the element will be skipped; otherwise, processed. The default is false.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.DotNetTasks (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.DataTypeCollectionBase.html b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.DataTypeCollectionBase.html
new file mode 100644
index 00000000..824464d5
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.DataTypeCollectionBase.html
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+
+ DataTypeCollectionBase Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ DataTypeCollectionBase
+
+ v0.85
+
+
+
DataTypeCollectionBase
+
Base class for collections that needs to be globally referencable.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
id
+
string
+
The ID used to be referenced later.
+
False
+
+
+
refid
+
string
+
The ID to use as the reference.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.DotNetTasks (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.EmbeddedResourceCollection.html b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.EmbeddedResourceCollection.html
new file mode 100644
index 00000000..6cba8a76
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.EmbeddedResourceCollection.html
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+ EmbeddedResourceCollection Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ EmbeddedResourceCollection
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.LibDirectorySet.html b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.LibDirectorySet.html
new file mode 100644
index 00000000..25741f9f
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.LibDirectorySet.html
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+ LibDirectorySet Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ LibDirectorySet
+
+ v0.85
+
+
+
LibDirectorySet
+
A specialized <fileset> used for setting the lib directories.
The primary reason for this class is to allow the BaseDirectory to always be the same value as the parent <assemblyfileset>
Parameters
Attribute
Type
Description
Required
defaultexcludes
bool
Indicates whether default excludes should be used or not. The default is true.
False
failonempty
bool
When set to true, causes the fileset element to throw a ValidationException when no files match the includes and excludes criteria. The default is false.
False
id
string
The ID used to be referenced later.
False
refid
string
The ID to use as the reference.
False
Nested Elements:
+ <includes>
+
Deprecated. The items to include in the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to include.
True
asis
bool
If true then the file name will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the file will be searched for on the path. The default is false.
False
if
bool
If true then the pattern will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be included; otherwise, skipped. The default is false.
False
+ </includes>
+
+ <include>
+
The items to include in the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to include.
True
asis
bool
If true then the file name will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the file will be searched for on the path. The default is false.
False
if
bool
If true then the pattern will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be included; otherwise, skipped. The default is false.
False
+ </include>
+
+ <excludes>
+
Deprecated. The items to exclude from the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to exclude.
True
if
bool
If true then the pattern will be excluded; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be excluded; otherwise, skipped. The default is false.
False
+ </excludes>
+
+ <exclude>
+
The items to exclude from the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to exclude.
True
if
bool
If true then the pattern will be excluded; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be excluded; otherwise, skipped. The default is false.
False
+ </exclude>
+
+ <includesList>
+
Deprecated. The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
True
+ </includesList>
+
+ <includesfile>
+
The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
True
+ </includesfile>
+
+ <excludesfile>
+
The files from which a list of patterns or files to exclude should be obtained.
Parameters
Attribute
Type
Description
Required
name
file
The name of a file; each line of this file is taken to be a pattern.
True
if
bool
If true then the patterns will be excluded; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be excluded; otherwise, skipped. The default is false.
False
+ </excludesfile>
+
Requirements
Assembly: NAnt.DotNetTasks (0.85.2478.0)
+
See Also
<fileset>
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.NamespaceImport.html b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.NamespaceImport.html
new file mode 100644
index 00000000..7d7f6f40
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.DotNet.Types.NamespaceImport.html
@@ -0,0 +1,69 @@
+
+
+
+
+
+
+
+ <import> Element
+
+
+
Specifies the directory where the output file should be written to, if usefile is true. If not specified, the output file will be written to the directory where the test module is located.
+
False
+
+
+
usefile
+
bool
+
Determines whether output should be persisted to a file. The default is false.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.NUnit (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.NUnit1.Types.NUnitTest.html b/build-support/tools/nant/doc/help/elements/NAnt.NUnit1.Types.NUnitTest.html
new file mode 100644
index 00000000..3ad5700c
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.NUnit1.Types.NUnitTest.html
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+
+ <test> Element
+
+
+
The application configuration file to use for the NUnit test domain. If not specified, NAnt will try to use a configuration name matching the file name of the assembly with extension ".config".
+
False
+
+
+
assemblyname
+
file
+
Name of the assembly to search for tests.
+
False
+
+
+
haltonfailure
+
bool
+
Build fails on failure. The default is true.
+
False
+
+
+
testname
+
string
+
Name of a specific testfixture to run. If not specified then all testfixtures are run.
+
False
+
+
+
transformfile
+
file
+
XSLT transform file to use when using the Plain formatter.
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.SourceControl.Tasks.AbstractCvsTask.html b/build-support/tools/nant/doc/help/elements/NAnt.SourceControl.Tasks.AbstractCvsTask.html
new file mode 100644
index 00000000..02705cc0
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.SourceControl.Tasks.AbstractCvsTask.html
@@ -0,0 +1,230 @@
+
+
+
+
+
+
+
+ AbstractCvsTask Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ AbstractCvsTask
+
+ v0.85
+
+
+
AbstractCvsTask
+
A base class for creating tasks for executing CVS client commands on a CVS repository.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
compressionlevel
+
int
+
Compression level to use for all net traffic. This should be a value from 1-9.
NOTE: This is not available on sharpcvslib.
+
False
+
+
+
cvsfullpath
+
file
+
The full path to the cvs binary used. The cvs tasks will attempt to "guess" the location of your cvs binary based on your path. If the task is unable to resolve the location, or resolves it incorrectly this can be used to manually specify the path.
+
False
+
+
+
cvsroot
+
string
+
+
The cvs root variable has the following components:
+
+
[protocol]:[username]@[servername]:[server path]
+
+
protocol: ext, pserver, ssh (sharpcvslib); if you are not using sharpcvslib consult your cvs documentation.
+
username: [username]
+
servername: cvs.sourceforge.net
+
server path: /cvsroot/nant
+
+
+
+
False
+
+
+
cvsrsh
+
file
+
The executable to use for ssh communication.
+
False
+
+
+
module
+
string
+
The module to perform an operation on.
+
False
+
+
+
quiet
+
bool
+
Indicates if the output from the cvs command should be supressed. The default is false.
+
False
+
+
+
readonly
+
bool
+
+ true if the sandbox files should be checked out in read only mode. The default is false.
+
False
+
+
+
readwrite
+
bool
+
+ true if the sandbox files should be checked out in read/write mode. The default is true.
+
False
+
+
+
reallyquiet
+
bool
+
Indicates if the output from the cvs command should be stopped. The default is false.
+
False
+
+
+
usesharpcvslib
+
bool
+
+
+ true if the SharpCvsLib binaries that come bundled with NAnt should be used to perform the cvs commands, false otherwise.
+
You may also specify an override value for all cvs tasks instead of specifying a value for each. To do this set the property sourcecontrol.usesharpcvslib to false.
+ If you choose not to use SharpCvsLib to checkout from cvs you will need to include a cvs.exe binary in your path.
+
+
False
+
+
+
commandline
+
string
+
Command-line arguments for the program. The command line arguments are used to specify any cvs command options that are not available as attributes. These are appended after the command itself and are additive to whatever attributes are currently specified.
+
False
+
+
+
destination
+
directory
+
Destination directory for the local sandbox. If destination is not specified then the current directory is used.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
passfile
+
file
+
The full path to the cached password file. If not specified then the environment variables are used to try and locate the file.
+
False
+
+
+
password
+
string
+
+ Deprecated. The password for logging in to the repository.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.SourceControl.Tasks.AbstractSourceControlTask.html b/build-support/tools/nant/doc/help/elements/NAnt.SourceControl.Tasks.AbstractSourceControlTask.html
new file mode 100644
index 00000000..677127f5
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.SourceControl.Tasks.AbstractSourceControlTask.html
@@ -0,0 +1,158 @@
+
+
+
+
+
+
+
+ AbstractSourceControlTask Element
+
+
+
+
+
+
+ NAnt
+
+
+ Help
+
+ Element Reference
+ AbstractSourceControlTask
+
+ v0.85
+
+
+
AbstractSourceControlTask
+
A base class for creating tasks for executing CVS client commands on a CVS repository.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
commandline
+
string
+
Command-line arguments for the program. The command line arguments are used to specify any cvs command options that are not available as attributes. These are appended after the command itself and are additive to whatever attributes are currently specified.
+
False
+
+
+
destination
+
directory
+
Destination directory for the local sandbox. If destination is not specified then the current directory is used.
+
False
+
+
+
passfile
+
file
+
The full path to the cached password file. If not specified then the environment variables are used to try and locate the file.
+
False
+
+
+
password
+
string
+
+ Deprecated. The password for logging in to the repository.
+
False
+
+
+
ssh
+
file
+
The executable to use for ssh communication.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
If true then the element will be processed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
If true then the element will be skipped; otherwise, processed. The default is false.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.VisualCppTasks (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/elements/NAnt.VisualCpp.Types.Symbol.html b/build-support/tools/nant/doc/help/elements/NAnt.VisualCpp.Types.Symbol.html
new file mode 100644
index 00000000..84f4da29
--- /dev/null
+++ b/build-support/tools/nant/doc/help/elements/NAnt.VisualCpp.Types.Symbol.html
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+ Symbol Element
+
+
+
Replaces all occurrences of a given string in the original input with user-supplied replacement string.
+
This filter replaces all occurrences of a given string in the original input stream with a user-supplied replacement string. By default string comparisons are case sensitive but this can be changed by setting the optional ignorecase attribute to true.
+
To use this filter specify the string to be replaced with the from attribute and the string to replace it with using the to attribute.
+
Filters are intended to be used as a element of a <filterchain>.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
from
+
string
+
The string to be replaced.
+
True
+
+
+
ignorecase
+
bool
+
Determines if case will be ignored. The default is false.
+
False
+
+
+
to
+
string
+
The new value for the replaced string. Am empty string is permissible.
+
False
+
+
+
if
+
bool
+
If true then the filter will be used; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the filter will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
+
Examples
+
+
+
Replace all occurrences of "3.14" with "PI".
+
+<replacestring from="3.14" to="PI" />
+
+
+
+
Replace all occurrences of "string", "String", etc. with "System.String".
Replaces tokens in the original input with user-supplied values.
+
This filter replaces all token surrounded by a beginning and ending token. The default beginning and ending tokens both default to '@'. The optional begintoken and endtoken attributes can be specified to change either token. By default string comparisons are case sensitive but this can be changed by setting the optional ignorecase attribute to true.
+
Tokens are specified by using the Token element. It is possible to specify from 1 to n tokens and replacement values. Values can be any valid NAnt expression.
+
Filters are intended to be used as a element of a <filterchain>.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
begintoken
+
char
+
Marks the beginning of a token. The default is "@".
+
False
+
+
+
endtoken
+
char
+
Marks the end of a token. The default is "@".
+
False
+
+
+
ignorecase
+
bool
+
Determines if case will be ignored. The default is false.
+
False
+
+
+
if
+
bool
+
If true then the filter will be used; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the filter will be executed; otherwise, skipped. The default is false.
+ The function will fail in any of the following circumstances:
+
assemblyString is a a null reference (Nothing in Visual Basic).
assemblyString is not found.
Examples
Determine the location of the Microsoft Access 11 Primary Interop Assembly by loading it using its fully qualified name, and copy it to the build directory.
The string representation of value, consisting of a negative sign if the value is negative, and a sequence of digits ranging from 0 to 9 with no leading zeroes.
Remarks
value is formatted with the NumberFormatInfo for the invariant culture.
Requirements
Assembly: NAnt.Core (0.85.2478.0)
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/functions/long.parse.html b/build-support/tools/nant/doc/help/functions/long.parse.html
new file mode 100644
index 00000000..20f5d797
--- /dev/null
+++ b/build-support/tools/nant/doc/help/functions/long.parse.html
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+ long::parse Function
+
+
+
The string representation of value, consisting of a negative sign if the value is negative, and a sequence of digits ranging from 0 to 9 with no leading zeroes.
Remarks
value is formatted with the NumberFormatInfo for the invariant culture.
Requirements
Assembly: NAnt.Core (0.85.2478.0)
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/functions/math.abs.html b/build-support/tools/nant/doc/help/functions/math.abs.html
new file mode 100644
index 00000000..efd52b7f
--- /dev/null
+++ b/build-support/tools/nant/doc/help/functions/math.abs.html
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+ math::abs Function
+
+
+
The path information to modify. The path cannot contain any of the characters defined in InvalidPathCharsInvalidPathChars.
+
+
+
extension
+
string
+
The new extension (with a leading period). Specify a null reference to remove an existing extension from path.
+
+
+
+
Return Value
+
A string containing the modified path information.
+
On Windows-based desktop platforms, if path is an empty String, the path information is returned unmodified. If path has no extension, the returned path String contains extension appended to the end of path.
+
Exceptions
+ The function will fail in any of the following circumstances:
+
A string containing the combined paths. If one of the specified paths is a zero-length string, this method returns the other path. If path2 contains an absolute path, this method returns path2.
Exceptions
+ The function will fail in any of the following circumstances:
+
path1 or path2 contain one or more invalid characters.
Requirements
Assembly: NAnt.Core (0.85.2478.0)
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/functions/path.get-directory-name.html b/build-support/tools/nant/doc/help/functions/path.get-directory-name.html
new file mode 100644
index 00000000..327e148b
--- /dev/null
+++ b/build-support/tools/nant/doc/help/functions/path.get-directory-name.html
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+ path::get-directory-name Function
+
+
+
Determines whether a path string includes an extension.
+
Usage
+ bool path::has-extension(path)
+
+
+
Parameters
+
+
+
+
Name
+
Type
+
Description
+
+
+
path
+
string
+
The path to search for an extension.
+
+
+
+
Return Value
+ true. if the characters that follow the last directory separator or volume separator in the path include a period (.) followed by one or more characters; otherwise, false.
Exceptions
+ The function will fail in any of the following circumstances:
+
path contains one or more invalid characters.
Requirements
Assembly: NAnt.Core (0.85.2478.0)
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/functions/path.is-path-rooted.html b/build-support/tools/nant/doc/help/functions/path.is-path-rooted.html
new file mode 100644
index 00000000..f1c9312d
--- /dev/null
+++ b/build-support/tools/nant/doc/help/functions/path.is-path-rooted.html
@@ -0,0 +1,52 @@
+
+
+
+
+
+
+
+ path::is-path-rooted Function
+
+
+
Gets the name of the target that will be executed when no other build targets are specified.
+
Usage
+ string project::get-default-target()
+
+
+
Return Value
The name of the target that will be executed when no other build targets are specified, or an empty String if no default target is defined for the project.
Requirements
Assembly: NAnt.Core (0.85.2478.0)
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/functions/project.get-name.html b/build-support/tools/nant/doc/help/functions/project.get-name.html
new file mode 100644
index 00000000..00ae504f
--- /dev/null
+++ b/build-support/tools/nant/doc/help/functions/project.get-name.html
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+ project::get-name Function
+
+
+
The number of characters in the resulting string, equal to the number of original characters plus any additional padding characters.
+
+
+
paddingChar
+
string
+
A Unicode padding character.
+
+
+
+
Return Value
If the length of s is at least totalWidth, then a new String identical to s is returned. Otherwise, s will be padded on the left with as many paddingChar characters as needed to create a length of totalWidth.
Exceptions
+ The function will fail in any of the following circumstances:
+
totalWidth is less than zero.
Remarks
Note that only the first character of paddingChar will be used when padding the result.
The number of characters in the resulting string, equal to the number of original characters plus any additional padding characters.
+
+
+
paddingChar
+
string
+
A Unicode padding character.
+
+
+
+
Return Value
If the length of s is at least totalWidth, then a new String identical to s is returned. Otherwise, s will be padded on the right with as many paddingChar characters as needed to create a length of totalWidth.
Exceptions
+ The function will fail in any of the following circumstances:
+
totalWidth is less than zero.
Remarks
Note that only the first character of paddingChar will be used when padding the result.
In this example there are two targets, "clean" and "build". By default the
+ "build" target will be called.
+
+
Examples
+
You can find the files you need to try out these examples in the examples
+ folder that comes with the NAnt distribution.
+
+
+
nant
+
+
+
Runs NAnt and builds the project in debug mode (the default).
+
+
nant clean
+
+
+
Runs NAnt and removes the compiled files if they exist.
+
+
nant -D:debug=false
+
+
+
Runs NAnt and builds the project in non-debug mode. Even though the build
+ file sets the debug property to true, the value that is set on the command line
+ will not be touched, as the "overwrite" attribute on the
+ <property>
+ task is set to "false".
+
Important: Some tasks like the compiler tasks will only execute
+ if the date stamp of the generated file is older than the source files.
+ If you compile HelloWorld project in debug mode and then try to compile it
+ again in non-debug mode without first cleaning nothing will happen because NAnt
+ will think the project does not need rebuilding.
Expressions are simple, yet powerful mechanism that allows you to write advanced
+ formulas to be used in task arguments and conditions that direct the build
+ process. Expressions can access project properties
+ and call builtin or user-defined functions.
+
+ NAnt provides a rich set of bulitin functions, that allow you to:
+
+
+ manipulate strings
+
+ manipulate date/time values
+
+ manipulate path names
+
+ read the properties of files/directories
+
+ access current build information and more
+
+ and more
+
+
For a full list of supported functions, click here.
+
2 Expression Syntax
+
Expressions can be used in all task arguments, by using ${...} notation.
+ You may use standard syntax for arithmetical (addition, subtraction,
+ multiplication, division, modulus), logical (negation, conjunction,
+ alternative) and relational operators (equality, inequality). To call
+ functions, use prefix::function-name(argument1, ..., argumentN) syntax.
+ To access properties, you simply use their names without any prefix or suffix.
+ See the examples section below for more information.
+
NOTE: Expressions are often used in XML attributes. The grammar specified in this
+ section applies to the attribute value after XML 1.0 normalization. So, for
+ example, if the grammar uses the character <, this must not
+ appear in the XML source as < but must be quoted according to
+ XML 1.0 rules by, for example, entering it as <.
+
+
Examples:
+
+
+ Accessing a property:
+
+ <property name="build.version" value="3" />
+ <echo message="The current date is:
+ ${build.version}" />
+
+
This will output the current value of build.version property.
+
+
+ Calling a function
+
+ <echo message="The current date is:
+ ${datetime::now()}"
+ />
+
+
This will output the current date and time.
+
+
+ Storing the result of an expression
+
To store the result of an expression in a property, use the <property>
+ task:
This will set the property autoexec-present to either true
+ or false depending on whether the specified file exists or not.
+
+
+ Real-life expression use
+
+ <property name="myprj.basedir" value="c:\" />
+ <property name="filename" value="${path::combine(myprj.basedir,'version.txt')}"
+ />
+
+ <if test="${not file::exists(filename) or file::get-length(filename) = 0}">
+ <echo message="The version file
+ ${filename}
+ doesn't exist or is empty!" />
+ </if>
+
+
This will check for the existence of a file version.txt
+ in a directory specified by myprj.basedir. Note that this makes use of the
+ short-circuit evaluation supported by NAnt, so you can test for the existence
+ of the file and check its length in the same expression. ( ie like C, NAnt will
+ not evaluate the second part of an 'or' expression if the first evaluates to
+ true )
+
+
+
+ Using expressions to conditionally execute tasks
+
All tasks support if and unless attributes.
+ Expressions can be used there to control which tasks get executed:
+ This will rebuild the C# library only if it was last rebuilt more than an hour
+ ago.
+
+
+
+
3 Data types
+
Expressions can access, pass and return values of the following types:
+
+
+
+
+ Type
+
+ Allowed values
+
+
+
int
+
32-bit signed integer value
+
+
+
long
+
64-bit signed integer value
+
+
+
double
+
64-bit signed double precision floating point value
+
+
+
boolean
+
true or false
+
+
+
string
+
strings of characters of any length.
+
+
+
datetime
+
values represeting date & time (range is from 00:00:00, January 1, 1 AD to
+ 23:59:59, December 31, 9999 AD)
+
+
+
timespan
+
represents a time interval.
+
+
+
+
In addition, the expression evaluation engine allows you to return and pass
+ values of any CLI type through the use of custom
+ functions. Note that there's no support for implicit type conversions.
+
4 Operators
+
4.1 Operator precedence
+
NAnt expressions support standard ( c style ) operator precedence, that we're
+ accustomed to:
+
+
+ and is evaluated before or, left to right. For
+ example false or true and true and false evaluates as false or
+ ((true and true) and false)
+
+ multiplication,division and modulus are evaluated before addition and
+ subtraction, left to right. For example 1 + 2 * 3 / 4 evaluates as
+ 1 + ((2 * 3) / 4)
+
+ parentheses can be used to override the default operator precedence. For
+ example (1 + 2) * 3 evaluates as written, even though the
+ multiplication has precedence over addition
+
+
NOTE: Because NAnt supports properties whose names can contain dashes,
+ there's a possible ambiguity between the subtraction of two properties and
+ accessing a single property with a name containing a dash:
+
+ aaa-bbb - this is ambiguous. It could either be property aaa
+ MINUS property bbb or property aaa-bbb.
+
To avoid confusion, it's recommended to surround the subtraction operator (or
+ even better, all binary operators) with spaces. The expression aaa - bbb
+ always evaluates as a subtraction.
+
4.2 Operators on Numeric Values
+
The following operators are supported on numeric values:
+
+
+ + operator
+
+
+ - operator
+
+
+ * operator
+
+
+ / operator
+
+
+ % operator
+
+
+ == operator
+
+
+ != operator
+
+
+ > operator
+
+
+ >= operator
+
+
+ < operator
+
+
+ <= operator
+
+
+ unary plus
+
+
+ unary minus (negation)
+
+
+
4.2.1 Add
+
Summary
+
+ Returns the arithmetic sum of its operands.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
int
+
int
+
+ 1 + 5 evaluates to 6
+
+
+
+
int
+
long
+
+ 1 + 6666666667 evaluates to 6666666668
+
+
+
+
int
+
double
+
+ 1 + 5.0 evaluates to 6.0
+
+
+
+
long
+
long
+
+ 6666666667 + 11111111111 evaluates to 17777777778
+
+
+
+
long
+
int
+
+ 6666666667 + 1 evaluates to 6666666668
+
+
+
+
long
+
double
+
+ 6666666667 + 1.5 evaluates to 6666666668.5
+
+
+
+
double
+
double
+
+ 1.5 + 5.0 evaluates to 6.5
+
+
+
+
double
+
int
+
+ 1.0 + 5 evaluates to 6.0
+
+
+
+
double
+
long
+
+ 1.5 + 6666666667 evaluates to 6666666668.5
+
+
+
+
+
4.2.2 Subtract
+
Summary
+
+ Returns the arithmetic difference of its operands.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
int
+
int
+
+ 5 - 1 evaluates to 4
+
+
+
+
int
+
long
+
+ 5 - 6666666667 evaluates to -6666666662
+
+
+
+
int
+
double
+
+ 5.0 - 1 evaluates to 4.0
+
+
+
+
long
+
long
+
+ 11111111111 - 6666666667 evaluates to 4444444444
+
+
+
+
long
+
int
+
+ 6666666667 - 5 evaluates to 6666666662
+
+
+
+
long
+
double
+
+ 6666666667 - 1.5 evaluates to 6666666665.5
+
+
+
+
double
+
double
+
+ 5.0 - 1.0 evaluates to 4.0
+
+
+
+
double
+
int
+
+ 5.0 - 1 evaluates to 4.0
+
+
+
+
double
+
long
+
+ 1.5 - 6666666667 evaluates to -6666666665.5
+
+
+
+
+
4.2.3 Multiply
+
Summary
+
+ Returns the arithmetic product of its operands.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
int
+
int
+
+ 5 * 2 evaluates to 10
+
+
+
+
int
+
long
+
+ 2 * 6666666667 evaluates to 13333333334
+
+
+
+
int
+
double
+
+ 5 * 2.0 evaluates to 10.0
+
+
+
+
long
+
long
+
+ 6666666667 * long::parse('2') evaluates to 13333333334
+
+
+
+
long
+
int
+
+ 6666666667 * 2 evaluates to 13333333334
+
+
+
+
long
+
double
+
+ 6666666667 * 1.7 evaluates to 11333333333.9
+
+
+
+
double
+
double
+
+ 5.0 * 2.0 evaluates to 10.0
+
+
+
+
double
+
int
+
+ 5.0 * 2 evaluates to 10.0
+
+
+
+
double
+
long
+
+ 1.7 * 6666666667 evaluates to 11333333333.9
+
+
+
+
+
4.2.4 Divide
+
Summary
+
+ Returns the arithmetic quotient of its operands.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
int
+
int
+
+ 10 / 2 evaluates to 5
+
+
+
+
int
+
long
+
+ 10 / 10000000000 evaluates to 0.000000001
+
+
+
+
int
+
double
+
+ 8 / 2.0 evaluates to 4.0
+
+
+
+
long
+
long
+
+ 13333333334 / 6666666667 evaluates to 2
+
+
+
+
long
+
int
+
+ 13333333334 / 2 evaluates to 6666666667
+
+
+
+
long
+
double
+
+ 13333333334 / 2.0 evaluates to 6666666667.0
+
+
+
+
double
+
double
+
+ 9.0 / 2.0 evaluates to 4.5
+
+
+
+
double
+
int
+
+ 6.0 / 3 evaluates to 2.0
+
+
+
+
double
+
long
+
+ 20000000000.0 / 10000000000 evaluates to 2.0
+
+
+
+
+
Remarks
+
+ If the divisor is zero, then an error is raised.
+
+
4.2.5 Mod
+
Summary
+
+ Returns the remainder after dividing its first operand by its second.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
int
+
int
+
+ 5 % 3 evaluates to 2
+
+
+
+
int
+
long
+
+ 10 % 6666666667 evaluates to 10
+
+
+
+
int
+
double
+
+ 5 % 3.5 evaluates to 1.5
+
+
+
+
long
+
long
+
+ 13333333334 % 6666666667 evaluates to 0
+
+
+
+
long
+
int
+
+ 6666666667 % 10 evaluates to 7
+
+
+
+
long
+
double
+
+ 6666666667 % 3.5 evaluates to 3.0
+
+
+
+
double
+
double
+
+ 9.0 % 4.7 evaluates to 4.3
+
+
+
+
double
+
int
+
+ 8.5 % 2 evaluates to 0.5
+
+
+
+
double
+
long
+
+ 20000000000.0 % 6666666667 evaluates to 6666666666.0
+
+
+
+
+
Remarks
+
+ If the divisor is zero, then an error is raised.
+
+
4.2.6 Equal
+
Summary
+
+ Returns true if and only if the value of the first operand is equal to the
+ value of the second operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
int
+
int
+
+ 5 == 3 evaluates to false
+
+
+
+
int
+
long
+
+ 5 == 6666666667 evaluates to false
+
+
+
+
int
+
double
+
+ 6 == 6.0 evaluates to true
+
+
+
+
long
+
long
+
+ 6666666667 == 6666666667 evaluates to true
+
+
+
+
long
+
int
+
+ 6666666667 == 665 evaluates to false
+
+
+
+
long
+
double
+
+ 6666666667 == 6666666667.0 evaluates to true
+
+
+
+
double
+
double
+
+ 9.5 == 6.7 evaluates to false
+
+
+
+
double
+
int
+
+ 8.5 == 8 evaluates to false
+
+
+
+
double
+
long
+
+ 8.5 == 6666666667 evaluates to false
+
+
+
+
+
4.2.7 Inequal
+
Summary
+
+ Returns true if and only if the value of the first operand is not equal to the
+ value of the second operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
int
+
int
+
+ 5 != 3 evaluates to true
+
+
+
+
int
+
long
+
+ 5 != 6666666667 evaluates to true
+
+
+
+
int
+
double
+
+ 6 != 6.0 evaluates to false
+
+
+
+
long
+
long
+
+ 6666666667 != 6666666667 evaluates to false
+
+
+
+
long
+
int
+
+ 6666666667 != 665 evaluates to true
+
+
+
+
long
+
double
+
+ 6666666667 != 6666666667.0 evaluates to false
+
+
+
+
double
+
double
+
+ 9.5 != 6.7 evaluates to true
+
+
+
+
double
+
int
+
+ 8.5 != 8 evaluates to true
+
+
+
+
double
+
long
+
+ 8.5 != 6666666667 evaluates to true
+
+
+
+
+
4.2.8 Greater than
+
Summary
+
+ Returns true if and only if the first operand is greater than the
+ second operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
int
+
int
+
+ 5 > 3 evaluates to false
+
+
+
+
int
+
long
+
+ 5 > 6666666667 evaluates to false
+
+
+
+
int
+
double
+
+ 6 > 4.0 evaluates to true
+
+
+
+
long
+
long
+
+ 6666666667 > 6666666667 evaluates to false
+
+
+
+
long
+
int
+
+ 6666666667 > 665 evaluates to true
+
+
+
+
long
+
double
+
+ 6666666667 > 6666666667.0 evaluates to false
+
+
+
+
double
+
double
+
+ 9.5 > 9.5 evaluates to false
+
+
+
+
double
+
int
+
+ 8.3 > 9 evaluates to false
+
+
+
+
double
+
long
+
+ 8.5 > 6666666667 evaluates to false
+
+
+
+
+
4.2.9 Greater than or equal
+
Summary
+
+ Returns true if and only if the first operand is greater than or
+ equal to second operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
int
+
int
+
+ 5 >= 3 evaluates to false
+
+
+
+
int
+
long
+
+ 5 >= 6666666667 evaluates to false
+
+
+
+
int
+
double
+
+ 6 >= 4.0 evaluates to true
+
+
+
+
long
+
long
+
+ 6666666667 >= 6666666667 evaluates to true
+
+
+
+
long
+
int
+
+ 6666666667 >= 665 evaluates to true
+
+
+
+
long
+
double
+
+ 6666666667 >= 6666666667.0 evaluates to true
+
+
+
+
double
+
double
+
+ 9.5 >= 9.5 evaluates to true
+
+
+
+
double
+
int
+
+ 8.3 >= 9 evaluates to false
+
+
+
+
double
+
long
+
+ 8.5 >= 6666666667 evaluates to false
+
+
+
+
+
4.2.10 Less than
+
Summary
+
+ Returns true if and only if the first operand is less than the
+ second operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
int
+
int
+
+ 5 < 3 evaluates to false
+
+
+
+
int
+
long
+
+ 5 < 6666666667 evaluates to true
+
+
+
+
int
+
double
+
+ 6 < 7.0 evaluates to true
+
+
+
+
long
+
long
+
+ 6666666667 < 6666666667 evaluates to false
+
+
+
+
long
+
int
+
+ 6666666667 < 665 evaluates to false
+
+
+
+
long
+
double
+
+ 6666666667 < 6666666667.0 evaluates to false
+
+
+
+
double
+
double
+
+ 9.5 < 9.5 evaluates to false
+
+
+
+
double
+
int
+
+ 8.3 < 9 evaluates to true
+
+
+
+
double
+
long
+
+ 8.5 < 6666666667 evaluates to true
+
+
+
+
+
4.2.11 Less than or equal
+
Summary
+
+ Returns true if and only if the first operand is less than or
+ equal to second operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
int
+
int
+
+ 5 <= 3 evaluates to false
+
+
+
+
int
+
long
+
+ 5 <= 6666666667 evaluates to true
+
+
+
+
int
+
double
+
+ 6 <= 7.0 evaluates to true
+
+
+
+
long
+
long
+
+ 6666666667 <= 6666666667 evaluates to true
+
+
+
+
long
+
int
+
+ 6666666667 <= 665 evaluates to false
+
+
+
+
long
+
double
+
+ 6666666667 <= 6666666667.0 evaluates to true
+
+
+
+
double
+
double
+
+ 9.5 <= 9.5 evaluates to true
+
+
+
+
double
+
int
+
+ 8.3 <= 9 evaluates to true
+
+
+
+
double
+
long
+
+ 8.5 <= 6666666667 evaluates to true
+
+
+
+
+
4.2.12 Unary plus
+
Summary
+
+ Returns its operand with the sign unchanged. Semantically, this operation
+ performs no operation.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Operand
+
+ Example
+
+
+
int
+
+ (+1) evaluates to 1
+
+
+
+
long
+
+ (+6666666667) evaluates to 6666666667
+
+
+
+
double
+
+ (+1.5) evaluates to 1.5
+
+
+
+
+
4.2.13 Unary minus
+
Summary
+
+ Returns its operand with the sign reversed.
+
+
+ If the operand is positive, its negative is returned; if it is negative, its
+ positive is returned.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Operand
+
+ Example
+
+
+
int
+
+ (-1) evaluates to -1
+
+
+
+
long
+
+ (-6666666667) evaluates to -6666666667
+
+
+
+
double
+
+ (-9.6) evaluates to -9.6
+
+
+
+
+
4.3 Operators on Boolean Values
+
The following operators are supported on boolean values:
+
+
+ == operator
+
+
+ != operator
+
+
+ > operator
+
+
+ >= operator
+
+
+ < operator
+
+
+ <= operator
+
+
+ and operator
+
+
+ or operator
+
+
+
4.3.1 Equal
+
Summary
+
+ Returns true if both operands are true or if both
+ operands are false.
+
+
Examples
+
4.3.2 Inequal
+
Summary
+
+ Returns true if the first operand is true and the
+ second operand is false, or the first operand is false
+ and the second operand is true.
+
+
Examples
+
4.3.3 Greater than
+
Summary
+
+ Returns true if the first operand is true and the
+ second operand is false; otherwise, returns false.
+
+
Examples
+
4.3.4 Greater than or equal
+
Summary
+
+ Returns true if the first operand is true and the
+ second operand is false, or both operands are either true
+ or false.
+
+
Examples
+
4.3.5 Less than
+
Summary
+
+ Returns true if the first operand is false and the
+ second operand is true; otherwise, returns false.
+
+
Examples
+
4.3.6 Less than or equal
+
Summary
+
+ Returns true if the first operand is false and the
+ second operand is true, or both operands are either true
+ or false.
+
+
Examples
+
4.3.7 Logical and
+
Summary
+
+ Returns true if both operands are true,
+ otherwise returns false.
+
+
Examples
+
+ <if test="${A and B}">
+
+
+
4.3.8 Logical or
+
Summary
+
+ Returns true if either operand is true,
+ otherwise returns false.
+
+
Examples
+
+ <if test="${A or B}">
+
+
4.4 Operators on String Values
+
The following operators are supported on string values:
+
+
+ + operator
+
+
+ == operator
+
+
+ != operator
+
+
+ > operator
+
+
+ >= operator
+
+
+ < operator
+
+
+ <= operator
+
+
+
4.4.1 Concat
+
Summary
+
+ Returns the concatenation of both string operands.
+
+
Examples
+
4.4.2 Equal
+
Summary
+
+ Returns true if the value of the left operand is the same as the
+ value of the right operand.
+
+
Remarks
+
+ The comparison is case-sensitive and culture-insensitive.
+
+
4.4.3 Inequal
+
Summary
+
+ Returns true if the value of the first operand is not the same as
+ the value of the second operand.
+
+
Remarks
+
+ The comparison is case-sensitive and culture-insensitive.
+
+
4.4.4 Greater than
+
Summary
+
+ Returns true if the first operand is greater than the seconds
+ operand.
+
+
Remarks
+
+ The comparison is case-sensitive and culture-insensitive.
+
+
4.4.5 Greater than or equal
+
Summary
+
+ Returns true if the first operand is greater than or equal to the
+ seconds operand.
+
+
Remarks
+
+ The comparison is case-sensitive and culture-insensitive.
+
+
4.4.6 Less than
+
Summary
+
+ Returns true if the first operand is less than the seconds
+ operand.
+
+
Remarks
+
+ The comparison is case-sensitive and culture-insensitive.
+
+
4.4.7 Less than or equal
+
Summary
+
+ Returns true if the first operand is less than or equal to the
+ seconds operand.
+
+
Remarks
+
+ The comparison is case-sensitive and culture-insensitive.
+
+
4.5 Operators on TimeSpan and DateTime Values
+
The following operators are supported on timespan and datetime values:
+
+
+ + operator
+
+
+ - operator
+
+
+ == operator
+
+
+ != operator
+
+
+ > operator
+
+
+ >= operator
+
+
+ < operator
+
+
+ <= operator
+
+
+
4.5.1 Add
+
Summary
+
+ Returns the result of adding the value of the left operand to the value of the
+ right operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
datetime
+
timespan
+
+ datetime::now() + timespan::from-days(10)
+ evaluates to a datetime 10 days in the future
+
+
+
+
timespan
+
timespan
+
+ timespan::from-seconds(30) + timespan::from-minutes(10)
+ evaluates to a timespan representing a duratio of 10 minutes and 30
+ seconds
+
+
+
+
+
4.5.2 Subtract
+
Summary
+
+ Returns the result of subtracting the value of the right operand
+ from the value of the left operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
datetime
+
datetime
+
+ (datetime::now() + timespan::from-days(10)) - datetime::now
+ evaluates to a timespan representing a duration of 10 days
+
+
+
+
datetime
+
timespan
+
+ timespan::from-seconds(30) - timespan::from-seconds(10) evaluates
+ to a timespan representing a duration of 20 seconds
+
+
+
+
timespan
+
timespan
+
+ timespan::from-seconds(30) + timespan::from-minutes(10) evaluates
+ to a timespan representing 10 minutes and 30 seconds
+
+
+
+
+
4.5.3 Equal
+
Summary
+
+ Returns true if the value of the left operand is the same as the
+ value of the right operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
datetime
+
datetime
+
+ datetime::now() == (datetime::now()+timespan::from-days(10)) evaluates
+ to false
+
+
+
+
timespan
+
timespan
+
+ timespan::from-seconds(30) == timespan::from-seconds(30) evaluates
+ to true
+
+
+
+
+
4.5.4 Inequal
+
Summary
+
+ Returns true if the value of the left operand is not the same as
+ the value of the right operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
datetime
+
datetime
+
+ datetime::now() != (datetime::now()+timespan::from-days(10)) evaluates
+ to true
+
+
+
+
timespan
+
timespan
+
+ timespan::from-seconds(30) != timespan::from-seconds(30) evaluates
+ to false
+
+
+
+
+
4.5.5 Greater than
+
Summary
+
+ Returns true if the value of the left operand is greater than the
+ value of the right operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
datetime
+
datetime
+
+ datetime::now() > (datetime::now()+timespan::from-days(10)) evaluates
+ to false
+
+
+
+
timespan
+
timespan
+
+ timespan::from-seconds(30) > timespan::from-seconds(30) evaluates
+ to false
+
+
+
+
+
4.5.6 Greater than or equal
+
Summary
+
+ Returns true if the value of the left operand is greater than or
+ equal to the value of the right operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
datetime
+
datetime
+
+ datetime::now() >= (datetime::now()+timespan::from-days(10)) evaluates
+ to false
+
+
+
+
timespan
+
timespan
+
+ timespan::from-seconds(30) >= timespan::from-seconds(30) evaluates
+ to false
+
+
+
+
+
4.5.7 Less than
+
Summary
+
+ Returns true if the value of the left operand is less than the
+ value of the right operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
datetime
+
datetime
+
+ datetime::now() < (datetime::now()+timespan::from-days(10)) evaluates
+ to true
+
+
+
+
timespan
+
timespan
+
+ timespan::from-seconds(30) < timespan::from-seconds(30) evaluates
+ to false
+
+
+
+
+
4.5.8 Less than or equal
+
Summary
+
+ Returns true if the value of the left operand is less than the
+ value of the right operand.
+
+
Operands
+
+
+
+
+
+
+
+
+
+ Left Operand
+
+ Right Operand
+
+ Example
+
+
+
datetime
+
datetime
+
+ datetime::now() <= (datetime::now()+timespan::from-days(10)) evaluates
+ to false
+
+
+
+
timespan
+
timespan
+
+ timespan::from-seconds(30) <= timespan::from-seconds(30) evaluates
+ to true
+
NAnt provides a rich set of bulitin functions, that allow you to:
+
+
+ manipulate strings
+
+ manipulate date/time values
+
+ manipulate path names
+
+ read the properties of files/directories
+
+ access current build information and more
+
+ and more
+
+
For a full list of supported functions, click here.
+
Function Call Syntax
+
+ To call functions, use prefix::function-name(argument1, ..., argumentN)
+ syntax within expressions. NAnt will (implicitly) try to convert the arguments
+ you pass to functions to correct types and will report an error in case of
+ failure.
+
+
+ For example, assuming you would like to call string::contains('0123456789',1)
+ which expects two string parameters, but you want to pass the
+ second parameter which is an integer. NAnt would attempt to convert the second
+ parameter from int to string, which succeeds and
+ function is called as if it was written as string::contains('0123456789','1').
+
+
The following table shows the possible type conversions:
+
+
+
+
+ From Type
+
+ To Type
+
+ Allowed
+
+ Remarks
+
+
+
int
+
string
+
Yes
+
The conversion is always possible.
+
+
+
int
+
double
+
Yes
+
The conversion is always possible.
+
+
+
int
+
boolean
+
No
+
Can be done with the if() conditional operator or simply as (value
+ <> 0)
+
+
+
int
+
datetime
+
No
+
You cannot convert from int to datetime.
+
+
+
int
+
timespan
+
No
+
You can use the timespan::from-xxx functions to construct a timespan from a given number of days, months, ....
+
+
+
+
+
+
+
string
+
int
+
Yes
+
If the string doesn't represent an integer value, an error is reported.
+
+
+
string
+
double
+
Yes
+
If the string doesn't represent a floating point value, an error is reported.
+
+
+
string
+
boolean
+
Yes
+
If the string isn't either true or false (case
+ insensitive), an error is reported.
+
+
+
string
+
datetime
+
Yes
+
If the string doesn't represent a valid date/time, an error is reported.
+ Date/time string format is MM/DD/YYYY HH:MI:SS
+
+
+
string
+
timespan
+
No
+
+ You can use timespan::parse to construct a timespan
+ from a time indicated by a given string. If the string doesn't represent a valid
+ timespan, an error is reported.
+
+
+
+
+
+
+
+
double
+
int
+
Yes
+
If the string doesn't represent an integer value, an error is reported.
+
+
+
double
+
string
+
Yes
+
The converted string uses dot as a fractional part separator so the result
+ looks like 0.1234567
+
+
+
double
+
boolean
+
No
+
You cannot convert from double to boolean.
+
+
+
double
+
datetime
+
No
+
You cannot convert from double to datetime.
+
+
+
double
+
timespan
+
No
+
You can use the timespan::from-xxx functions to construct a timespan from a given number of days, months, ....
+
+
+
+
+
+
+
boolean
+
int
+
No
+
You cannot convert from boolean to int. You may
+ want to use if(boolvalue,1,0) instead.
+
+
+
boolean
+
string
+
Yes
+
The result is 'True' or 'False' string.
+
+
+
boolean
+
double
+
No
+
You cannot convert from boolean to double.
+
+
+
boolean
+
datetime
+
No
+
You cannot convert from boolean to datetime.
+
+
+
boolean
+
timespan
+
No
+
You cannot convert from boolean to timespan.
+
+
+
+
+
+
+
datetime
+
int
+
No
+
You cannot convert from datetime to int.
+
+
+
datetime
+
string
+
Yes
+
The result is a datetime string with the following format: MM/DD/YYYY HH:MI:SS
+
+
+
datetime
+
double
+
No
+
You cannot convert from datetime to double.
+
+
+
datetime
+
boolean
+
No
+
You cannot convert from datetime to boolean.
+
+
+
datetime
+
timespan
+
No
+
You can use the value of datetime::get-ticks to construct a timespan using timespan::from-ticks.
+
+
+
+
+
+
+
timespan
+
int
+
No
+
You cannot convert from timespan to int.
+
+
+
timespan
+
double
+
No
+
You can use timespan::get-ticks to convert from timespan to double.
+
+
+
timespan
+
boolean
+
No
+
You cannot convert from timespan to boolean.
+
+
+
timespan
+
string
+
No
+
You can use timespan::to-string to obtain the string representation of a timespan.
+
+
+
timespan
+
datetime
+
No
+
You cannot convert from timespan to datetime.
+
+
+
+
Custom Functions
+
+ Just as you can extend NAnt with your own tasks it is also possible to
+ implement your own functions for use in build files.
+
Functions can be implemented in any .NET language and are loaded in the same
+ manner as tasks. ie either by locating your custom function assembly in the
+ NAnt bin directory or using the <loadtasks>
+ task. Example C# code for a Hello World function :
+
A quick and easy way to develop new functions is to use the
+ <script> task. This allows you to create and test new functions
+ without the overhead of building an external assembly. The
+ <script> task documentation contains examples of custom function
+ definitions.
+ NAnt has two related features to allow the build process to be monitored:
+ listeners and loggers.
+
+
Listeners
+
+ A listener is alerted of the following events:
+
+
+
+ build started
+
+
+ build finished
+
+
+ target started
+
+
+ target finished
+
+
+ task started
+
+
+ task finished
+
+
+ message logged
+
+
Loggers
+
+ Loggers extend the capabilities of listeners and add the following features:
+
+
+
+ Receives a handle to the standard output and error print streams and therefore
+ can log information to the console or the -logfile
+ specified file.
+
+ The MailLogger captures all output logged through DefaultLogger (standard NAnt
+ output) and will send success and failure messages to unique e-mail lists, with
+ control for turning off success or failure messages individually.
+
+
Properties controlling the operation of MailLogger are:
+
+
+
+
+
+
+
+
+
+
+ Property
+
+ Description
+
+ Required
+
+
+
MailLogger.mailhost
+
The SMTP server to use.
+
No, default is "localhost"
+
+
+
MailLogger.from
+
The address of the e-mail sender.
+
Yes, if mail needs to be sent.
+
+
+
MailLogger.failure.notify
+
Send build failure e-mails ?
+
No, default is "true".
+
+
+
MailLogger.success.notify
+
Send build success e-mails ?
+
No, default is "true".
+
+
+
MailLogger.failure.to
+
The address to send build failure messages to.
+
Yes, if failure mail is to be sent.
+
+
+
MailLogger.success.to
+
The address to send build success messages to.
+
Yes, if success mail is to be sent.
+
+
+
MailLogger.failure.subject
+
The subject of build failure messages.
+
No, default is "Build Failure".
+
+
+
MailLogger.success.subject
+
The subject of build success messages.
+
No, default is "Build Success".
+
+
+
MailLogger.failure.attachments
+
The ID of a fileset representing a set of files to attach when the build fails.
+
No.
+
+
+
MailLogger.success.attachments
+
The ID of a fileset representing a set of files to attach when the build is successful.
+
No.
+
+
+
MailLogger.body.encoding
+
The encoding type of the body of the e-mail message.
+
No, default is system's ANSI code page.
+
+
+
MailLogger.smtp.username1
+
The name of the user to login to the SMTP server.
+
No.
+
+
+
MailLogger.smtp.password1
+
The password of the specified user.
+
No.
+
+
+
MailLogger.smtp.enablessl1
+
Specifies whether to use SSL to encrypt the connection.
+
No, default is "false".
+
+
+
MailLogger.smtp.port1
+
The SMTP server port to connect to.
+
No, default is "25".
+
+
+
+
1 Only available when NAnt is built targeting .NET Framework 1.1 (or equivalent) or higher.
+ Writes all build information out to an XML file named log.xml, or
+ the value of the XmlLogger.file property if present, when used as
+ a listener. When used as a logger, it writes all output to either the console
+ or to the value of -logfile.
+
+
+ Whether used as a listener or logger, the output is not generated until the
+ build is complete.
+
The default target to execute when no target is supplied on the command-line.
+
No
+
+
+
basedir
+
The base directory from which all path calculations are done. If not set, the parent directory of the buildfile will be used.
+
No
+
+
+
+
+
Optionally, a description for the project can be provided as a top-level <description>
+ element. The text contained in the description element is used when the -projecthelp command line option is used. See the
+ example build file for details.
+
Each project defines zero or more targets.
+ A target is a set of tasks to be
+ executed. When starting NAnt, you can select which target(s) you want to
+ have executed. When no target is given, the project's default target is used.
+ When no target and no default target are specified, only the global tasks of the
+ project are executed.
A project can have a set of properties. These might be set in the
+ buildfile by the <property> task, or
+ might be set outside NAnt. A property has a name and a value. Properties
+ may be used in the value of task attributes. This is done by placing the
+ property name between "${" and "}" in the attribute
+ value. Properties may also be used in expressions.
+
+
2 Naming rules
+
A property name is a string of the following characters:
+
+
+ letters (A-Z, a-z),
+
+ digits (0-9),
+
+ underscore characters (_),
+
+ dash characters (-),
+
+ dot characters (.),
+
+
In addition, a valid property name must start with a letter or an underscore and
+ must end with a letter, digit or an uderscore.
+
Examples of valid property names include:
+
+
+ propertyname
+
+ property.name.with.dots
+
+ property-name-with-dashes
+
+ property.name-with.both-dots.and-dashes
+
+ __prop---3-erty__
+
+ __prop.1...erty__
+
+ property1
+
+ property1.0
+
+ property2.0.0
+
+ _property-2-1__
+
+ property-1-name_
+
+ property-1.0-name
+
+
The following property names are not valid in NAnt:
+
+
+ !@#!@$!@ (contains illegal characters)
+
+ .aaaaa (starts with a dot)
+
+ -aaaaa (starts with a dash)
+
+ 1aaaaa (starts with a digit)
+
+ aaaaa.aaa.a.a.a.a- (ends with a dash)
+
+ aaaaa.aaa.a.a.a.a. (ends with a dot)
+
+
3 Built-in Properties
+
NAnt has these built-in properties:
+
+
+
+
+
+ Property
+
+ Description
+
+
+
nant.version
+
Deprecated. The version of NAnt.
+
+
+
nant.filename
+
Deprecated. The full path to the NAnt assembly.
+
+
+
nant.location
+
Deprecated. The base directory of the NAnt assembly.
+
+
+
nant.project.basedir
+
Deprecated. The absolute path of the project's basedir.
+
+
+
nant.project.buildfile
+
Deprecated. The absolute path of the buildfile.
+
+
+
nant.project.name
+
Deprecated. The name of the project.
+
+
+
nant.project.default
+
Deprecated. The name of the project's default target.
+
+
+
nant.onsuccess
+
The name of a target to be executed when the build succeeds.
+
+
+
nant.onfailure
+
The name of a target to be executed when the build fails.
+
+
+
nant.tasks.*
+
Deprecated. Each task available to nant has a "true" value, e.g.,
+ nant.tasks.copy
+
+
+
+
+
3.1 Framework related Properties:
+
+
+
+
+
+ Property
+
+ Description
+
+
+
nant.settings.currentframework
+
The current target framework, eg. 'net-1.0'.
+
+
+
nant.settings.currentframework.description
+
Deprecated. Description of the current target framework.
+
+
+
nant.settings.currentframework.frameworkdirectory
+
Deprecated. The framework directory of the current target framework.
+
+
+
nant.settings.currentframework.sdkdirectory
+
Deprecated. The framework SDK directory of the current target framework.
Deprecated. The framework assembly directory of the current target
+ framework.
+
+
+
nant.settings.currentframework.runtimeengine
+
Deprecated. The runtime engine of the current target framework if used
+ eg. mono.exe.
+
+
+
+
+
3.2 Platform related Properties:
+
+
+
+
+
+ Property
+
+ Description
+
+
+
nant.platform.name
+
Deprecated. The name of the platform on which NAnt is currently running
+ - either win32 or unix.
+
+
+
nant.platform.win32
+
Deprecated. Holds the value true if NAnt is running on the
+ win32 platform; otherwise, false.
+
+
+
nant.platform.unix
+
Deprecated. Holds the value true if NAnt is running on the
+ unix platform; otherwise, false.
+
+
+
+
+
4 Read-only Properties
+
+ A property can be explicitly marked read-only by setting the
+ "readonly" attribute on the <property>
+ task to true.
+
+
+ The value of a read-only property cannot be modified after it has been set.
+
+
+ When attempting to override a read-only property using the
+ <property> task, the new value will be ignored and a warning
+ message will be output in the build log. Attempting to override read-only
+ properties using any other means (eg. other tasks) will result in a build
+ failure.
+
+
Note: properties set on the command-line are always read-only.
+
5 Global Properties
+
Properties that should be accessible to all build files on a system can be
+ defined in the <properties> node of the NAnt configuration
+ file (NAnt.exe.config).
+
By changing the value of the property in the NAnt configuration file, the
+ updated value will be accessible to all build files on the system:
+
+ <?xml version="1.0"?>
+ <configuration>
+ ...
+ <nant>
+ ...
+ <properties>
+ <!-- properties defined here are accessible to all build files -->
+ <property name="company.name" value="Foo Ltd." readonly="true" />
+ </properties>
+ </nant>
+ </configuration>
+
+
Individual build files can then use this property:
+ Running NAnt is simple once you have it
+ installed, just type NAnt. Type
+ NAnt -help to get usage information.
+
Specifying the Build File
+
+ When nothing is specified, NAnt looks for a file ending with .build,
+ e.g., NAnt.build, in the current directory. If found, it
+ uses that file as the build file. If more than one file is found you need
+ to specify the build file using the -buildfile option (see below).
+
+ If you use the -find option, NAnt will search for a build file in
+ the parent directory, and so on, until the root of the file system has been
+ reached. To make NAnt use another build file, use the command-line option
+ -buildfile:file, where file is the build file you want to
+ use.
+
Specifying Targets
+
+ You can specify one or more targets that should be executed. When omitted, the
+ target that is specified in the default attribute of the <project>
+ tag is used.
+
+ The -projecthelp option prints out the description of the project,
+ if it exists, followed by a list of the project's targets. First those with a
+ description, then those without one.
+
Setting Properties
+
+ To override properties specified in the build file use the
+ -D:property=value option, where property is the
+ name of the property, and value is the value for that property.
+
Examples
+
+
+
NAnt
+
+
+
+ Runs NAnt using the file ending in *.build.xml file in the
+ current directory, on the default target.
+
+
+
NAnt -buildfile:..\ProjectName.build
+
+
+
+ Runs NAnt using the ProjectName.build file in the parent
+ directory, on the default target.
+
+
+
NAnt clean
+
+
+
+ Runs NAnt using the default build file in the current directory, on a target
+ called clean.
+
+
+
NAnt -D:debug=false clean dist
+
+
+
+ Runs NAnt using the default build file in the current directory, first on
+ the clean target and then on the dist target
+ while setting the debug property to false. This
+ could, for example, make a release distribution from scratch.
A comma-separated list of names of targets on which this target depends.
+
No
+
+
+
if
+
An expression that should evaluate to true in order for this target to
+ execute.
+
No
+
+
+
unless
+
An expression that, when evaluated to true, will cause the target to be
+ skipped.
+
No
+
+
+
description
+
A short description of this target's function.
+
No
+
+
+
+
+
+ The optional description attribute can be used to provide a
+ one-line description of this target, which is printed by the
+ -projecthelp command-line option.
+
Dependencies
+
+ A target can depend on other targets. You might have a target for
+ compiling, for example, and a target for creating a distributable. You
+ can only build a distributable when you have compiled first, so the distribute
+ target depends on the compile target. NAnt resolves these
+ dependencies.
+
+ NAnt tries to execute the targets in the depends attribute in the
+ order they appear from left to right. It is possible that a target can
+ get executed earlier when an earlier target depends on it:
+ Suppose we want to execute target D. From its depends attribute,
+ you might think that first target C, then B and then A is executed.
+ Wrong! C depends on B, and B depends on A, so first A is executed, then
+ B, then C, and finally D.
+
+ A target gets executed only once, even when more than one target depends on it
+ (see the previous example). However, when the <call>
+ task is used to execute a target, both the target and all its dependent targets
+ will be re-executed.
+
Wild Targets
+
+ A target can be marked as wild by setting the name attribute
+ to "*". A build file can contain up to one wild target, and it is executed if
+ and only if the invoked target does not exist in the current build file. Wild
+ targets let you define how to handle invalid requests, or provide generic
+ behavior for unknown targets. For example:
+ The last target is executed if the invoked target is neither A nor B.
+
Conditional Execution
+
+ A target also has the ability to perform its execution if or unless a property
+ has been set. This allows, for example, better control on the building
+ process depending on the state of the system (OS, command-line property
+ defines, etc.). To make a target sense this property, you should
+ add the if or unless attribute with an expression
+ that the target should react to. For example:
A task can have multiple attributes (or arguments, if you prefer). The
+ value of an attribute may contain references to a property.
+ These references will be resolved before the task is executed.
+ Extensions can be devided in the following categories:
+
+
+
Tasks
+
Filters
+
Functions
+
Global Types
+
+
+ NAnt currently provides two mechanisms to make third-party extensions available for use in build scripts:
+
+
+
+ Automatic discovery
+
+
+ Forced scan
+
+
+
+ Both mechanisms use .NET reflection to scan one or more assemblies for the presence of extensions. When found,
+ these extensions are registered in the NAnt type system, and from then on these are available for all build
+ scripts (in the current NAnt instance).
+
+
2.1 Automatic discovery
+
+ To facilitate registration of extensions that are used in multiple (or even all) build
+ scripts, NAnt supports automatic discovery of extensions.
+
+
+ In this context, automatic discovery means scanning a predefined set of directories and files for extensions.
+
+
+ The actual set of directories and files that is scanned is determined by:
+
+
+
Operating system
+
Runtime framework
+
Project
+
+
2.1.1 Operating system
+
+ When starting NAnt, all assemblies matching the following patterns will be scanned for extensions:
+
+ Whenever a build project is started, NAnt will scan the following directories for assemblies that match the *.dll pattern:
+
+
+
+ <Project Base Directory>\tasks\
+
+
+ <Project Base Directory>\tasks\<framework family>\
+
+
+ <Project Base Directory>\tasks\<framework family>\<framework version>\
+
+
+
+ Example:
+
+
+ For a project file located in "c:\projects\log4net" with NAnt running on the Microsoft .NET 2.0 runtime, NAnt would end-up scanning the following project-level directories:
+
+
+
+ c:\projects\log4net\tasks\
+
+
+ c:\projects\log4net\tasks\net\
+
+
+ c:\projects\log4net\tasks\net\2.0\
+
+
+
2.2 Forced scan
+
+ To explicitly instruct NAnt to scan a certain assembly (or set of assemblies) for extensions, build authors can use the <loadtasks> tasks.
+
+
+
diff --git a/build-support/tools/nant/doc/help/images/arrow.gif b/build-support/tools/nant/doc/help/images/arrow.gif
new file mode 100644
index 00000000..d5e5f8e7
Binary files /dev/null and b/build-support/tools/nant/doc/help/images/arrow.gif differ
diff --git a/build-support/tools/nant/doc/help/images/bullet.gif b/build-support/tools/nant/doc/help/images/bullet.gif
new file mode 100644
index 00000000..f064248f
Binary files /dev/null and b/build-support/tools/nant/doc/help/images/bullet.gif differ
diff --git a/build-support/tools/nant/doc/help/images/logo.gif b/build-support/tools/nant/doc/help/images/logo.gif
new file mode 100644
index 00000000..9594736f
Binary files /dev/null and b/build-support/tools/nant/doc/help/images/logo.gif differ
diff --git a/build-support/tools/nant/doc/help/index.html b/build-support/tools/nant/doc/help/index.html
new file mode 100644
index 00000000..26dae29d
--- /dev/null
+++ b/build-support/tools/nant/doc/help/index.html
@@ -0,0 +1,61 @@
+
+
+
+
+
+
+ NAnt Help
+
+
+
Note: Additional requirements may apply to individual tasks.
+
Library Dependencies
+
NAnt uses a number of open source third party libaries. Recent versions are included included with the NAnt distribution and no extra work is required to install them. More information on these libraries are available at:
The idea for NAnt came from Hazware's XBuild project which in turn was inspired from Apache Ant. After emailing the author for a beta 2 release of the tool and getting no response Gerry Shaw ported the code to .NET beta 2. Due to the number of changes from .NET beta 1 to beta 2 the result was a total rewrite.
+
NAnt was registered at Source Forge on July 18, 2001 with the first public release made that day.
+
The name NAnt comes from the fact that this tool is Not Ant.
NAnt is different. Instead of a model where it is extended with shell-based commands, NAnt is extended using task classes. Instead of writing shell commands, the configuration files are XML-based, calling out a target tree where various tasks get executed. Each task is run by an object that implements a particular Task interface.
+
Granted, this removes some of the expressive power that is inherent in being able to construct a shell command such as 'find . -name foo -exec rm {}', but it gives you the ability to be cross-platform - to work anywhere and everywhere. And hey, if you really need to execute a shell command, NAnt has an <exec> task that allows different commands to be executed based on the OS it is executing on.
+
For more information on why Ant and NAnt were developed read the Ant Introduction.
NAnt is available in either a source or binary distribution. The binary
+ distribution is all you need to use NAnt to build your projects, including
+ creating your own custom tasks, types and functions.
+
If you are upgrading NAnt from a previous version, you must never install over
+ the top of your previous installation. Delete or rename the existing
+ installation directory before installing the new version of NAnt.
+
Installing from binaries
+
+
+ Download the binary distribution archive. Either nant-bin.zip or
+ nant-bin.tar.gz will work, the contents of each archive are the
+ same.
+
+ Remove any previous versions of NAnt you may have installed.
+
+ Extract the contents of the archive to the location you wish to install NAnt
+ (eg: C:\Program Files\NAnt in windows, or /usr/local/nant in Linux)
+
+
+ Depending on your environment, create a wrapper script to run NAnt:
+
Run NAnt using Microsoft.NET
+
+
+ Create a file called nant.bat in a directory that is included in
+ the PATH system environment variable. (eg. C:\WINDOWS).
+
+
+ Add the following to nant.bat:
+
+@echo off
+"C:\Program Files\NAnt\bin\NAnt.exe" %*
+
+
+
+
Run NAnt using Mono
+
+
+
Windows
+
+
+ Create a file called nant.bat in a directory that is included in
+ the PATH system environment variable. (eg. C:\WINDOWS).
+
+
+ Add the following to nant.bat:
+
+@echo off
+mono "C:\Program Files\NAnt\bin\NAnt.exe" %*
+
+
+
+
+
+
Linux / Cygwin
+
+
+ Create a file called nant in a suitable location in your
+ filesystem (eg. /usr/local/bin).
+
Wraps al.exe, the assembly linker for the .NET Framework.
+
All specified sources will be embedded using the /embed flag. Other source types are not supported.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
output
+
file
+
The name of the output file for the assembly manifest.
+
True
+
+
+
target
+
string
+
The target type (one of lib, exe, or winexe).
+
True
+
+
+
algid
+
string
+
Specifies an algorithm (in hexadecimal) to hash all files in a multifile assembly except the file that contains the assembly manifest. The default algorithm is CALG_SHA1.
+
False
+
+
+
company
+
string
+
Specifies a string for the Company field in the assembly.
+
False
+
+
+
configuration
+
string
+
Specifies a string for the Configuration field in the assembly.
+
False
+
+
+
copyright
+
string
+
Specifies a string for the Copyright field in the assembly.
+
False
+
+
+
culture
+
string
+
The culture string associated with the output assembly. The string must be in RFC 1766 format, such as "en-US".
+
False
+
+
+
delaysign
+
bool
+
Specifies whether the assembly should be partially signed. The default is false.
+
False
+
+
+
description
+
string
+
Specifies a string for the Description field in the assembly.
+
False
+
+
+
evidence
+
file
+
Security evidence file to embed.
+
False
+
+
+
fileversion
+
string
+
Specifies a string for the File Version field in the assembly.
+
False
+
+
+
flags
+
string
+
Specifies a value (in hexadecimal) for the Flags field in the assembly.
+
False
+
+
+
keycontainer
+
string
+
Specifies a container that holds a key pair.
+
False
+
+
+
keyfile
+
file
+
Specifies a file (filename) that contains a key pair or just a public key to sign an assembly.
+
False
+
+
+
main
+
string
+
Specifies the fully-qualified name (class.method) of the method to use as an entry point when converting a module to an executable file.
+
False
+
+
+
product
+
string
+
Specifies a string for the Product field in the assembly.
+
False
+
+
+
productversion
+
string
+
Specifies a string for the Product Version field in the assembly.
+
False
+
+
+
template
+
file
+
Specifies an assembly from which to get all options except the culture field.
+
False
+
+
+
title
+
string
+
Specifies a string for the Title field in the assembly.
+
False
+
+
+
trademark
+
string
+
Specifies a string for the Trademark field in the assembly.
+
False
+
+
+
version
+
string
+
Specifies version information for the assembly. The format of the version string is major.minor.build.revision.
+
False
+
+
+
win32icon
+
file
+
Icon to associate with the assembly.
+
False
+
+
+
win32res
+
file
+
Inserts a Win32 resource (.res file) in the output file.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
supportstemplate
+
bool
+
Indicates whether the assembly linker for a given target framework supports the "template" option, which takes an assembly from which to get all options except the culture field. The default is true.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
If true then the value of the attribute will be set as is, without actually looking for a matching constructor or named properties. The default is false.
False
if
bool
Indicates if the attribute should be generated.
False
unless
bool
Indicates if the attribute should be not generated.
Create a C# AssemblyInfo file containing an attribute with multiple named properties by setting the asis attribute on the AssemblyAttribute element to true.
Changes the file attributes of a file or set of files and directories.
+
+ <attrib> task does not have the concept of turning attributes off. Instead you specify all the attributes that you want turned on and the rest are turned off by default.
+
Refer to the FileAttributes enumeration in the .NET SDK for more information about file attributes.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
archive
+
bool
+
Set the archive attribute. The default is false.
+
False
+
+
+
file
+
file
+
The name of the file which will have its attributes set. This is provided as an alternate to using the task's fileset.
+
False
+
+
+
hidden
+
bool
+
Set the hidden attribute. The default is false.
+
False
+
+
+
normal
+
bool
+
Set the normal file attributes. This attribute is only valid if used alone. The default is false.
+
False
+
+
+
readonly
+
bool
+
Set the read-only attribute. The default is false.
+
False
+
+
+
system
+
bool
+
Set the system attribute. The default is false.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
Sets the mono-0.21.framework.present property to true if the Mono 0.21 framework is available on the current system and false if the framework is not available.
Sets the net-1.1.frameworksdk.present property to true if the .NET 1.1 Framework SDK is available on the current system and false if the SDK is not available.
Generates a Windows Forms Control that wraps ActiveX Controls defined in an OCX.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
ocx
+
file
+
Filename of the .ocx file.
+
True
+
+
+
delaysign
+
bool
+
Specifies to sign the resulting control using delayed signing.
+
False
+
+
+
generatesource
+
bool
+
Determines whether C# source code for the Windows Form wrapper should be generated. The default is false.
+
False
+
+
+
keycontainer
+
string
+
Specifies the key container in which the public/private key pair should be found that should be used to sign the resulting assembly with a strong name.
+
False
+
+
+
keyfile
+
file
+
Specifies the publisher's official public/private key pair with which the resulting assembly should be signed with a strong name.
+
False
+
+
+
output
+
file
+
Filename of the generated assembly.
+
False
+
+
+
publickey
+
file
+
Specifies the file containing the public key to use to sign the resulting assembly.
+
False
+
+
+
rcw
+
file
+
Assembly to use for Runtime Callable Wrapper rather than generating new one [.NET 1.1 or higher].
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
supportsrcw
+
bool
+
Indicates whether aximp supports using an existing Runtime Callable Wrapper for a given target framework. The default is true.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
The mode in which the specified pchfile (if any) is used. The default is Use.
+
False
+
+
+
pchthroughfile
+
string
+
The path of the boundary file when generating/using the specified pchfile. If a precompiled header file is not specified then this attribute is ignored.
+
False
+
+
+
pdbfile
+
string
+
A name for the compiler-generated PDB file; can be either a file or directory name. The default is the output directory.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Copies a file or set of files to a new file or directory.
+
Files are only copied if the source file is newer than the destination file, or if the destination file does not exist. However, you can explicitly overwrite files with the overwrite attribute.
+
When a <fileset> is used to select files to copy, the todir attribute must be set. Files that are located under the base directory of the <fileset> will be copied to a directory under the destination directory matching the path relative to the base directory of the <fileset>, unless the flatten attribute is set to true.
+
Files that are not located under the the base directory of the <fileset> will be copied directly under to the destination directory, regardless of the value of the flatten attribute.
+
Encoding
+
Unless an encoding is specified, the encoding associated with the system's current ANSI code page is used.
+
An UTF-8, little-endian Unicode, and big-endian Unicode encoded text file is automatically recognized, if the file starts with the appropriate byte order marks.
+
+ Note: If you employ filters in your copy operation, you should limit the copy to text files. Binary files will be corrupted by the copy operation.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
file
+
file
+
The file to copy.
+
False
+
+
+
flatten
+
bool
+
Ignore directory structure of source directory, copy all files into a single directory, specified by the todir attribute. The default is false.
+
False
+
+
+
includeemptydirs
+
bool
+
Copy any empty directories included in the <fileset>. The default is true.
+ Note: In order to have <csc> task generate manifest resource names that match those generated by Microsoft Visual Studio.NET, the value of the prefix attribute of the <resources> element should match the "Default Namespace" of the C# project, and the value of the dynamicprefix attribute should be set to "true".
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
baseaddress
+
string
+
The preferred base address at which to load a DLL. The default base address for a DLL is set by the .NET Framework common language runtime.
+
False
+
+
+
checked
+
bool
+
Specifies whether an integer arithmetic statement that is not in the scope of the checked or unchecked keywords and that results in a value outside the range of the data type should cause a run-time exception. The default is false.
+
False
+
+
+
codepage
+
string
+
Specifies the code page to use for all source code files in the compilation.
Specifies the type of debugging information generated by the compiler. The default is None.
+
False
+
+
+
doc
+
file
+
The name of the XML documentation file to generate.
+
False
+
+
+
filealign
+
int
+
Specifies the size of sections in the output file. Valid values are 512, 1024, 2048, 4096, and 8192.
+
False
+
+
+
langversion
+
string
+
Causes the compiler to only accept syntax that is included in a given specification.
+
False
+
+
+
noconfig
+
bool
+
Instructs the compiler not to use implicit references to assemblies. The default is false.
+
False
+
+
+
nostdlib
+
bool
+
Instructs the compiler not to import mscorlib.dll. The default is false.
+
False
+
+
+
optimize
+
bool
+
Specifies whether the compiler should perform optimizations to the make output files smaller, faster, and more effecient. The default is false.
+
False
+
+
+
platform
+
string
+
Specifies which platform version of common language runtime (CLR) can run the output file.
+
False
+
+
+
unsafe
+
bool
+
Instructs the compiler to allow code that uses the unsafe keyword. The default is false.
+
False
+
+
+
warninglevel
+
string
+
Specifies the warning level for the compiler to display. Valid values are 0-4. The default is 4.
+
False
+
+
+
output
+
file
+
The output file created by the compiler.
+
True
+
+
+
target
+
string
+
Output type. Possible values are exe, winexe, library or module.
+
True
+
+
+
define
+
string
+
Define conditional compilation symbol(s).
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
keycontainer
+
string
+
Specifies the key pair container used to strongname the assembly.
+
False
+
+
+
keyfile
+
file
+
Specifies a strong name key file.
+
False
+
+
+
main
+
string
+
Specifies which type contains the Main method that you want to use as the entry point into the program.
+
False
+
+
+
nowarn
+
string
+
+ Deprecated. Specifies a comma-separated list of warnings that should be suppressed by the compiler.
+
False
+
+
+
rebuild
+
bool
+
Instructs NAnt to recompile the output file regardless of the file timestamps.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
warnaserror
+
bool
+
Instructs the compiler to treat all warnings as errors. The default is false.
+
False
+
+
+
win32icon
+
file
+
Icon to associate with the application.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
noconfig
+
bool
+
Instructs the compiler not to use implicit references to assemblies. The default is false.
+
False
+
+
+
nostdlib
+
bool
+
Instructs the compiler not to import mscorlib.dll. The default is false.
+
False
+
+
+
supportsdocgeneration
+
bool
+
Specifies whether the compiler for the active target framework supports generation of XML Documentation file. The default is true.
+
False
+
+
+
supportskeycontainer
+
bool
+
Indicates whether the compiler for a given target framework supports the "keycontainer" option. The default is false.
+
False
+
+
+
supportskeyfile
+
bool
+
Indicates whether the compiler for a given target framework supports the "keyfile" option. The default is false.
+
False
+
+
+
supportslangversion
+
bool
+
Specifies whether the compiler for the active target framework supports accepting only a specific language syntax. The default is false.
+
False
+
+
+
supportsnowarnlist
+
bool
+
Indicates whether the compiler for a given target framework supports a command line option that allows a list of warnings to be suppressed. The default is false.
+
False
+
+
+
supportspackagereferences
+
bool
+
Indicates whether package references are supported by compiler for a given target framework. The default is false.
+
False
+
+
+
supportsplatform
+
bool
+
Specifies whether the compiler for the active target framework supports limiting the platform on which the compiled code can run. The default is false.
+
False
+
+
+
supportswarnaserrorlist
+
bool
+
Indicates whether the compiler for a given target framework supports the "warnaserror" option that takes a list of warnings. The default is false.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Produces an XML report that represents the cvs changes from the given start day, to a given end date.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
end
+
datetime
+
The latest date to use in the cvs log command.
+
True
+
+
+
start
+
datetime
+
The earliest change to use in the cvs log command.
+
True
+
+
+
xmlfile
+
file
+
Name of the xml file that will contain the cvs log information.
+
True
+
+
+
cvsroot
+
string
+
+
The cvs root variable has the following components:
+
+
[protocol]:[username]@[servername]:[server path]
+
+
protocol: ext, pserver, ssh (sharpcvslib); if you are not using sharpcvslib consult your cvs documentation.
+
username: [username]
+
servername: cvs.sourceforge.net
+
server path: /cvsroot/nant
+
+
+
If the cvsroot is not specified then the directory specified by the destination attribute is searched for CVS\Root.
+
+
False
+
+
+
commandline
+
string
+
Command-line arguments for the program. The command line arguments are used to specify any cvs command options that are not available as attributes. These are appended after the command itself and are additive to whatever attributes are currently specified.
+
False
+
+
+
compressionlevel
+
int
+
Compression level to use for all net traffic. This should be a value from 1-9.
NOTE: This is not available on sharpcvslib.
+
False
+
+
+
cvsfullpath
+
file
+
The full path to the cvs binary used. The cvs tasks will attempt to "guess" the location of your cvs binary based on your path. If the task is unable to resolve the location, or resolves it incorrectly this can be used to manually specify the path.
+
False
+
+
+
cvsrsh
+
file
+
The executable to use for ssh communication.
+
False
+
+
+
destination
+
directory
+
Destination directory for the local sandbox. If destination is not specified then the current directory is used.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
module
+
string
+
The module to perform an operation on.
+
False
+
+
+
passfile
+
file
+
The full path to the cached password file. If not specified then the environment variables are used to try and locate the file.
+
False
+
+
+
password
+
string
+
+ Deprecated. The password for logging in to the repository.
+
False
+
+
+
quiet
+
bool
+
Indicates if the output from the cvs command should be supressed. The default is false.
+
False
+
+
+
readonly
+
bool
+
+ true if the sandbox files should be checked out in read only mode. The default is false.
+
False
+
+
+
readwrite
+
bool
+
+ true if the sandbox files should be checked out in read/write mode. The default is true.
+
False
+
+
+
reallyquiet
+
bool
+
Indicates if the output from the cvs command should be stopped. The default is false.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Checks out a CVS module to the required directory.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
date
+
datetime
+
Specify the revision date to checkout. The date specified is validated and then passed to the cvs binary in a standard format recognized by cvs.
+
False
+
+
+
overridedir
+
string
+
Specify a directory name to replace the module name. Valid names include any valid filename, excluding path information.
+
False
+
+
+
override-directory
+
string
+
Specify a directory name to replace the module name. Valid names include any valid filename, excluding path information.
+
False
+
+
+
revision
+
string
+
Specify the revision to checkout. This corresponds to the "sticky-tag" of the file.
+
False
+
+
+
sticky-tag
+
string
+
Sticky tag or revision to checkout.
+
False
+
+
+
commandline
+
string
+
Command-line arguments for the program. The command line arguments are used to specify any cvs command options that are not available as attributes. These are appended after the command itself and are additive to whatever attributes are currently specified.
+
False
+
+
+
compressionlevel
+
int
+
Compression level to use for all net traffic. This should be a value from 1-9.
NOTE: This is not available on sharpcvslib.
+
False
+
+
+
cvsfullpath
+
file
+
The full path to the cvs binary used. The cvs tasks will attempt to "guess" the location of your cvs binary based on your path. If the task is unable to resolve the location, or resolves it incorrectly this can be used to manually specify the path.
+
False
+
+
+
cvsroot
+
string
+
+
The cvs root variable has the following components:
+
+
[protocol]:[username]@[servername]:[server path]
+
+
protocol: ext, pserver, ssh (sharpcvslib); if you are not using sharpcvslib consult your cvs documentation.
+
username: [username]
+
servername: cvs.sourceforge.net
+
server path: /cvsroot/nant
+
+
+
+
False
+
+
+
cvsrsh
+
file
+
The executable to use for ssh communication.
+
False
+
+
+
destination
+
directory
+
Destination directory for the local sandbox. If destination is not specified then the current directory is used.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
module
+
string
+
The module to perform an operation on.
+
False
+
+
+
passfile
+
file
+
The full path to the cached password file. If not specified then the environment variables are used to try and locate the file.
+
False
+
+
+
password
+
string
+
+ Deprecated. The password for logging in to the repository.
+
False
+
+
+
quiet
+
bool
+
Indicates if the output from the cvs command should be supressed. The default is false.
+
False
+
+
+
readonly
+
bool
+
+ true if the sandbox files should be checked out in read only mode. The default is false.
+
False
+
+
+
readwrite
+
bool
+
+ true if the sandbox files should be checked out in read/write mode. The default is true.
+
False
+
+
+
reallyquiet
+
bool
+
Indicates if the output from the cvs command should be stopped. The default is false.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
usesharpcvslib
+
bool
+
+
+ true if the SharpCvsLib binaries that come bundled with NAnt should be used to perform the cvs commands, false otherwise.
+
You may also specify an override value for all cvs tasks instead of specifying a value for each. To do this set the property sourcecontrol.usesharpcvslib to false.
+ If you choose not to use SharpCvsLib to checkout from cvs you will need to include a cvs.exe binary in your path.
+
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
So the nant module tagged with revision 0_85 will be checked out in the folder v0.85 under the working/ destination directory. This could be used to work on different branches of a repository at the same time.
+
+
+
Checkout NAnt with specified revision date to the folder c:\src\nant\2003_08_16.
Exports a cvs module in preperation for a release (i.e. the CVS version folders are not exported).
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
date
+
datetime
+
Specify the revision date to update to. The version of the file that existed at the date specified is retrieved.
+
False
+
+
+
force-head
+
bool
+
Indicates whether the head revision should be used if the revison specified by revision or the date tags are not found. The default is false.
+
False
+
+
+
no-shortening
+
bool
+
No shortening. Do not shorten module paths if -d specified.
+
False
+
+
+
overridedir
+
string
+
Specify a directory name to replace the module name. Valid names include any valid filename, excluding path information.
+
False
+
+
+
recursive
+
bool
+
If a directory is specified indicates whether sub-directories should also be processed.
+
False
+
+
+
revision
+
string
+
Specify the revision to update the file to. This corresponds to the "sticky-tag" of the file.
+
False
+
+
+
commandline
+
string
+
Command-line arguments for the program. The command line arguments are used to specify any cvs command options that are not available as attributes. These are appended after the command itself and are additive to whatever attributes are currently specified.
+
False
+
+
+
compressionlevel
+
int
+
Compression level to use for all net traffic. This should be a value from 1-9.
NOTE: This is not available on sharpcvslib.
+
False
+
+
+
cvsfullpath
+
file
+
The full path to the cvs binary used. The cvs tasks will attempt to "guess" the location of your cvs binary based on your path. If the task is unable to resolve the location, or resolves it incorrectly this can be used to manually specify the path.
+
False
+
+
+
cvsroot
+
string
+
+
The cvs root variable has the following components:
+
+
[protocol]:[username]@[servername]:[server path]
+
+
protocol: ext, pserver, ssh (sharpcvslib); if you are not using sharpcvslib consult your cvs documentation.
+
username: [username]
+
servername: cvs.sourceforge.net
+
server path: /cvsroot/nant
+
+
+
+
False
+
+
+
cvsrsh
+
file
+
The executable to use for ssh communication.
+
False
+
+
+
destination
+
directory
+
Destination directory for the local sandbox. If destination is not specified then the current directory is used.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
module
+
string
+
The module to perform an operation on.
+
False
+
+
+
passfile
+
file
+
The full path to the cached password file. If not specified then the environment variables are used to try and locate the file.
+
False
+
+
+
password
+
string
+
+ Deprecated. The password for logging in to the repository.
+
False
+
+
+
quiet
+
bool
+
Indicates if the output from the cvs command should be supressed. The default is false.
+
False
+
+
+
readonly
+
bool
+
+ true if the sandbox files should be checked out in read only mode. The default is false.
+
False
+
+
+
readwrite
+
bool
+
+ true if the sandbox files should be checked out in read/write mode. The default is true.
+
False
+
+
+
reallyquiet
+
bool
+
Indicates if the output from the cvs command should be stopped. The default is false.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
usesharpcvslib
+
bool
+
+
+ true if the SharpCvsLib binaries that come bundled with NAnt should be used to perform the cvs commands, false otherwise.
+
You may also specify an override value for all cvs tasks instead of specifying a value for each. To do this set the property sourcecontrol.usesharpcvslib to false.
+ If you choose not to use SharpCvsLib to checkout from cvs you will need to include a cvs.exe binary in your path.
+
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Export NAnt revision named your_favorite_revision_here to the folder c:\src\nant\replacement_for_module_directory_name. **NOTE**: filesets names for the export task must be prefixed with the module name. This is different than other tasks.
Tags all sources in the remote repository with a given tag.
+
Unlike tag, the rtag command acts only on sources that are in the repository. Any modified sources on the local file system will NOT be tagged with this command, so a commit should be performed before an rtag is done.
+
NOTE: Although a working directory is not necessary to perform the command one must be specified in order to remain in compliance with the cvs library.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
tag
+
string
+
The name of the tag to assign or remove.
+
True
+
+
+
act-on-date
+
datetime
+
Indicates the revision date of the file that the tag should be applied to.
+
False
+
+
+
act-on-tag
+
string
+
Indicates the repository tag that is acted on for the tag command. Note if move-if-exists is true then the tag specified is moved to the revision of the file on the HEAD of the branch specified.
+
False
+
+
+
force-head
+
bool
+
Indicates whether the head revision should be used if the act-on-tag or the act-on-date tags are not found.
+
False
+
+
+
move-if-exists
+
bool
+
Indicates whether the tag specified in tag should be moved to the current file revision. If the tag does not exist then it is created.
+
False
+
+
+
recursive
+
bool
+
If a directory is specified indicates whether sub-directories should also be processed.
+
False
+
+
+
remove
+
bool
+
Indicates whether the tag specified in tag should be removed or not.
+
False
+
+
+
commandline
+
string
+
Command-line arguments for the program. The command line arguments are used to specify any cvs command options that are not available as attributes. These are appended after the command itself and are additive to whatever attributes are currently specified.
+
False
+
+
+
compressionlevel
+
int
+
Compression level to use for all net traffic. This should be a value from 1-9.
NOTE: This is not available on sharpcvslib.
+
False
+
+
+
cvsfullpath
+
file
+
The full path to the cvs binary used. The cvs tasks will attempt to "guess" the location of your cvs binary based on your path. If the task is unable to resolve the location, or resolves it incorrectly this can be used to manually specify the path.
+
False
+
+
+
cvsroot
+
string
+
+
The cvs root variable has the following components:
+
+
[protocol]:[username]@[servername]:[server path]
+
+
protocol: ext, pserver, ssh (sharpcvslib); if you are not using sharpcvslib consult your cvs documentation.
+
username: [username]
+
servername: cvs.sourceforge.net
+
server path: /cvsroot/nant
+
+
+
+
False
+
+
+
cvsrsh
+
file
+
The executable to use for ssh communication.
+
False
+
+
+
destination
+
directory
+
Destination directory for the local sandbox. If destination is not specified then the current directory is used.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
module
+
string
+
The module to perform an operation on.
+
False
+
+
+
passfile
+
file
+
The full path to the cached password file. If not specified then the environment variables are used to try and locate the file.
+
False
+
+
+
password
+
string
+
+ Deprecated. The password for logging in to the repository.
+
False
+
+
+
quiet
+
bool
+
Indicates if the output from the cvs command should be supressed. The default is false.
+
False
+
+
+
readonly
+
bool
+
+ true if the sandbox files should be checked out in read only mode. The default is false.
+
False
+
+
+
readwrite
+
bool
+
+ true if the sandbox files should be checked out in read/write mode. The default is true.
+
False
+
+
+
reallyquiet
+
bool
+
Indicates if the output from the cvs command should be stopped. The default is false.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
usesharpcvslib
+
bool
+
+
+ true if the SharpCvsLib binaries that come bundled with NAnt should be used to perform the cvs commands, false otherwise.
+
You may also specify an override value for all cvs tasks instead of specifying a value for each. To do this set the property sourcecontrol.usesharpcvslib to false.
+ If you choose not to use SharpCvsLib to checkout from cvs you will need to include a cvs.exe binary in your path.
+
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
This differs from the <cvs-rtag> task in that it acts on references to the cvs files contained in your local filesystem. As such the sticky tags and local revisions can be considered in commits. It also allows you to verify that all local files have been checked in before a tag is performed.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
tag
+
string
+
The name of the tag to assign or remove.
+
True
+
+
+
act-on-date
+
datetime
+
Indicates the revision date of the file that the tag should be applied to.
+
False
+
+
+
act-on-tag
+
string
+
Indicates the repository tag that is acted on for the tag command. Note if move-if-exists is true then the tag specified is moved to the revision of the file on the HEAD of the branch specified.
+
False
+
+
+
fail-if-modified
+
bool
+
Indicates whether the head revision should be used if the act-on-tag or the act-on-date tags are not found.
+
False
+
+
+
force-head
+
bool
+
Indicates whether the head revision should be used if the revision specified by act-on-tag or the act-on-date tags are not found.
+
False
+
+
+
move-if-exists
+
bool
+
Indicates whether the tag specified in tag should be moved to the current file revision. If the tag does not exist then it is created.
+
False
+
+
+
recursive
+
bool
+
If a directory is specified indicates whether sub-directories should also be processed.
+
False
+
+
+
remove
+
bool
+
Indicates whether the tag specified in tag should be removed or not.
+
False
+
+
+
commandline
+
string
+
Command-line arguments for the program. The command line arguments are used to specify any cvs command options that are not available as attributes. These are appended after the command itself and are additive to whatever attributes are currently specified.
+
False
+
+
+
compressionlevel
+
int
+
Compression level to use for all net traffic. This should be a value from 1-9.
NOTE: This is not available on sharpcvslib.
+
False
+
+
+
cvsfullpath
+
file
+
The full path to the cvs binary used. The cvs tasks will attempt to "guess" the location of your cvs binary based on your path. If the task is unable to resolve the location, or resolves it incorrectly this can be used to manually specify the path.
+
False
+
+
+
cvsroot
+
string
+
+
The cvs root variable has the following components:
+
+
[protocol]:[username]@[servername]:[server path]
+
+
protocol: ext, pserver, ssh (sharpcvslib); if you are not using sharpcvslib consult your cvs documentation.
+
username: [username]
+
servername: cvs.sourceforge.net
+
server path: /cvsroot/nant
+
+
+
+
False
+
+
+
cvsrsh
+
file
+
The executable to use for ssh communication.
+
False
+
+
+
destination
+
directory
+
Destination directory for the local sandbox. If destination is not specified then the current directory is used.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
passfile
+
file
+
The full path to the cached password file. If not specified then the environment variables are used to try and locate the file.
+
False
+
+
+
password
+
string
+
+ Deprecated. The password for logging in to the repository.
+
False
+
+
+
quiet
+
bool
+
Indicates if the output from the cvs command should be supressed. The default is false.
+
False
+
+
+
readonly
+
bool
+
+ true if the sandbox files should be checked out in read only mode. The default is false.
+
False
+
+
+
readwrite
+
bool
+
+ true if the sandbox files should be checked out in read/write mode. The default is true.
+
False
+
+
+
reallyquiet
+
bool
+
Indicates if the output from the cvs command should be stopped. The default is false.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
usesharpcvslib
+
bool
+
+
+ true if the SharpCvsLib binaries that come bundled with NAnt should be used to perform the cvs commands, false otherwise.
+
You may also specify an override value for all cvs tasks instead of specifying a value for each. To do this set the property sourcecontrol.usesharpcvslib to false.
+ If you choose not to use SharpCvsLib to checkout from cvs you will need to include a cvs.exe binary in your path.
+
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Updates a CVS module in a local working directory.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
builddirs
+
bool
+
If true. new directories will be created on the local sandbox. The default is true.
+
False
+
+
+
date
+
datetime
+
Specify the revision date to update to. The version of the file that existed at the date specified is retrieved.
+
False
+
+
+
overwritelocal
+
bool
+
If true the local copy of the file will be overwritten with the copy from the remote repository. The default is false.
+
False
+
+
+
pruneempty
+
bool
+
If true empty directories copied down from the remote repository will be removed from the local sandbox. The default is true.
+
False
+
+
+
recursive
+
bool
+
Specifies if the command should be executed recursively. The default is true.
+
False
+
+
+
revision
+
string
+
Specify the revision to update the file to. This corresponds to the "sticky-tag" of the file.
+
False
+
+
+
sticky-tag
+
string
+
Sticky tag or revision to update the local file to.
+
False
+
+
+
commandline
+
string
+
Command-line arguments for the program. The command line arguments are used to specify any cvs command options that are not available as attributes. These are appended after the command itself and are additive to whatever attributes are currently specified.
+
False
+
+
+
compressionlevel
+
int
+
Compression level to use for all net traffic. This should be a value from 1-9.
NOTE: This is not available on sharpcvslib.
+
False
+
+
+
cvsfullpath
+
file
+
The full path to the cvs binary used. The cvs tasks will attempt to "guess" the location of your cvs binary based on your path. If the task is unable to resolve the location, or resolves it incorrectly this can be used to manually specify the path.
+
False
+
+
+
cvsroot
+
string
+
+
The cvs root variable has the following components:
+
+
[protocol]:[username]@[servername]:[server path]
+
+
protocol: ext, pserver, ssh (sharpcvslib); if you are not using sharpcvslib consult your cvs documentation.
+
username: [username]
+
servername: cvs.sourceforge.net
+
server path: /cvsroot/nant
+
+
+
+
False
+
+
+
cvsrsh
+
file
+
The executable to use for ssh communication.
+
False
+
+
+
destination
+
directory
+
Destination directory for the local sandbox. If destination is not specified then the current directory is used.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
module
+
string
+
The module to perform an operation on.
+
False
+
+
+
passfile
+
file
+
The full path to the cached password file. If not specified then the environment variables are used to try and locate the file.
+
False
+
+
+
password
+
string
+
+ Deprecated. The password for logging in to the repository.
+
False
+
+
+
quiet
+
bool
+
Indicates if the output from the cvs command should be supressed. The default is false.
+
False
+
+
+
readonly
+
bool
+
+ true if the sandbox files should be checked out in read only mode. The default is false.
+
False
+
+
+
readwrite
+
bool
+
+ true if the sandbox files should be checked out in read/write mode. The default is true.
+
False
+
+
+
reallyquiet
+
bool
+
Indicates if the output from the cvs command should be stopped. The default is false.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
usesharpcvslib
+
bool
+
+
+ true if the SharpCvsLib binaries that come bundled with NAnt should be used to perform the cvs commands, false otherwise.
+
You may also specify an override value for all cvs tasks instead of specifying a value for each. To do this set the property sourcecontrol.usesharpcvslib to false.
+ If you choose not to use SharpCvsLib to checkout from cvs you will need to include a cvs.exe binary in your path.
+
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Executes the cvs command specified by the command attribute.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
command
+
string
+
The cvs command to execute.
+
True
+
+
+
commandline
+
string
+
Command-line arguments for the program. The command line arguments are used to specify any cvs command options that are not available as attributes. These are appended after the command itself and are additive to whatever attributes are currently specified.
+
False
+
+
+
compressionlevel
+
int
+
Compression level to use for all net traffic. This should be a value from 1-9.
NOTE: This is not available on sharpcvslib.
+
False
+
+
+
cvsfullpath
+
file
+
The full path to the cvs binary used. The cvs tasks will attempt to "guess" the location of your cvs binary based on your path. If the task is unable to resolve the location, or resolves it incorrectly this can be used to manually specify the path.
+
False
+
+
+
cvsroot
+
string
+
+
The cvs root variable has the following components:
+
+
[protocol]:[username]@[servername]:[server path]
+
+
protocol: ext, pserver, ssh (sharpcvslib); if you are not using sharpcvslib consult your cvs documentation.
+
username: [username]
+
servername: cvs.sourceforge.net
+
server path: /cvsroot/nant
+
+
+
+
False
+
+
+
cvsrsh
+
file
+
The executable to use for ssh communication.
+
False
+
+
+
destination
+
directory
+
Destination directory for the local sandbox. If destination is not specified then the current directory is used.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
module
+
string
+
The module to perform an operation on.
+
False
+
+
+
passfile
+
file
+
The full path to the cached password file. If not specified then the environment variables are used to try and locate the file.
+
False
+
+
+
password
+
string
+
+ Deprecated. The password for logging in to the repository.
+
False
+
+
+
quiet
+
bool
+
Indicates if the output from the cvs command should be supressed. The default is false.
+
False
+
+
+
readonly
+
bool
+
+ true if the sandbox files should be checked out in read only mode. The default is false.
+
False
+
+
+
readwrite
+
bool
+
+ true if the sandbox files should be checked out in read/write mode. The default is true.
+
False
+
+
+
reallyquiet
+
bool
+
Indicates if the output from the cvs command should be stopped. The default is false.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
usesharpcvslib
+
bool
+
+
+ true if the SharpCvsLib binaries that come bundled with NAnt should be used to perform the cvs commands, false otherwise.
+
You may also specify an override value for all cvs tasks instead of specifying a value for each. To do this set the property sourcecontrol.usesharpcvslib to false.
+ If you choose not to use SharpCvsLib to checkout from cvs you will need to include a cvs.exe binary in your path.
+
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Signs delay-signed .NET Assemblies, or re-signs existing assemblies.
+
The delay-signing mechanism takes a fileset (named targets) and either a keyfile attribute for a file containing the public and private keys, or keycontainer to name a key container.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
keycontainer
+
string
+
Specifies the key container.
+
False
+
+
+
keyfile
+
file
+
Specifies the filesystem path to the signing key.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Deletes either a single file, all files in a specified directory and its sub-directories, or a set of files specified by one or more filesets.
+
If the file or dir attribute is set then the fileset contents will be ignored. To delete the files in the fileset ommit the file and dir attributes in the <delete> element.
+
If the specified file or directory does not exist, no error is reported.
+
+ Note: Read-only files cannot be deleted. Use the <attrib> task first to remove the read-only attribute.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
dir
+
directory
+
The directory to delete.
+
False
+
+
+
file
+
file
+
The file to delete.
+
False
+
+
+
includeemptydirs
+
bool
+
Remove any empty directories included in the <fileset>. The default is true.
+
False
+
+
+
verbose
+
bool
+
Controls whether to show the name of each deleted file or directory. The default is false.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
Deprecated. Environment variable to pass to a program.
Represents an option.
Parameters
Attribute
Type
Description
Required
name
string
Name of the option.
True
if
bool
Indicates if the option should be passed to the task. If true then the option will be passed; otherwise, skipped. The default is true.
False
unless
bool
Indicates if the option should not be passed to the task. If false then the option will be passed; otherwise, skipped. The default is false.
False
value
string
Value of the option. The default is a null reference (Nothing in Visual Basic).
False
+ </option>
+
+ <variable>
+
Environment variable to pass to a program.
Represents an environment variable.
Parameters
Attribute
Type
Description
Required
name
string
The name of the environment variable.
True
dir
directory
The value for a directory-based environment variable. NAnt will convert it to an absolute path.
False
file
file
The value for a file-based environment variable. NAnt will convert it to an absolute filename.
False
if
bool
Indicates if the environment variable should be passed to the external program. If true then the environment variable will be passed; otherwise, skipped. The default is true.
False
path
<path>
The value for a PATH like environment variable. You can use : or ; as path separators and NAnt will convert it to the platform's local conventions.
False
unless
bool
Indicates if the environment variable should not be passed to the external program. If false then the environment variable will be passed; otherwise, skipped. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Assuming the base directory of the build file is "c:\ikvm-test" and the value of the "fop.dist.dir" property is "c:\fop", then the value of the -cp argument that is passed toikvm.exe is "c:\ikvm-test\conf;c:\fop\build\fop.jar;conf;c:\fop\lib\xercesImpl-2.2.1.jar;c:\fop\lib\avalon-framework-cvs-20020806.jar;c:\fop\lib\batik.jar;c:\ikvm-test\lib\mylib.jar;c:\ikvm-test\lib\otherlib.zip" on a DOS-based system.
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/tasks/fail.html b/build-support/tools/nant/doc/help/tasks/fail.html
new file mode 100644
index 00000000..7d98f39d
--- /dev/null
+++ b/build-support/tools/nant/doc/help/tasks/fail.html
@@ -0,0 +1,97 @@
+
+
+
+
+
+
+
+ <fail> Task
+
+
+
Options include verbose reporting and timestamp based fetches.
+
Currently, only HTTP and UNC protocols are supported. FTP support may be added when more pluggable protocols are added to the System.Net assembly.
+
The usetimestamp option enables you to control downloads so that the remote file is only fetched if newer than the local copy. If there is no local copy, the download always takes place. When a file is downloaded, the timestamp of the downloaded file is set to the remote timestamp.
+
+ Note: This timestamp facility only works on downloads using the HTTP protocol.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
dest
+
file
+
The file where to store the retrieved file.
+
True
+
+
+
src
+
string
+
The URL from which to retrieve a file.
+
True
+
+
+
httpproxy
+
string
+
+ Deprecated. If inside a firewall, proxy server/port information Format: {proxy server name}:{port number} Example: proxy.mycompany.com:8080
+
False
+
+
+
ignoreerrors
+
bool
+
+ Deprecated. Log errors but don't treat as fatal. The default is false.
+
False
+
+
+
timeout
+
int
+
The length of time, in milliseconds, until the request times out. The default is 100000 milliseconds.
+
False
+
+
+
usetimestamp
+
bool
+
Conditionally download a file based on the timestamp of the local copy. HTTP only. The default is false.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Disassembles any portable executable (PE) file that contains intermediate language (IL) code.
+
Files are only disassembled if the input file is newer than the output file, or if the output file does not exist. However, you can explicitly force files to be disassembled with the rebuild attribute.
+
A <fileset> can be used to select files to disassemble. To use a <fileset>, the todir attribute must be set. The file name of the output file will be equal to the file name of the input file, but with extension ".il".
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
all
+
bool
+
Specifies whether or not the disassembler should combine the /HEADER, /BYTE, and /TOKENS options. The default is false.
+
False
+
+
+
bytes
+
bool
+
Specifies whether or not the disassembler should generate the IL stream bytes (in hexadecimal notation) as instruction comments. The default is false.
+
False
+
+
+
header
+
bool
+
Specifies whether or not the disassembler should include PE header information and runtime header information in the output. The default is false.
+
False
+
+
+
input
+
file
+
Specifies the PE file to disassemble.
+
False
+
+
+
item
+
string
+
Instructs the disassembler to disassemble the specified item only.
+
False
+
+
+
linenumbers
+
bool
+
Specifies whether or not the disassembler should include references to original source lines. The default is false.
+
False
+
+
+
noil
+
bool
+
Specifies whether or not the disassembler should suppress ILASM code output. The default is false.
+
False
+
+
+
output
+
file
+
Specifies the name of the output file created by the disassembler.
+
False
+
+
+
publiconly
+
bool
+
Specifies whether or not the disassembler should disassemble public items only. This is a shortcut for visibility="pub". The default is false.
+
False
+
+
+
quoteallnames
+
bool
+
Specifies whether or not the disassembler should enclose all names in single quotation marks. By default, only names that don't match the ILASM definition of a simple name are quoted. The default is false.
+
False
+
+
+
rawexceptionhandling
+
bool
+
Specifies whether or not the disassembler should generate structured exception handling clauses in canonical (label) form. The default is false.
+
False
+
+
+
rebuild
+
bool
+
Instructs NAnt to rebuild the output file regardless of the file timestamps. The default is false.
+
False
+
+
+
source
+
bool
+
Specifies whether or not the disassembler should generate original source lines as comments. The default is false.
+
False
+
+
+
todir
+
directory
+
Specifies the directory to which outputs will be stored.
+
False
+
+
+
tokens
+
bool
+
Specifies whether or not the disassembler should generate metadata token values as comments. The default is false.
+
False
+
+
+
unicode
+
bool
+
Specifies whether or not the disassembler should use the UNICODE encoding when generating the output. The default is ANSI.
+
False
+
+
+
utf8
+
bool
+
Specifies whether or not the disassembler should use the UTF-8 encoding when generating the output. The default is ANSI.
+
False
+
+
+
visibility
+
string
+
Instructs the disassembler to disassemble only the items with the specified visibility. Possible values are PUB, PRI, FAM, ASM, FAA, FOA, PSC, or any combination of them separated by +.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
This task is used to break your build file into smaller chunks. You can load a partial build file and have it included into the build file.
+
+ Note: Any global (project level) tasks in the included build file are executed when this task is executed. Tasks in target elements are only executed if that target is executed.
+
+ Note: The project element attributes are ignored.
+
+ Note: This task can only be in the global (project level) section of the build file.
+
+ Note: This task can only include files from the file system.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
buildfile
+
string
+
Build file to include.
+
True
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Examples
+
+
+
Include a task that fetches the project version from the GetProjectVersion.include build file.
Executes the code contained within the task. This code can include custom extension function definitions. Once the script task has executed those custom functions will be available for use in the buildfile.
Specifies the code page to use for all source code files in the compilation.
+
False
+
+
+
platform
+
string
+
Specifies which platform version of common language runtime (CLR) can run the output file.
+
False
+
+
+
warninglevel
+
string
+
Specifies the warning level for the compiler to display. Valid values are 0-4. The default is 4.
+
False
+
+
+
output
+
file
+
The output file created by the compiler.
+
True
+
+
+
target
+
string
+
Output type. Possible values are exe, winexe, library or module.
+
True
+
+
+
debug
+
bool
+
Generate debug output. The default is false.
+
False
+
+
+
define
+
string
+
Define conditional compilation symbol(s).
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
main
+
string
+
Specifies which type contains the Main method that you want to use as the entry point into the program.
+
False
+
+
+
rebuild
+
bool
+
Instructs NAnt to recompile the output file regardless of the file timestamps.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
warnaserror
+
bool
+
Instructs the compiler to treat all warnings as errors. The default is false.
+
False
+
+
+
win32icon
+
file
+
Icon to associate with the application.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
supportsnowarnlist
+
bool
+
Indicates whether the compiler for a given target framework supports a command line option that allows a list of warnings to be suppressed. The default is false.
+
False
+
+
+
supportspackagereferences
+
bool
+
Indicates whether package references are supported by compiler for a given target framework. The default is false.
+
False
+
+
+
supportsplatform
+
bool
+
Specifies whether the compiler for the active target framework supports limiting the platform on which the compiled code can run. The default is false.
+
False
+
+
+
supportswarnaserrorlist
+
bool
+
Indicates whether the compiler for a given target framework supports the "warnaserror" option that takes a list of warnings. The default is false.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Links files using link.exe, Microsoft's Incremental Linker.
+
This task is intended for version 7.00.9466 of link.exe.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
output
+
file
+
The output file.
+
True
+
+
+
options
+
string
+
Options to pass to the compiler.
+
False
+
+
+
pdbfile
+
file
+
A user-specified name for the program database (PDB) that the linker creates. The default file name for the PDB has the base name of the output and the extension .pdb.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Unless an encoding is specified, the encoding associated with the system's current ANSI code page is used.
+
An UTF-8, little-endian Unicode, and big-endian Unicode encoded text file is automatically recognized, if the file starts with the appropriate byte order marks.
Sends an email from nant@sourceforge.net to three recipients with a subject about the attachments. The body of the message will be the combined contents of all .txt files in the base directory. All zip files in the base directory will be included as attachments. The message will be sent using the smtpserver.anywhere.com SMTP server.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
This task only supports a small subset of the MIDL.EXE command line switches, but you can use the options element to specify any other unsupported commands you want to specify.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
filename
+
file
+
Name of .IDL file to process.
+
True
+
+
+
acf
+
string
+
The /acf switch allows the user to supply an explicit ACF file name. The switch also allows the use of different interface names in the IDL and ACF files.
+
False
+
+
+
align
+
string
+
The /align switch is functionally the same as the MIDL /Zp option and is recognized by the MIDL compiler solely for backward compatibility with MkTypLib.
+
False
+
+
+
app_config
+
bool
+
The /app_config switch selects application-configuration mode, which allows you to use some ACF keywords in the IDL file. With this MIDL compiler switch, you can omit the ACF and specify an interface in a single IDL file.
+
False
+
+
+
char
+
string
+
The /char switch helps to ensure that the MIDL compiler and C compiler operate together correctly for all char and small types.
+
False
+
+
+
client
+
string
+
The /client switch directs the MIDL compiler to generate client-side C source files for an RPC interface
+
False
+
+
+
cstub
+
string
+
The /cstub switch specifies the name of the client stub file for an RPC interface.
+
False
+
+
+
dlldata
+
file
+
Specifies the file name for the generated dlldata file for a proxy DLL. The default file name Dlldata.c is used if dlldata is not specified.
+
False
+
+
+
env
+
string
+
The /env switch selects the environment in which the application runs.
+
False
+
+
+
header
+
file
+
Specifies the name of the header file.
+
False
+
+
+
iid
+
file
+
Specifies the name of the interface identifier file for a COM interface, overriding the default name obtained by adding _i.c to the IDL file name.
+
False
+
+
+
Oi
+
string
+
The /Oi switch directs the MIDL compiler to use a fully-interpreted marshaling method. The /Oic and /Oicf switches provide additional performance enhancements.
+
False
+
+
+
proxy
+
file
+
Specifies the name of the interface proxy file for a COM interface.
+
False
+
+
+
tlb
+
file
+
Specifies a file name for the type library generated by the MIDL compiler.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Moves a file or set of files to a new file or directory.
+
Files are only moved if the source file is newer than the destination file, or if the destination file does not exist. However, you can explicitly overwrite files with the overwrite attribute.
+
A <fileset> can be used to select files to move. To use a <fileset>, the todir attribute must be set.
+
Encoding
+
Unless an encoding is specified, the encoding associated with the system's current ANSI code page is used.
+
An UTF-8, little-endian Unicode, and big-endian Unicode encoded text file is automatically recognized, if the file starts with the appropriate byte order marks.
+
+ Note: If you employ filters in your move operation, you should limit the move to text files. Binary files will be corrupted by the move operation.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
file
+
file
+
The file to move.
+
False
+
+
+
flatten
+
bool
+
Ignore directory structure of source directory, move all files into a single directory, specified by the todir attribute. The default is false.
+
False
+
+
+
todir
+
directory
+
The directory to move to.
+
False
+
+
+
tofile
+
file
+
The file to move to.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
includeemptydirs
+
bool
+
Copy any empty directories included in the <fileset>. The default is true.
Runs NAnt on a supplied build file, or a set of build files.
+
By default, all the properties of the current project will be available in the new project. Alternatively, you can set inheritall to false to not copy any properties to the new project.
+
You can also set properties in the new project from the old project by using nested property tags. These properties are always passed to the new project regardless of the setting of inheritall. This allows you to parameterize your subprojects.
+
References to data types can also be passed to the new project, but by default they are not. If you set the inheritrefs to true, all references will be copied.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
buildfile
+
file
+
The build file to build.
+
False
+
+
+
inheritall
+
bool
+
Specifies whether current property values should be inherited by the executed project. The default is true.
+
False
+
+
+
inheritrefs
+
bool
+
Specifies whether all references will be copied to the new project. The default is false.
+
False
+
+
+
target
+
string
+
The target to execute. To specify more than one target seperate targets with a space. Targets are executed in order if possible. The default is to use target specified in the project's default attribute.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
Specifies a collection of properties that should be created in the executed project. Note, existing properties with identical names that are not read-only will be overwritten.
<property>
Sets a property in the current project.
Note: NAnt uses a number of predefined properties.
Parameters
Attribute
Type
Description
Required
name
string
The name of the NAnt property to set.
True
value
string
The value to assign to the NAnt property.
+ This attribute's properties will not be automatically expanded!
+
True
dynamic
bool
Specifies whether references to other properties should not be expanded when the value of the property is set, but expanded when the property is actually used. By default, properties will be expanded when set.
False
overwrite
bool
Specifies whether the value of a property should be overwritten if the property already exists (unless the property is read-only). The default is true.
False
readonly
bool
Specifies whether the property is read-only or not. The default is false.
False
failonerror
bool
Determines if task failure stops the build, or is just reported. The default is true.
False
if
bool
If true then the task will be executed; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
False
verbose
bool
Determines whether the task should report detailed build log messages. The default is false.
False
Examples
Define a debug property with value true.
+<property name="debug" value="true" />
+
Use the user-defined debug property.
+<property name="trace" value="${debug}" />
+
Define a read-only property. This is just like passing in the param on the command line.
+ Note: By default, only the NDoc MSDN documenter ships as part of the NAnt distribution. To make another NDoc documenter from the NDoc V1.3.1 distribution available to the <ndoc> task, copy the documenter assembly (and possible dependencies) to the "lib" directory corresponding with the CLR you're running NAnt on (eg. <nant root>/bin/lib/net/1.1).
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
The haltonfailure or haltonerror attributes are only used to stop more than one test suite to stop running. If any test suite fails a build error will be thrown. Set failonerror to false to ignore test errors and continue build.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
haltonerror
+
bool
+
Stops running tests when a test causes an error. The default is false.
+
False
+
+
+
haltonfailure
+
bool
+
Stops running tests if a test fails (errors are considered failures as well). The default is false.
+
False
+
+
+
timeout
+
int
+
Cancel the individual tests if they do not finish in the specified time (measured in milliseconds). Ignored if fork is disabled.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
Specifies the directory where the output file should be written to, if usefile is true. If not specified, the output file will be written to the directory where the test module is located.
False
usefile
bool
Determines whether output should be persisted to a file. The default is false.
The haltonfailure attribute is only useful when more than one test suite is used, and you want to continue running other test suites although a test failed.
+
Set failonerror to false to ignore any errors and continue the build.
+
In order to run a test assembly built with NUnit 2.0 or 2.1 using <nunit2> task, you must add the following node to your test config file :
The application configuration file to use for the NUnit test domain. If not specified, NAnt will try to use a configuration name matching the file name of the assembly with extension ".config".
False
assemblyname
file
Name of the assembly to search for tests.
False
haltonfailure
bool
Build fails on failure. The default is true.
False
testname
string
Name of a specific testfixture to run. If not specified then all testfixtures are run.
False
transformfile
file
XSLT transform file to use when using the Plain formatter.
Specifies the directory where the output file should be written to, if usefile is true. If not specified, the output file will be written to the directory where the test module is located.
False
usefile
bool
Determines whether output should be persisted to a file. The default is false.
+ Note: NAnt uses a number of predefined properties.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
name
+
string
+
The name of the NAnt property to set.
+
True
+
+
+
value
+
string
+
The value to assign to the NAnt property.
+ This attribute's properties will not be automatically expanded!
+
+
True
+
+
+
dynamic
+
bool
+
Specifies whether references to other properties should not be expanded when the value of the property is set, but expanded when the property is actually used. By default, properties will be expanded when set.
+
False
+
+
+
overwrite
+
bool
+
Specifies whether the value of a property should be overwritten if the property already exists (unless the property is read-only). The default is true.
+
False
+
+
+
readonly
+
bool
+
Specifies whether the property is read-only or not. The default is false.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Examples
+
+
+
Define a debug property with value true.
+
+<property name="debug" value="true" />
+
+
+
+
Use the user-defined debug property.
+
+<property name="trace" value="${debug}" />
+
+
+
+
Define a read-only property. This is just like passing in the param on the command line.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Sets project properties based on the evaluatuion of a regular expression.
+
The pattern attribute must contain one or more named grouping constructs, which represents the names of the properties to be set. These named grouping constructs can be enclosed by angle brackets (?<name>) or single quotes (?'name').
+
+ Note: In the build file, use the XML element < to specify <, and > to specify >.
+
+ Note: The named grouping construct must not contain any punctuation and it cannot begin with a number.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Adds all public classes contained in myTest.dll to a COM+ application and produces the myTest.tlb type library. If the application already exists, it is overwritten.
Adds all public classes contained in myTest.dll to myTargetApp and produces the myTest.tlb type library. If the application already exists, it is overwritten.
Converts files from one resource format to another.
+
+ Note: If no todir is specified, the resource file will be created next to the input file.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
input
+
file
+
Input file to process.
+
False
+
+
+
output
+
file
+
The resource file to output.
+
False
+
+
+
target
+
string
+
The target type. The default is resources.
+
False
+
+
+
todir
+
directory
+
The directory to which outputs will be stored.
+
False
+
+
+
usesourcepath
+
bool
+
Use each source file's directory as the current directory for resolving relative file paths. The default is false. Only supported when targeting .NET 2.0 (or higher).
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
supportsassemblyreferences
+
bool
+
Indicates whether assembly references are supported by the resgen tool for the current target framework. The default is false.
+
False
+
+
+
supportsexternalfilereferences
+
bool
+
Indicates whether external file references are supported by the resgen tool for the current target framework. The default is false.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Executes the code contained within the task. This code can include custom extension function definitions. Once the script task has executed those custom functions will be available for use in the buildfile.
+
The <script> task must contain a single code element, which in turn contains the script code.
+
A static entry point named ScriptMain is required if no custom functions have been defined. It must have a single Project parameter.
+
The following namespaces are loaded by default:
+
+
System
+
System.Collections
+
System.Collections.Specialized
+
System.IO
+
System.Text
+
System.Text.RegularExpressions
+
NAnt.Core
+
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
language
+
string
+
The language of the script block. Possible values are "VB", "vb", "VISUALBASIC", "C#", "c#", "CSHARP". "JS", "js", "JSCRIPT" "VJS", "vjs", "JSHARP" or a fully-qualified name for a class implementing CodeDomProvider.
+
True
+
+
+
mainclass
+
string
+
The name of the main class containing the static ScriptMain entry point.
+
False
+
+
+
prefix
+
string
+
The namespace prefix for any custom functions defined in the script. If ommitted the prefix will default to 'script'
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
Run Visual Basic.NET code that writes a message to the build log.
+
<script language="VB">
+ <code>
+ <![CDATA[
+ Public Shared Sub ScriptMain(project As Project)
+ project.Log(Level.Info, "Hello World from a script task using Visual Basic.NET")
+ End Sub
+ ]]>
+ </code>
+ </script>
+
Sets an environment variable or a whole collection of them. Use an empty value attribute to clear a variable.
+
+ Note: Variables will be set for the current NAnt process and all child processes that NAnt spawns (compilers, shell tools, etc). If the intention is to only set a variable for a single child process, then using the <exec> task and its nested environment element might be a better option.
+
+ Note: Expansion of inline environment variables is performed using the syntax of the current platform. So on Windows platforms using the string %PATH% in the value attribute will result in the value of the PATH variable being expanded in place before the variable is set.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
dir
+
directory
+
The value for a directory-based environment variable. NAnt will convert it to an absolute path.
+
False
+
+
+
file
+
file
+
The value for a file-based environment variable. NAnt will convert it to an absolute filename.
+
False
+
+
+
name
+
string
+
The name of a single Environment variable to set
+
False
+
+
+
path
+
<path>
+
The value for a PATH like environment variable. You can use : or ; as path separators and NAnt will convert it to the platform's local conventions.
+
False
+
+
+
value
+
string
+
The literal value for the environment variable.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
The value for a directory-based environment variable. NAnt will convert it to an absolute path.
+
False
+
+
+
file
+
file
+
The value for a file-based environment variable. NAnt will convert it to an absolute filename.
+
False
+
+
+
if
+
bool
+
Indicates if the environment variable should be passed to the external program. If true then the environment variable will be passed; otherwise, skipped. The default is true.
+
False
+
+
+
path
+
<path>
+
The value for a PATH like environment variable. You can use : or ; as path separators and NAnt will convert it to the platform's local conventions.
+
False
+
+
+
unless
+
bool
+
Indicates if the environment variable should not be passed to the external program. If false then the environment variable will be passed; otherwise, skipped. The default is false.
Compiles VS.NET solutions (or sets of projects), automatically determining project dependencies from inter-project references.
+
This task support the following projects:
+
+
Visual Basic .NET
+
Visual C# .NET
+
Visual J# .NET
+
Visual C++ .NET
+
+
+ Note: Right now, only Microsoft Visual Studio .NET 2002 and 2003 solutions and projects are supported. Support for .NET Compact Framework projects is also not available at this time.
+
The <solution> task also supports the model of referencing projects by their output filenames, rather than referencing them inside the solution. It will automatically detect the existance of a file reference and convert it to a project reference. For example, if project "A" references the file in the release output directory of project "B", the <solution> task will automatically convert this to a project dependency on project "B" and will reference the appropriate configuration output directory at the final build time (ie: reference the debug version of "B" if the solution is built as debug).
+
+ Note: The <solution> task expects all project files to be valid XML files.
+
Resx Files
+
When building a project for a down-level target framework, special care should be given to resx files. Resx files (can) contain references to a specific version of CLR types, and as such are only upward compatible.
+
For example: if you want to be able to build a project both as a .NET 1.0 and .NET 1.1 assembly, the resx files should only contain references to .NET 1.0 CLR types. Failure to do this may result in a InvalidCastException failure at runtime on machines with only the .NET Framework 1.0 installed.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
configuration
+
string
+
The name of the solution configuration to build.
+
True
+
+
+
enablewebdav
+
bool
+
Allow the task to use WebDAV for retrieving/compiling the projects within solution. Use of WebMap is preferred over WebDAV. The default is false.
+
False
+
+
+
includevsfolders
+
bool
+
Includes Visual Studio search folders in reference search path. The default is true.
+
False
+
+
+
outputdir
+
directory
+
The directory where compiled targets will be placed. This overrides path settings contained in the solution/project.
+
False
+
+
+
solutionfile
+
file
+
The name of the VS.NET solution file to build.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
Compiles all of the projects in the solution mapping the specific project at http://localhost/A/A.csproj to c:\inetpub\wwwroot\A\A.csproj and any URLs under http://localhost/B/[remainder] to c:\other\B\[remainder]. This allows the build to work without WebDAV.
XSLT parameters to be passed to the XSLT transformation.
<parameter>
Represents an XSLT parameter.
Parameters
Attribute
Type
Description
Required
name
string
The name of the XSLT parameter.
True
value
string
The value of the XSLT parameter.
True
if
bool
Indicates if the parameter should be added to the XSLT argument list. If true then the parameter will be added; otherwise, skipped. The default is true.
False
namespaceuri
string
The namespace URI to associate with the parameter.
False
unless
bool
Indicates if the parameter should not be added to the XSLT argument list. If false then the parameter will be added; otherwise, skipped. The default is false.
XSLT extension objects to be passed to the XSLT transformation.
<extensionobject>
Represents an XSLT extension object. The object should have a default parameterless constructor and the return value should be one of the four basic XPath data types of number, string, Boolean or node set.
Parameters
Attribute
Type
Description
Required
assembly
file
The assembly which contains the XSLT extension object.
True
typename
string
The full type name of the XSLT extension object.
True
if
bool
Indicates if the extension object should be added to the XSLT argument list. If true then the extension object will be added; otherwise, skipped. The default is true.
False
namespaceuri
string
The namespace URI to associate with the extension object.
False
unless
bool
Indicates if the extension object should not be added to the XSLT argument list. If false then the extension object will be added; otherwise, skipped. The default is false.
Sets a number of properties with information about the system environment. The intent of this task is for nightly build logs to have a record of system information so that the build was performed on.
+
+
+
+
Property
+
Value
+
+
+
<prefix>.clr.version
+
Common Language Runtime version number.
+
+
+
<prefix>.env.*
+
Environment variables (e.g., <prefix>.env.PATH).
+
+
+
<prefix>.os.platform
+
Operating system platform ID.
+
+
+
<prefix>.os.version
+
Operating system version.
+
+
+
<prefix>.os
+
Operating system version string.
+
+
+
<prefix>.os.folder.applicationdata
+
The directory that serves as a common repository for application-specific data for the current roaming user.
+
+
+
<prefix>.os.folder.commonapplicationdata
+
The directory that serves as a common repository for application-specific data that is used by all users.
+
+
+
<prefix>.os.folder.commonprogramfiles
+
The directory for components that are shared across applications.
+
+
+
<prefix>.os.folder.desktopdirectory
+
The directory used to physically store file objects on the desktop. Do not confuse this directory with the desktop folder itself, which is a virtual folder.
+
+
+
<prefix>.os.folder.programfiles
+
The Program Files directory.
+
+
+
<prefix>.os.folder.system
+
The System directory.
+
+
+
<prefix>.os.folder.temp
+
The temporary directory.
+
+
+
+
When the name of an environment variable is not a valid property name, the task will fail. In that case, set failonerror to true to allow that environment variable to be skipped.
+
+ Note: we advise you to use the following functions instead:
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Specifies the source type library that gets passed to the type library importer.
+
True
+
+
+
asmversion
+
string
+
Specifies the version number of the assembly to produce.
+
False
+
+
+
delaysign
+
bool
+
Specifies whether the resulting assembly should be signed with a strong name using delayed signing. The default is false.
+
False
+
+
+
keycontainer
+
string
+
Specifies the key container in which the public/private key pair should be found that should be used to sign the resulting assembly with a strong name.
+
False
+
+
+
keyfile
+
file
+
Specifies the publisher's official public/private key pair with which the resulting assembly should be signed with a strong name.
+
False
+
+
+
namespace
+
string
+
Specifies the namespace in which to produce the assembly.
+
False
+
+
+
primary
+
bool
+
Specifies whether a primary interop assembly should be produced for the specified type library. The default is false.
+
False
+
+
+
publickey
+
file
+
Specifies the file containing the public key to use to sign the resulting assembly.
+
False
+
+
+
strictref
+
bool
+
Specifies whether a type library should not be imported if all references within the current assembly or the reference assemblies cannot be resolved. The default is false.
+
False
+
+
+
sysarray
+
bool
+
Specifies whether to import a COM style SafeArray as a managed Array class type. The default is false.
+
False
+
+
+
transform
+
string
+
Specifies how to transform the metadata [.NET 1.1 or higher].
+
False
+
+
+
unsafe
+
bool
+
Specifies whether interfaces should be produced without .NET Framework security checks. The default is false.
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
supportstransform
+
bool
+
Indicates whether tlbimp supports transforming metadata for a given target framework. The default is true.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Generate an assembly named "Interop.MSVidCtlLib.dll" for the MS Video Control 1.0 Type Library, transforming any [out, retval] parameters of methods on dispinterfaces in the type library into return values in the managed library.
By default the <tstamp> task displays the current date and time and sets the following properties:
+
+
tstamp.date to yyyyMMdd
+
tstamp.time to HHmm
+
tstamp.now using the default DateTime.ToString() method
+
+
To set an additional property with a custom date/time use the property and pattern attributes. To set a number of additional properties with the exact same date and time use the formatter nested element (see example).
Indicates if the formatter should be used to format the timestamp. If true then the formatter will be used; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Indicates if the formatter should be not used to format the timestamp. If false then the formatter will be used; otherwise, skipped. The default is false.
+ Note: In order to have <vbc> task generate manifest resource names that match those generated by Microsoft Visual Studio.NET, the value of the prefix attribute of the <resources> element should match the "Root namespace" of the VB.NET project, and the value of the dynamicprefix attribute should be set to "false".
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
baseaddress
+
string
+
The preferred base address at which to load a DLL. The default base address for a DLL is set by the .NET Framework common language runtime.
Specifies the type of debugging information generated by the compiler. The default is None.
+
False
+
+
+
doc
+
file
+
The name of the XML documentation file to generate. Only supported when targeting .NET 2.0 (or higher).
+
False
+
+
+
imports
+
string
+
+ Deprecated. Specifies whether the /imports option gets passed to the compiler.
+
False
+
+
+
nostdlib
+
bool
+
Instructs the compiler not to reference standard libraries (system.dll and VBC.RSP). The default is false. Only supported when targeting .NET 2.0 (or higher).
+
False
+
+
+
optioncompare
+
string
+
Specifies whether /optioncompare option gets passed to the compiler.
+
False
+
+
+
optionexplicit
+
bool
+
Specifies whether the /optionexplicit option gets passed to the compiler. The default is false.
+
False
+
+
+
optionoptimize
+
bool
+
Specifies whether the /optimize option gets passed to the compiler. The default is false.
+
False
+
+
+
optionstrict
+
bool
+
Specifies whether the /optionstrict option gets passed to the compiler. The default is false.
+
False
+
+
+
platform
+
string
+
Specifies which platform version of common language runtime (CLR) can run the output file.
+
False
+
+
+
removeintchecks
+
bool
+
Specifies whether the /removeintchecks option gets passed to the compiler. The default is false.
+
False
+
+
+
rootnamespace
+
string
+
Specifies whether the /rootnamespace option gets passed to the compiler.
+
False
+
+
+
output
+
file
+
The output file created by the compiler.
+
True
+
+
+
target
+
string
+
Output type. Possible values are exe, winexe, library or module.
+
True
+
+
+
define
+
string
+
Define conditional compilation symbol(s).
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
keycontainer
+
string
+
Specifies the key pair container used to strongname the assembly.
+
False
+
+
+
keyfile
+
file
+
Specifies a strong name key file.
+
False
+
+
+
main
+
string
+
Specifies which type contains the Main method that you want to use as the entry point into the program.
+
False
+
+
+
nowarn
+
string
+
+ Deprecated. Specifies a comma-separated list of warnings that should be suppressed by the compiler.
+
False
+
+
+
rebuild
+
bool
+
Instructs NAnt to recompile the output file regardless of the file timestamps.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
warnaserror
+
bool
+
Instructs the compiler to treat all warnings as errors. The default is false.
+
False
+
+
+
win32icon
+
file
+
Icon to associate with the application.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
nostdlib
+
bool
+
Instructs the compiler not to reference standard libraries (system.dll and VBC.RSP). The default is false. Only supported when targeting .NET 2.0 (or higher).
+
False
+
+
+
supportsdocgeneration
+
bool
+
Specifies whether the compiler for the active target framework supports generation of XML Documentation file. The default is false.
+
False
+
+
+
supportskeycontainer
+
bool
+
Indicates whether the compiler for a given target framework supports the "keycontainer" option. The default is false.
+
False
+
+
+
supportskeyfile
+
bool
+
Indicates whether the compiler for a given target framework supports the "keyfile" option. The default is false.
+
False
+
+
+
supportsnostdlib
+
bool
+
Specifies whether the compiler for the active target framework supports NOT referencing standard libraries (system.dll and VBC.RSP). The default is false.
+
False
+
+
+
supportsnowarnlist
+
bool
+
Indicates whether the compiler for a given target framework supports a command line option that allows a list of warnings to be suppressed. The default is false.
+
False
+
+
+
supportspackagereferences
+
bool
+
Indicates whether package references are supported by compiler for a given target framework. The default is false.
+
False
+
+
+
supportsplatform
+
bool
+
Specifies whether the compiler for the active target framework supports limiting the platform on which the compiled code can run. The default is false.
+
False
+
+
+
supportswarnaserrorlist
+
bool
+
Indicates whether the compiler for a given target framework supports the "warnaserror" option that takes a list of warnings. The default is false.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Compiles Visual J# programs using vjc, Microsoft's J# compiler.
+
+ Note: In order to have <vjc> task generate manifest resource names that match those generated by Microsoft Visual Studio.NET, the value of the prefix attribute of the <resources> element should match the "Default Package" of the J#.NET project, and the value of the dynamicprefix attribute should be set to "true".
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
codepage
+
string
+
Specifies the code page to use for all source code files in the compilation.
Specifies the type of debugging information generated by the compiler. The default is None.
+
False
+
+
+
jcpa
+
string
+
Associate Java-language/COM package names.
+
False
+
+
+
libpath
+
string
+
Specifies the location of assemblies referenced by way of the /reference flag.
+
False
+
+
+
securescoping
+
bool
+
Specifies whether package-scoped members are accessible outside of the assembly. In other words, package scope is treated as assembly scope when emitting metadata. The default is false.
+
False
+
+
+
warninglevel
+
string
+
Specifies the warning level for the compiler to display. Valid values are 0-4. The default is 4.
+
False
+
+
+
x
+
string
+
Specifies whether to disable language extensions.
+
False
+
+
+
output
+
file
+
The output file created by the compiler.
+
True
+
+
+
target
+
string
+
Output type. Possible values are exe, winexe, library or module.
+
True
+
+
+
define
+
string
+
Define conditional compilation symbol(s).
+
False
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
keycontainer
+
string
+
Specifies the key pair container used to strongname the assembly.
+
False
+
+
+
keyfile
+
file
+
Specifies a strong name key file.
+
False
+
+
+
main
+
string
+
Specifies which type contains the Main method that you want to use as the entry point into the program.
+
False
+
+
+
nowarn
+
string
+
+ Deprecated. Specifies a comma-separated list of warnings that should be suppressed by the compiler.
+
False
+
+
+
rebuild
+
bool
+
Instructs NAnt to recompile the output file regardless of the file timestamps.
+
False
+
+
+
timeout
+
int
+
The maximum amount of time the application is allowed to execute, expressed in milliseconds. Defaults to no time-out.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
+
False
+
+
+
warnaserror
+
bool
+
Instructs the compiler to treat all warnings as errors. The default is false.
+
False
+
+
+
win32icon
+
file
+
Icon to associate with the application.
+
False
+
+
+
+
Framework-configurable parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
exename
+
string
+
The name of the executable that should be used to launch the external program.
+
False
+
+
+
supportskeycontainer
+
bool
+
Indicates whether the compiler for a given target framework supports the "keycontainer" option. The default is false.
+
False
+
+
+
supportskeyfile
+
bool
+
Indicates whether the compiler for a given target framework supports the "keyfile" option. The default is false.
+
False
+
+
+
supportsnowarnlist
+
bool
+
Indicates whether the compiler for a given target framework supports a command line option that allows a list of warnings to be suppressed. The default is false.
+
False
+
+
+
supportswarnaserrorlist
+
bool
+
Indicates whether the compiler for a given target framework supports the "warnaserror" option that takes a list of warnings. The default is false.
+
False
+
+
+
useruntimeengine
+
bool
+
Specifies whether the external program should be executed using a runtime engine, if configured. The default is false.
The command-line arguments for the external program.
Represents a command-line argument.
Parameters
Attribute
Type
Description
Required
dir
directory
The value for a directory-based command-line argument; will be replaced with the absolute path of the directory.
False
file
file
The name of a file as a single command-line argument; will be replaced with the absolute filename of the file.
False
if
bool
Indicates if the argument should be passed to the external program. If true then the argument will be passed; otherwise, skipped. The default is true.
False
line
string
List of command-line arguments; will be passed to the executable as is.
False
path
<path>
The value for a PATH-like command-line argument; you can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Indicates if the argument should not be passed to the external program. If false then the argument will be passed; otherwise, skipped. The default is false.
False
value
string
A single command-line argument; can contain space characters.
Namespace definitions to resolve prefixes in the XPath expression.
<namespace>
Represents an XML namespace.
Parameters
Attribute
Type
Description
Required
prefix
string
The prefix to associate with the namespace.
True
uri
string
The associated XML namespace URI.
True
if
bool
Indicates if the namespace should be added to the XmlNamespaceManager. If true then the namespace will be added; otherwise, skipped. The default is true.
False
unless
bool
Indicates if the namespace should not be added to the XmlNamespaceManager. list. If false then the parameter will be added; otherwise, skipped. The default is false.
False
</namespace>
+
</namespaces>
+
Examples
+
+
+
The example provided assumes that the following XML file (App.config) exists in the current build directory.
Replaces text in an XML file at the location specified by an XPath expression.
+
The location specified by the XPath expression must exist, it will not create the parent elements for you. However, provided you have a root element you could use a series of the tasks to build the XML file up if necessary.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
file
+
file
+
The name of the file that contains the XML document that is going to be poked.
+
True
+
+
+
value
+
string
+
The value that replaces the contents of the selected nodes.
+
True
+
+
+
xpath
+
string
+
The XPath expression used to select which nodes are to be modified.
+
True
+
+
+
failonerror
+
bool
+
Determines if task failure stops the build, or is just reported. The default is true.
+
False
+
+
+
if
+
bool
+
If true then the task will be executed; otherwise, skipped. The default is true.
+
False
+
+
+
unless
+
bool
+
Opposite of if. If false then the task will be executed; otherwise, skipped. The default is false.
+
False
+
+
+
verbose
+
bool
+
Determines whether the task should report detailed build log messages. The default is false.
Namespace definitions to resolve prefixes in the XPath expression.
<namespace>
Represents an XML namespace.
Parameters
Attribute
Type
Description
Required
prefix
string
The prefix to associate with the namespace.
True
uri
string
The associated XML namespace URI.
True
if
bool
Indicates if the namespace should be added to the XmlNamespaceManager. If true then the namespace will be added; otherwise, skipped. The default is true.
False
unless
bool
Indicates if the namespace should not be added to the XmlNamespaceManager. list. If false then the parameter will be added; otherwise, skipped. The default is false.
False
</namespace>
+
</namespaces>
+
Examples
+
+
+
Change the server setting in the configuration from testhost.somecompany.com to productionhost.somecompany.com.
Specialized <fileset> class for managing assembly files.
+
If an include pattern does not contain any wildcard characters then the assembly will be searched for in following locations (in the order listed):
+
+
The base directory of the fileset.
+
The directories specified using the nested <lib> element.
+
The assembly directory of the current target framework.
+
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
basedir
+
directory
+
The base of the directory of this fileset. The default is the project base directory.
+
False
+
+
+
defaultexcludes
+
bool
+
Indicates whether default excludes should be used or not. The default is true.
+
False
+
+
+
failonempty
+
bool
+
When set to true, causes the fileset element to throw a ValidationException when no files match the includes and excludes criteria. The default is false.
Additional directories to search in for assembly references.
A specialized <fileset> used for setting the lib directories.
The primary reason for this class is to allow the BaseDirectory to always be the same value as the parent <assemblyfileset>
Parameters
Attribute
Type
Description
Required
defaultexcludes
bool
Indicates whether default excludes should be used or not. The default is true.
False
failonempty
bool
When set to true, causes the fileset element to throw a ValidationException when no files match the includes and excludes criteria. The default is false.
False
id
string
The ID used to be referenced later.
False
refid
string
The ID to use as the reference.
False
Nested Elements:
+ <includes>
+
Deprecated. The items to include in the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to include.
True
asis
bool
If true then the file name will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the file will be searched for on the path. The default is false.
False
if
bool
If true then the pattern will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be included; otherwise, skipped. The default is false.
False
+ </includes>
+
+ <include>
+
The items to include in the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to include.
True
asis
bool
If true then the file name will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the file will be searched for on the path. The default is false.
False
if
bool
If true then the pattern will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be included; otherwise, skipped. The default is false.
False
+ </include>
+
+ <excludes>
+
Deprecated. The items to exclude from the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to exclude.
True
if
bool
If true then the pattern will be excluded; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be excluded; otherwise, skipped. The default is false.
False
+ </excludes>
+
+ <exclude>
+
The items to exclude from the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to exclude.
True
if
bool
If true then the pattern will be excluded; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be excluded; otherwise, skipped. The default is false.
False
+ </exclude>
+
+ <includesList>
+
Deprecated. The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
True
+ </includesList>
+
+ <includesfile>
+
The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
True
+ </includesfile>
+
+ <excludesfile>
+
The files from which a list of patterns or files to exclude should be obtained.
Parameters
Attribute
Type
Description
Required
name
file
The name of a file; each line of this file is taken to be a pattern.
True
if
bool
If true then the patterns will be excluded; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be excluded; otherwise, skipped. The default is false.
+ Deprecated. The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
Provides credentials for password-based authentication schemes.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
domain
+
string
+
The domain or computer name that verifies the credentials.
+
False
+
+
+
if
+
bool
+
Indicates if the credentials should be used to provide authentication information to the external resource. If true then the credentials will be passed; otherwise, not. The default is true.
+
False
+
+
+
password
+
string
+
The password for the user name associated with the credentials.
+
False
+
+
+
unless
+
bool
+
Indicates if the credentials should not be used to provide authentication information to the external resource. If false then the credentials will be passed; otherwise, not. The default is false.
+
False
+
+
+
username
+
string
+
The user name associated with the credentials.
+
False
+
+
+
id
+
string
+
The ID used to be referenced later.
+
False
+
+
+
refid
+
string
+
The ID to use as the reference.
+
False
+
+
+
+
Requirements
+
+ Assembly: NAnt.Core (0.85.2478.0)
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/types/cvsfileset.html b/build-support/tools/nant/doc/help/types/cvsfileset.html
new file mode 100644
index 00000000..ec853ade
--- /dev/null
+++ b/build-support/tools/nant/doc/help/types/cvsfileset.html
@@ -0,0 +1,175 @@
+
+
+
+
+
+
+
+ <cvsfileset> Type
+
+
+
Indicates whether the entires in the .cvsignore should be used to limit the file list; true to exclude files in .cvsignore, otherwise false. The default is true.
+
False
+
+
+
basedir
+
directory
+
The base of the directory of this fileset. The default is the project base directory.
+
False
+
+
+
defaultexcludes
+
bool
+
Indicates whether default excludes should be used or not. The default is true.
+
False
+
+
+
failonempty
+
bool
+
When set to true, causes the fileset element to throw a ValidationException when no files match the includes and excludes criteria. The default is false.
+ Deprecated. The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
A specialized <fileset> used for specifying a set of directories.
Hint for supporting tasks that the included directories instead of files should be used.
Parameters
Attribute
Type
Description
Required
basedir
directory
The base of the directory of this fileset. The default is the project base directory.
False
defaultexcludes
bool
Indicates whether default excludes should be used or not. The default is true.
False
failonempty
bool
When set to true, causes the fileset element to throw a ValidationException when no files match the includes and excludes criteria. The default is false.
False
id
string
The ID used to be referenced later.
False
refid
string
The ID to use as the reference.
False
Nested Elements:
+ <includes>
+
Deprecated. The items to include in the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to include.
True
asis
bool
If true then the file name will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the file will be searched for on the path. The default is false.
False
if
bool
If true then the pattern will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be included; otherwise, skipped. The default is false.
False
+ </includes>
+
+ <include>
+
The items to include in the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to include.
True
asis
bool
If true then the file name will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the file will be searched for on the path. The default is false.
False
if
bool
If true then the pattern will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be included; otherwise, skipped. The default is false.
False
+ </include>
+
+ <excludes>
+
Deprecated. The items to exclude from the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to exclude.
True
if
bool
If true then the pattern will be excluded; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be excluded; otherwise, skipped. The default is false.
False
+ </excludes>
+
+ <exclude>
+
The items to exclude from the fileset.
Parameters
Attribute
Type
Description
Required
name
string
The pattern or file name to exclude.
True
if
bool
If true then the pattern will be excluded; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the pattern will be excluded; otherwise, skipped. The default is false.
False
+ </exclude>
+
+ <includesList>
+
Deprecated. The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
True
+ </includesList>
+
+ <includesfile>
+
The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
True
+ </includesfile>
+
+ <excludesfile>
+
The files from which a list of patterns or files to exclude should be obtained.
Parameters
Attribute
Type
Description
Required
name
file
The name of a file; each line of this file is taken to be a pattern.
True
if
bool
If true then the patterns will be excluded; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be excluded; otherwise, skipped. The default is false.
False
+ </excludesfile>
+
Requirements
Assembly: NAnt.Core (0.85.2478.0)
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/doc/help/types/fileset.html b/build-support/tools/nant/doc/help/types/fileset.html
new file mode 100644
index 00000000..ac77dbd0
--- /dev/null
+++ b/build-support/tools/nant/doc/help/types/fileset.html
@@ -0,0 +1,282 @@
+
+
+
+
+
+
+
+ <fileset> Type
+
+
+
Filesets are groups of files. These files can be found in a directory tree starting in a base directory and are matched by patterns taken from a number of patterns. Filesets can appear inside tasks that support this feature or at the project level, i.e., as children of <project>.
+
Patterns
+
As described earlier, patterns are used for the inclusion and exclusion. These patterns look very much like the patterns used in DOS and UNIX:
+
+
+
'*' matches zero or more characters
+
For example:
+
+ *.cs matches .cs, x.cs and FooBar.cs, but not FooBar.xml (does not end with .cs).
+
+
+
'?' matches one character
+
For example:
+
+ ?.cs matches x.cs, A.cs, but not .cs or xyz.cs (both don't have one character before .cs).
+
+
+
Combinations of *'s and ?'s are allowed.
+
Matching is done per-directory. This means that first the first directory in the pattern is matched against the first directory in the path to match. Then the second directory is matched, and so on. For example, when we have the pattern /?abc/*/*.cs and the path /xabc/foobar/test.cs, the first ?abc is matched with xabc, then * is matched with foobar, and finally *.cs is matched with test.cs. They all match, so the path matches the pattern.
+
To make things a bit more flexible, we added one extra feature, which makes it possible to match multiple directory levels. This can be used to match a complete directory tree, or a file anywhere in the directory tree. To do this, ** must be used as the name of a directory. When ** is used as the name of a directory in the pattern, it matches zero or more directories. For example: /test/** matches all files/directories under /test/, such as /test/x.cs, or /test/foo/bar/xyz.html, but not /xyz.xml.
+
There is one "shorthand" - if a pattern ends with / or \, then ** is appended. For example, mypackage/test/ is interpreted as if it were mypackage/test/**.
+
Default Excludes
+
There are a set of definitions that are excluded by default from all tasks that use filesets. They are:
+
+
**/*~
+
**/#*#
+
**/.#*
+
**/%*%
+
**/CVS
+
**/CVS/**
+
**/.cvsignore
+
**/.svn
+
**/.svn/**
+
**/_svn
+
**/_svn/**
+
**/SCCS
+
**/SCCS/**
+
**/vssver.scc
+
**/_vti_cnf/**
+
+
If you do not want these default excludes applied, you may disable them by setting defaultexcludes to false.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
basedir
+
directory
+
The base of the directory of this fileset. The default is the project base directory.
+
False
+
+
+
defaultexcludes
+
bool
+
Indicates whether default excludes should be used or not. The default is true.
+
False
+
+
+
failonempty
+
bool
+
When set to true, causes the fileset element to throw a ValidationException when no files match the includes and excludes criteria. The default is false.
+ Deprecated. The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
Represent a chain of NAnt filters that can be applied to a Task.
+
A FilterChain represents a collection of one or more filters that can be appled to a Task such as the <copy> task. In the case of the <copy> task, the contents of the copied files are filtered through each filter specified in the filter chain. Filtering occurs in the order the filters are specified with filtered output of one filter feeding into another.
Filesets are groups of files. These files can be found in a directory tree starting in a base directory and are matched by patterns taken from a number of patterns. Filesets can appear inside tasks that support this feature or at the project level, i.e., as children of <project>.
Paths are groups of files and/or directories that need to be passed as a single unit. The order in which parts of the path are specified in the build file is retained, and duplicate parts are automatically suppressed.
Paths are groups of files and/or directories that need to be passed as a single unit. The order in which parts of the path are specified in the build file is retained, and duplicate parts are automatically suppressed.
Defines a path element to add to the current path.
Represents a nested path element.
Parameters
Attribute
Type
Description
Required
dir
directory
The name of a directory to add to the path. Will be replaced with the absolute path of the directory.
False
file
file
The name of a file to add to the path. Will be replaced with the absolute path of the file.
False
if
bool
If true then the entry will be added to the path; otherwise, skipped. The default is true.
False
path
<path>
A string that will be treated as a path-like string. You can use : or ; as path separators and NAnt will convert it to the platform's local conventions, while resolving references to environment variables.
False
unless
bool
Opposite of if. If false then the entry will be added to the path; otherwise, skipped. The default is false.
Contains HTTP proxy settings used to process requests to Internet resources.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
host
+
string
+
The name of the proxy host.
+
True
+
+
+
port
+
int
+
The port number on host to use.
+
True
+
+
+
bypassonlocal
+
bool
+
Specifies whether to bypass the proxy server for local addresses. The default is false.
+
False
+
+
+
if
+
bool
+
Indicates if the proxy should be used to connect to the external resource. If true then the proxy will be used; otherwise, not. The default is true.
+
False
+
+
+
unless
+
bool
+
Indicates if the proxy should not be used to connect to the external resource. If false then the proxy will be used; otherwise, not. The default is false.
Specialized <fileset> class for managing resource files.
+
Parameters
+
+
+
+
Attribute
+
Type
+
Description
+
Required
+
+
+
dynamicprefix
+
bool
+
Indicates that prefixes should be dynamically generated by taking the path of the resource relative to the basedir and appending it to the specified prefix.
+
False
+
+
+
prefix
+
string
+
Indicates the prefix to prepend to the actual resource. This is usually the default namspace of the assembly.
+
False
+
+
+
basedir
+
directory
+
The base of the directory of this fileset. The default is the project base directory.
+
False
+
+
+
defaultexcludes
+
bool
+
Indicates whether default excludes should be used or not. The default is true.
+
False
+
+
+
failonempty
+
bool
+
When set to true, causes the fileset element to throw a ValidationException when no files match the includes and excludes criteria. The default is false.
+ Deprecated. The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
A 3 digit octal string, specify the user, group and other modes in the standard Unix fashion. Only applies to directories. The default is 755.
+
False
+
+
+
filemode
+
int
+
A 3 digit octal string, specify the user, group and other modes in the standard Unix fashion. Only applies to plain files. The default is 644.
+
False
+
+
+
gid
+
int
+
The group identifier (GID) for the tar entry.
+
False
+
+
+
groupname
+
string
+
The groupname for the tar entry.
+
False
+
+
+
prefix
+
string
+
The top level directory prefix. If set, all file and directory paths in the fileset will have this value prepended. Can either be a single directory name or a "/" separated path.
+
False
+
+
+
uid
+
int
+
The user identifier (UID) for the tar entry.
+
False
+
+
+
username
+
string
+
The username for the tar entry.
+
False
+
+
+
basedir
+
directory
+
The base of the directory of this fileset. The default is the project base directory.
+
False
+
+
+
defaultexcludes
+
bool
+
Indicates whether default excludes should be used or not. The default is true.
+
False
+
+
+
failonempty
+
bool
+
When set to true, causes the fileset element to throw a ValidationException when no files match the includes and excludes criteria. The default is false.
+ Deprecated. The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
Specifies a list of warnings that the compiler should treat as errors. This overrides the warnaserror attribute. Only supported when targeting .NET 2.0 or higher.
Represents a compiler warning.
Parameters
Attribute
Type
Description
Required
number
string
A warning number, or comma-separated list of warnings, that you want the compiler to suppress or report.
True
if
bool
If true then the element will be processed; otherwise, skipped. The default is true.
False
unless
bool
If true then the element will be skipped; otherwise, processed. The default is false.
Specifies a list of warnings that the compiler should NOT treat as errors. This is only useful if warnaserror is true. Only supported when targeting .NET 2.0 or higher.
Represents a compiler warning.
Parameters
Attribute
Type
Description
Required
number
string
A warning number, or comma-separated list of warnings, that you want the compiler to suppress or report.
True
if
bool
If true then the element will be processed; otherwise, skipped. The default is true.
False
unless
bool
If true then the element will be skipped; otherwise, processed. The default is false.
The top level directory prefix. If set, all file and directory paths in the fileset will have this value prepended. Can either be a single directory name or a "/" separated path.
+
False
+
+
+
basedir
+
directory
+
The base of the directory of this fileset. The default is the project base directory.
+
False
+
+
+
defaultexcludes
+
bool
+
Indicates whether default excludes should be used or not. The default is true.
+
False
+
+
+
failonempty
+
bool
+
When set to true, causes the fileset element to throw a ValidationException when no files match the includes and excludes criteria. The default is false.
+ Deprecated. The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
The files from which a list of patterns or files to include should be obtained.
Parameters
Attribute
Type
Description
Required
asis
bool
If true then the patterns in the include file will be added to the <fileset> without pattern matching or checking if the file exists. The default is false.
False
frompath
bool
If true then the patterns in the include file will be searched for on the path. The default is false.
False
if
bool
If true then the patterns will be included; otherwise, skipped. The default is true.
False
unless
bool
Opposite of if. If false then the patterns will be included; otherwise, skipped. The default is false.
False
name
file
The name of a file; each line of this file is taken to be a pattern.
+ This program is free software; you can redistribute it and/or modify it under
+ the terms of the GNU General Public License as published by the Free Software
+ Foundation; either version 2 of the License, or (at your option) any later
+ version.
+
+
+ This program is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+
+ You should have received a copy of the GNU General Public License along with
+ this program; if not, write to the Free Software Foundation, Inc., 59 Temple
+ Place, Suite 330, Boston, MA 02111-1307 USA
+
+
+ As a special exception, the copyright holders of this software give you
+ permission to link the assemblies with independent modules to produce
+ new assemblies, regardless of the license terms of these independent
+ modules, and to copy and distribute the resulting assemblies under
+ terms of your choice, provided that you also meet, for each linked
+ independent module, the terms and conditions of the license of that
+ module. An independent module is a module which is not derived from or
+ based on these assemblies. If you modify this software, you may extend
+ this exception to your version of the software, but you are not
+ obligated to do so. If you do not wish to do so, delete this exception
+ statement from your version.
+
+
+ A copy of the GNU General Public License is available in the COPYING.txt file
+ included with all NAnt distributions.
+
+ NAnt ships with a prebuilt version of NDoc.
+ The NAnt license does not apply to these components located in the bin folder
+ of the distribution. NDoc is licensed under the
+ GNU General Public License.
+
+
NUnit License
+
+ NAnt ships with a prebuilt version of NUnit.
+ The NAnt license does not apply to these components located in the bin folder
+ of the distribution. NUnit is licensed under a
+ OSI approved license.
+
+ Runtime callable wrapper is not used when generating Windows
+ Forms control for ActiveX component that has no Primary
+ Interop Assembly.
+
+
+ When importing a type library, [out, retval] parameters of
+ methods on dispatch-only interfaces (dispinterfaces) are
+ not transformed into return values (bug #1527210).
+
+
+ Dependencies are not handled properly for Enterprise Template
+ projects in Visual Studio .NET 2003 solutions (bug #1534864).
+
+ Added "nostdlib" attribute which can be used to
+ instruct the compiler not to reference standard libraries
+ (system.dll and VBC.RSP). [.NET 2.0 or higher]
+
+
+
+
+ 0.85-rc 4 (June 2, 2006)
+
+ Framework support
+
+
+
+ Added support for .NET Framework 2.0 (except for <solution> task).
+
+ Logic for determining whether compilation is necessary is not correct when PCH
+ file is specified (bug
+ #1191185).
+
+
+ All sources are compiled if any of the specified sources is not up-to-date (bug
+ #1191285).
+
+
+ Macro definitions specified using the <defines> collection
+ are passed to the compiler, regardless of the value of the "if" and
+ "unless" attributes (bug
+ #1221945).
+
+ Modification of an external file does not trigger a rebuilt of the resource
+ (bug
+ #1195320).
+
+
+ Macro definitions specified using the <defines> collection
+ are passed to the compiler, regardless of the value of the "if" and
+ "unless" attributes (bug
+ #1221945).
+
+ Added "MailLogger.success.attachments" and
+ "MailLogger.failure.attachments" properties to allow a set of files
+ to be attached to the message that is sent.
+
+
+
Define types in task containers.
+
+
+ Global types can now be (re)defined in task containers
+ (such a <if> ,
+ <foreach>).
+
+ If "flatten" is set to true and multiple source files are
+ selected to be copied / moved to the same destination file, only the source
+ file that was last written to should actually be copied / moved (bug
+ #1165252).
+
+ A relative path specified in the
+ AssemblyKeyFile attribute must be resolved using either the solution
+ directory or the intermediate output directory.
+
+
+ Configurations containing dashes are skipped (bug
+ #1184173).
+
+
+ Check for existance of specified solution file is performed even if task is not
+ to be executed (bug
+ #1178810).
+
+
+ Project configurations with names that do not match the solution configuration
+ are skipped (bug
+ #947214).
+
+ Added "MailLogger.body.encoding" property to allow the encoding of
+ the body of the message to be set.
+
+
+
Response File
+
+
+ NAnt now supports the use of a response file. Passing @<file> on the
+ command line will cause the contents of <file> to be read as part of the
+ command line. Multiple @<file> arguments may be used.
+
+ Changed "debug" attribute from boolean to
+ DebugOutput enum to allow more control over the type of debugging
+ information generated by the compiler.
+
+ [FileSetBuildElement("fileset")]
+ public FileSet CopyFileSet {
+ get { return _fileset; }
+ set { _fileset = value; }
+ }
+
+
+
+
+ 0.85-rc 2 (February 12, 2005)
+
+ General changes
+
+
+ Building NAnt
+
+
+ The source distribution of NAnt no longer contains pre-built binaries to build
+ a full version of NAnt. Instead, we now include GNU Make and NMake make files
+ to build a bootstrap version of NAnt, which is then used to build the full
+ version of NAnt. More information is available
+ here.
+
+
+
+ License
+
+
+ The special exception that is part of the NAnt license has been modified to
+ avoid confusion.
+
+
+
+
+ Bug fixes
+
Core
+
+
+ XML Schema
+
+
+ NAnt XML Schema definition for collection based elements was incorrect (bug
+ #1076620).
+
+ Manifest resource names of resources in J# projects do not match those
+ generated by Microsoft Visual Studio.NET.
+
+
+ For embedded resources that are dependent on a source file, namespace prefixing
+ is wrong when a namespace declaration is not present in the source file (bug
+ #1077253).
+
+
+ Users should be warned about possible issues with resx files when building a
+ project for a down-level target framework (bug
+ #1077254).
+
+
+ "App.config" should not be considered an output file for Class Library
+ projects.
+
+
+ Win32 resources in Visual C++ projects are not compiled (bug
+ #1077712).
+
+
+ Improve error reporting when a referenced component cannot be resolved (bug
+ #1079777).
+
+
+ MFC and ATL shared linking is not supported for Visual C++ projects (bug
+ #1078636).
+
+
+ <solution> task
+ doesn't support COM, OCX apps built in Visual C++ (bug
+ #1078641).
+
+
+ Support for some compile and link arguments is missing (bug
+ #1080237).
+
+
+ Project dependencies are not re-evaluated when assembly reference is converted
+ to project reference (bug
+ #1076015).
+
+
+ Resolution of assembly references does not match Visual Studio .NET (bug
+ #1077869).
+
+ Relative URI specified as argument for document() function is not
+ considered to be relative to the base URI of stylesheet containing the function
+ call (bug
+ #1078896).
+
+ Added "usesourcepath" attribute to allow the source file's directory to be used
+ as current directory for resolving relative file paths. [.NET 2.0 or higher]
+
+ The "name" attribute of the
+ <import> element has been deprecated, and replaced by
+ a "namespace" attribute. This change affects the following tasks:
+ <asminfo>, <script>
+ and <vbc>.
+
+
+
+
+ 0.85-rc 1 (November 28, 2004)
+
+ Framework support
+
+
+ NAnt 0.85 adds support for the following frameworks (both as runtime and as
+ target framework):
+
+
+ Mono (both 1.0 and 2.0 profile)
+
+
+ .NET 2.0 Beta 1
+
+
+
+
+ By default, NAnt will now target the framework on which its running. For
+ example, if NAnt is running on .NET 2.0, the assemblies built using the
+ <csc> task will target .NET 2.0. Previous versions of
+ NAnt would target .NET 1.0 by default.
+
+ Information on how to override the target framework, can be found
+ here.
+
+
+
+ Breaking changes
+
+
+ In previous version of NAnt, the <arg>
+ element (used by, for example, the <exec>
+ task) would automatically add quotes for both "file" and "value" attributes in
+ the command line generated by the task. That automatic quoting has been removed
+ for "value" attributes (but not for "file" attributes). This change may break
+ build files that assume that both arguments specified using the "file" and
+ "value" attributes will automatically be quoted.
+
+ Overwriting of read-only properties in tasks other than the
+ <property> task will now result in a build failure. Previous
+ versions of NAnt would silently ignore an update of a read-only property.
+
+ The <nunit2> task been
+ updated to support
+ NUnit 2.2. Assemblies built using previous versions of NUnit should
+ either be rebuilt using
+ NUnit 2.2 or a
+ binding redirect should be configured in the application configuration
+ file of the test assembly.
+
+
+
+ General changes
+
+
+ Improved error reporting when invalid values are specified for attibutes
+ representing files or directories.
+
+ This release of NAnt introduces support for expressions. More information is
+ available here.
+
+ FilterChain support has been
+ introduced to NAnt.
+
+ Enums that are used in tasks or types now have their own doc pages.
+
+ The default logger will now also output the number non-fatal errors and
+ warnings.
+
+ Output of the XmlLogger
+ is now buffered until build has finished, and
+ XmlLogger can now also be used as a listener.
+ Lots of built-in properties have been deprecated, and replaced by functions.
+ More information is available here.
+
+ NAnt will now report unknown attributes and child elements when initializing
+ build elements.
+
+
+
+ Commandline changes
+
+
+ Added "-e[macs]" option, which can be used to produce logging information
+ without adornments.
+
+ Added "-ext[ension]" option to allow loading of external assemblies. As a
+ result, third party loggers or listeners no longer have to reside in the NAnt
+ bin directory or the GAC in order to be used by NAnt.
+
+ Deprecated -[defaultframewor]k option in favor of -t[argetframework].
+
+ The <nunit> task has
+ been deprecated, and will be moved to NAntContrib
+ in a future release. NUnit 1.0 test assemblies will remain supported through
+ NAntContrib, but we strongly advise you to upgrade to NUnit 2.x.
+
+ If no explicit application configuration file is specified, a configuration
+ file matching the name of the test assembly with extension ".config" will be
+ used for the test domain.
+ WebMaps are now case-insensitive (and added attribute to enable
+ case-sensitivity).
+
+ Added "enablewebdav" attribute to allow WebDAV access for web projects.
+
+ Added a few unit tests to reduce the likelyhood of regressions.
+
+ Fixed some minor issues with regards to Visual C++ support.
+
+ General performance has been improved, except for project with loads of
+ resources.
+
+ Added support for exclusion of source files for Visual C++ projects.
+
+ No longer stop loading projects, when the first excluded project is encountered
+ (bug #982685).
+
+ No longer automatically use Primary Interop Assemblies for references to type
+ libraries, but output warning instead.
+
+ Added support for satellite assemblies.
+
+ Respect project build order set in VS.NET.
+
+ VB.NET specific settings are now processed.
+
+ Improved support for precompiled headers, better grouping of files that should
+ be compiled in one go.
+
+ Added support for empty projects.
+
+ No longer attempt to build ignored projects.
+
+ Match behaviour of VS.NET when resolving assembly references.
+
+ Fixed lookup of type libraries in the registry.
+
+ Expansion of macros is now case-insensitive.
+
+ Zero-byte resx files are now skipped to match VS.NET.
+
+ Introduced support for nmake projects.
+
+ Added support for web projects nested in Enterprise Template Projects.
+
+ Compiled resource file are now stored in the obj\<configuration>
+ directory relative to project directory. The compiled resource files will not
+ be removed when the task finishes, by doing this resource files will now only
+ be recompiled if the compiled resource file in the object directory is no
+ longer up-to-date. This matches the behaviour of VS.NET.
+
+ Added support for deploying App.config to output directory.
+
+ If "failonerror" is false, the
+ <sysinfo> task will output a warning message in the build log
+ when a certain environment variable cannot be exposed as a property (because
+ of, for example, more strict naming rules for properties) and continue
+ processing other environment variables. In previous versions of NAnt, execution
+ of the <sysinfo> task
+ would halt on the first error.
+ The Task.LogPrefix property has been deprecated. Messages that are
+ written to build log by a given task, will now automatically get prefixed with
+ the task name. This behaviour can be disabled by the new -e[macs] commandline
+ option.
+
+
+
+ 0.84 (December 26, 2003)
+
+ Task changes
+
+ <xmlpeek>
+
+
+ Fixed issues with logging statements.
+
+ Added unit tests.
+
+
+
+ <xmlpoke>
+
+
+ Added unit tests.
+
+
+
+ 0.84-rc 2 (December 21, 2003)
+
+ General changes
+
+
+ Specifying multiple targets on the command line will no longer cause all
+ dependencies of these targets to be executed again.
+
+ The XmlLogger
+ will now correctly handle null-characters in the build output.
+
+ Fixed issue with resources specified using the <resources> element
+ of the compiler tasks.
+
+
+
+ Task changes
+
+ <solution>
+
+
+ Fixed issues with web-projects.
+
+ Added support for generating strongly signed ActiveX/COM wrapper assemblies.
+
+
+
+ <xmlpeek>
+
+
+ filename attribute was renamed to file to improve
+ consistency with other tasks.
+
+
+
+ <xmlpoke>
+
+
+ filename attribute was renamed to file to improve
+ consistency with other tasks.
+
+
+
+ 0.84-rc 1 (December 6, 2003)
+
+ Breaking changes
+
+ Some existing build scripts may stop working now or in the next release due to
+ the following changes:
+
+
+ The NAntContrib binaries are no longer included in the NAnt distribution
+ package. The NAntContrib distribution package can now be obtained
+ here.
+
+ The <call> task now executes the given target and all its
+ dependencies. In previous versions of NAnt only the target itself would be
+ executed.
+
+ The todir attribute of the <copy> and <move>
+ tasks no longer defaults to the project base directory. It must now be set
+ explicitly.
+
+ The force attribute of the <call> task has been
+ deprecated and has no longer any effect. The <call> task
+ will now always execute the specified target, regardless of the fact that this
+ target has already been executed before.
+
+ The string-based files and attachments attributes of
+ the <mail> task have been replaced by fileset support.
+
+ In previous versions of NAnt, the documentation stated that a target identified
+ by the nant.onfailure property would be executed when the build
+ fails. However, NAnt actually executed a target identified by the nant.failure
+ property (if available). This has now been corrected and the old syntax (nant.failure)
+ is now deprecated.
+
+ The <param> element of the <style> task
+ has been deprecated in favor of a <parameters> collection
+ with nested <parameter> elements. The <parameter>
+ element now also supports a namespaceuri, if and unless
+ attribute. See the documentation of the <style> task for
+ more information.
+
+ In previous versions of NAnt, the Plain formatter was implicitly
+ added in the <nunit2> task. In NAnt 0.8.4, the Plain
+ formatter will only implicitly be added if no other formatters are specified.
+ In this case, a warning message will be output to the build log encouraging
+ build authors to explicitly add this formatter for forward compatibility. In
+ future versions of NAnt, the Plain formatter will no longer
+ implicitly be added.
+
+ The nested <param> child element of the <style>
+ task has been deprecated in favor of a nested <parameters> collection.
+
+
+
+ General changes
+
+
+ The user documentation has been overhauled. Nested elements are more clearly
+ documented, documentation has been added for element types such as filesets and
+ credentials, and the overall format is slightly cleaner and easier to use.
+
+ Improved bootstrapping NAnt on linux. Now supports Mono 0.28.
+
+ Localization support has been improved in the <csc>, <jsc>,
+ <vbc> and <vjc> tasks: when dynamixprefix
+ is set to "true" and prefix is set to the root namespace of the assembly for
+ the nested <resources> element, the compiler tasks will now
+ compile resources with IDs matching these generated by VS.NET. Support for the
+ generation of satellite assemblies was also added to these tasks.
+
+ On systems with both the .NET Framework 1.0 and .NET Framework 1.1 installed,
+ NAnt will now execute on the .NET Framework 1.1 by default. Note, the default
+ target framework has remained unchanged, and is still .NET Framework 1.0.
+
+
+
+ New Tasks
+
+ <asminfo>
+
+
+ Moved from NAntContrib to
+ NAnt, and was rewritten to support multiple code languages and attribute types.
+
+
+
+ <servicecontroller>
+
+
+ Allows a Windows service to be controlled (started, stopped, ...).
+
+
+
+ <delay-sign>
+
+
+ Supports delay-signing of strongly named assemblies.
+
+
+
+ <mc>,<rc> and <midl>
+
+
+ Moved from NAntContrib to
+ NAnt. These tasks control compilation of service messages, resources, and IDL
+ code respectively.
+
+
+
+ <xmlpeek>
+
+
+ Extracts text from an XML file at the location specified by an XPath
+ expression.
+
+
+
+ <xmlpoke>
+
+
+ Replaces text in an XML file at the location specified by an XPath expression.
+
+
+
+ Task changes
+
+ <call>
+
+
+ The <call> task now executes the given target and all its
+ dependencies. In previous versions of NAnt only the target itself would be
+ executed.
+
+ The force attribute of the <call> task has been
+ deprecated and has no longer any effect. The <call> task
+ will now always execute the specified target, regardless of the fact that this
+ target has already been executed before.
+
+
+
+ <cl>
+
+
+ Added support for Managed Extensions.
+
+
+
+ <copy>
+
+
+ The todir attribute no longer defaults to the project base
+ directory. It must now be set explicitly.
+
+ Added flatten attribute to allow all matching files to be
+ copied to a single directory.
+
+
+
+ <csc>
+
+
+ Improved localization support.
+
+ Added support for additional search directories to resolve assembly references
+ through a nested <lib> element.
+
+
+
+ <cvs-checkout>
+
+
+ Added option to checkout a revision based on sticky tag, -r on the command line
+ client.
+
+ Added option to checkout a module to an alternate directory, -d on the command
+ line client.
+
+ Fixed bug in parsing cvsnt date format.
+
+
+
+ <cvs-update>
+
+
+ Fixed bug in parsing cvsnt date format.
+
+
+
+ <echo>
+
+
+ Added level attribute to allow messages to be output with a
+ specific level.
+
+
+
+ <fail>
+
+
+ Allow reason of failure to be specified as inline content.
+
+
+
+ <get>
+
+
+ The httpproxy attribute of the <get> task is
+ deprecated, use the new <proxy> child element instead.
+
+ Added <credentials> child element used for authenticating
+ the request with the Internet resource.
+
+ Deprecated the ignoreerrors attribute in favor of the failonerror
+ attribute.
+
+ Added timeout attribute to allow length of time to wait for a
+ response or the request to timeout to be specified.
+
+
+
+ <if>
+
+
+ Added <uptodatefiles child element for uptodate fileset
+ support.
+
+ <if uptodatefile="..."> now behaves as documented, meaning
+ that nested tasks will only be executed if the file specifies in the
+ uptodatefile attribute actually exists and the file specified in the uptodatefile
+ attribute is more recent or the same lastwritetime than the file(s) specifies
+ in the comparefile attribute and <comparefiles>
+ fileset.
+
+
+
+ <include>
+
+
+ A verbose message will now be output to the build log when a file is included
+ multiple times. In previous versions of NAnt, this would cause a build failure.
+
+
+
+ <jsc>
+
+
+ Improved localization support.
+
+ Added support for additional search directories to resolve assembly references
+ through a nested <lib> element.
+
+
+
+ <mail>
+
+
+ The string-based files and attachments attributes
+ have been replaced by fileset support.
+
+
+ <move>
+
+
+ The todir attribute no longer defaults to the project base
+ directory. It must now be set explicitly.
+
+ Added flatten attribute to allow all matching files to
+ be moved to a single directory.
+
+
+
+ <nant>
+
+
+ Properties can now be added or overridden when calling a nested build using the
+ new <properties> child element.
+
+ buildfile is now a required attribute, which makes it harder to
+ accidently write an infinitely looping build.
+
+
+
+ <nantschema>
+
+
+ Currently the <nantschema> task does not generate the
+ correct XML Schema definition for collections and arrays. This tasks needs to
+ be updated. Please use with caution.
+
+
+
+ <ndoc>
+
+
+ Updated the <ndoc> task to using version 1.2 of NDoc.
+
+
+
+ <nunit2>
+
+
+ Updated the <nunit2> task to use version 2.1 of NUnit.
+
+ In previous versions of NAnt, the Plain formatter was implicitly
+ added. In NAnt 0.8.4, the Plain formatter will only implicitly be
+ added if no other formatters are specified. In this case, a warning message
+ will be output to the build log encouraging build authors to explicitly add
+ this formatter for forward compatibility. In future versions of NAnt, the Plain
+ formatter will no longer implicitly be added.
+
+ Added outputdir attribute for <formatter> element
+ to control the directory where the test result file will be stored (if the usefile
+ attribute is "true").
+
+
+
+ <property>
+
+
+ Added overwrite attribute to the <property> task
+ to control whether the value of the specified property should be overwritten
+ when the property already exists.
+
+ Added support for dynamic properties, meaning properties of which references to
+ other properties are not expanded when the value is set.
+
+
+
+ <resgen>
+
+
+ Added support for specifying a prefix to <resgen> task when
+ using a fileset.
+
+
+
+ <solution>
+
+
+ Added nested <assemblyfolders> fileset element that allows a
+ set of folders to be set, that should be searched to resolve assembly
+ references.
+
+ By default, the Visual Studio.NET assembly folders will be searched to resolve
+ assembly references. An includevsfolders attribute was added to
+ control whether these folders should be searched for assembly references.
+
+ Added <excludeprojects> fileset that allows a set of
+ projects to be excluded.
+
+ An outputdir attribute can now be specified, which overrides the
+ directory where compiled targets will be placed.
+
+ A nested <webmap> element was added that maps URL's of web
+ projects to local path, thereby removing the need to configure the web server
+ to allow access to these project files.
+
+ Added support for Visual C++ projects.
+
+ A large number of defect fixes and performance improvements have been applied.
+
+
+
+ <style>
+
+
+ The nested <param> child element has been deprecated in
+ favor of a nested <parameters> collection.
+
+
+
+ <touch>
+
+
+ If the file specified in the single-file case does not exist, it will now be
+ created.
+
+
+
+ <vbc>
+
+
+ Improved localization support.
+
+ Added support for additional search directories to resolve assembly references
+ through a nested <lib> element.
+
+
+
+ <vjc>
+
+
+ Improved localization support.
+
+ Added support for additional search directories to resolve assembly references
+ through a nested <lib> element.
+
+
+
+ <zip>
+
+
+ Fixed issue when files were included that were not located beneath the basedir
+ of the fileset.
+
+
+ Added includeemptydirs attribute to control whether empty
+ directories should be included in the generated zip file.
+
+
+ Fixed failure when no basedir for fileset was specified.
+
+
+ Fixed failure when basedir of fileset is set to the root directory
+ of a drive in Windows.
+
+
+
+ API changes
+
+
+ Added ProgramLocationAttribute that can be assigned to a task to
+ indicate that it wraps an executable that is part of either the .NET Framework
+ or the .NET Framework SDK, and have NAnt figure out the full path to the
+ executable using the framework settings in the NAnt configuration file.
+
+
+ FileSetAttribute has been deprecated. The BuildElementAttribute
+ should be used instead.
+
+
+ Added FrameworkConfigurableAttribute that can be assigned to a
+ task attribute to allow the default values of that attribute to be configured
+ from the framework configuration section in the NAnt configuration file for the
+ currently active framework.
+
+
+ Added <proxy> and <credentials> data
+ types that are used to provide proxy settings and authentication information
+ for tasks that connect to external resources (eg. the <get> task).
+
+
+ Added support for framework-specific third party libraries.
+ Included NAntContrib binaries are from a release build. In rc3 they were debug
+ versions.
+
+
+
+ 0.8.3-rc3 (August 29, 2003)
+
+ User-visible changes
+
+
+ Added test directory to distribution fixing the build failure in 0.8.3.
+
+
+
+ 0.8.3-rc2 (July 28, 2003)
+
+ User-visible changes
+
+
+ Built with .NET 1.0.
+
+ This release candidate is built with version 1.0 of the .NET Framework. The
+ binaries for RC1 had been built with version 1.1, which had backwards
+ compatibility issues.
+
+
+
+ Fixed defect: temp directory leak in <solution> task.
+
+ Matthew Mastracci fixed a major temp directory leak. It was leaking approx. one
+ temp directory per project! You should clear your Local Settings\Temp directory
+ for the user you use to build your solutions.
+
+
+
+ <solution> VB.NET support.
+
+ The <solution> task now supports VB.NET projects. This was meant to be
+ part of the RC1 release.
+
+
+
+ Matthew Mastracci has also checked in support for reading resources of VB
+ projects and generating the appropriate dependent resource name.
+
+
+ Documentation for NAntContrib.
+
+ This release candidate includes the binaries and documentation for the
+ NAntContrib extensions. Note that the source is still distributed seperately
+ during this release cycle.
+
+
+
+
+ 0.8.3-rc1 (July 10, 2003)
+
+ User-visible changes
+
+
+ NAntContrib is now distributed with NAnt.
+
+ To better support the frequently-used NAntContrib extensions, the library is
+ now distributed as part of the NAnt release.
+
+
+
+ Preliminary Linux support.
+
+ This is the first release with Linux support, so please report any issues you
+ encounter. The next release will be fully tested and documented on both Linux
+ and Windows.
+
+
+
+ New Tasks.
+
+
+ <cvs-checkout> task : Checkout source from CVS.
+
+ <cvs-update:> task : Update source from CVS.
+
+ <solution> task : compile .sln directly. In most cases, this means you no
+ longer have to preprocess a solution with the slingshot tool. Supports both
+ Visual Studio .NET and Visual Studio 2003.
+
+
+
+
+ Changed tasks.
+
+ See the section below for details.
+
+
+
+ FileSet references.
+
+ You can now define a named FileSet and refer to it anywhere a FileSet is used.
+
+
+
+
+ API changes
+
+
+ Namespace changes
+
+
+ "SourceForge" is no longer part of the NAnt namespaces.
+
+ Split classes up into Tasks and Types.
+
+ Task assemblies now have their own namespaces.
+
+ Removed Msft prefix from base classes.
+
+
+
+
+ Logging framework changed
+
+
+ Refactored NAnt (build) logging system : moved to an event driven logging
+ system, and allow thresholds to be set. The build outcome is now completely
+ handled by the loggers.
+
+ Replaced the LogListener with an IBuildLogger interface for loggers and an
+ IBuildListener interface for build listeners.
+
+ The ConsoleLogger is replaced by a DefaultLogger, which always logs to the
+ console, and which can also be configured to log to a file (using the -logfile
+ option).
+
+ The static Log class is removed and replaced by instance methods on the Project
+ and Task classes. These instance methods actually fire events that get handled
+ by the build logger and buid listeners.
+
+ Added a Level enum that is used to assign a priority (level) to a message. This
+ allows messages to be filtered on their priority.
+
+ Added a strongly typed collection for the build listeners.
+
+ Updated all existing logging statements to use the new logging system instead
+ of the static Log class. Assigned levels to the existing logging statements.
+
+ Added MailLogger that can be used to send the build results as an email, see
+ xml docs for how its to be configured.
+
+
+
+
+ Many, many style/structure/documentation fixes. More that are worth listing
+ here.
+
+ Fixed NUnit2 support for FileSets.
+
+ Prevent warnings for using obsolete methods to allow NDoc Documenter.Nant to
+ build on .NET 1.1 runtime.
+
+ Nightly.xml no longer depends on NAntContrib tasks.
+
+ Moved <mail> task and test back into core as its working fine on Linux
+ now.
+
+ New attribute-driven command-line parser.
+
+
+
+ Command-line client changes
+
+
+ Changed target back to the default argument.
+
+ Moved company information (http://nant.sourceforge.net) from help text to logo
+ banner.
+
+ Added support for running default.build if there are multiple build files in a
+ directory.
+
+ Added support for collection-based command-line options, with the following
+ restrictions :
+
+
+ property type should implement ICollection
+
+ collection should have an Add method with one parameter
+
+ parameter of the Add method should be strongly-typed
+
+ collection should have a default public constructor
+
+ the property should have a setter if the collection is not initialized (null
+ reference)
+
+
+
+
+ Fixed "bug" where ApplicationException would no longer be throw when no
+ matching buildfile is found after searching the directory tree upwards.
+
+ Updated short form of buildfile to -f.
+
+ Added -q shortname for -quiet command-line option.
+
+ Changed description of -indent command-line option.
+
+ Added command-line option for adding build listeners.
+
+ Updated xml documentation.
+
+ Added command-line options for filtering build output (-debug and -quiet).
+
+ Jarek's patch to allow setting of the default framework from the command line,
+ fixes bug 729778.
+
+ Always use identifier mono-1.0 for Mono framework, no use in always creating
+ new framework configurations for every Mono release.
+
+
+
+ Task changes
+
+ <exec>
+
+
+ Added support for an environment optionset to the <exec> task.
+
+ Fixed optionset so that it correctly returns optionvalues.
+
+ Remove Timeout from ExecTask, make Timeout in ExternalProgramBase a task
+ attribute and make it writable.
+
+ Throw BuildException if process has not exited after timeout.
+
+
+
+ <vjc>
+
+
+ Added attribute for setting the warninglevel (0-4).
+
+ Added attribute for specifiying list of warnings that should be suppressed by
+ the compiler.
+
+
+
+ <jsc>
+
+
+ Added support for codepage compiler flag.
+
+ Added attribute for setting the warninglevel (0-4).
+
+
+ <csc>
+
+
+ Added support for codepage compiler flag.
+
+ Renamed optionoptimize attribute to optimize.
+
+ Added attribute for setting the warninglevel (0-4).
+
+ Added attribute for specifiying list of warnings that should be suppressed by
+ the compiler.
+
+ Patch from Justin Santa Barbara to add optimize flag to csc.
+
+ Fixed csc example.
+
+
+
+ <nantschema>
+
+
+ Added makefile for building on Linux. Also a new bin directory for Linux
+ specific binaries.
+
+
+
+ <mcs>
+
+
+ Removed <mcs> task. the <csc> task in combination with the
+ framework support should be used instead.
+
+
+
+ <nant>
+
+
+ Fixed problem with basedir in nested <nant> build being incorrect if
+ basedir="." is used.
+
+ Have new project inherit the default framework from the current project.
+
+
+ <copy>
+
+
+ Fix for <copy> task breakage on Linux.
+
+ Reenabled File.SetAttributes on Mono build as bug #41999 has been fixed.
+
+
+ <if>
+
+
+ Fixed logging bug with parenthesis instead of brace. Caused <if
+ uptodate...> to fail erroneously.
+
+
+
+ <cl> and <link>
+
+
+ On demand compile support for <link> and <cl> tasks.
+
+ Added unit tests for the <cl> and <link> tasks.
+
+ Moved Visual C++ related tasks into Win32Assemblies so it doesn't get built in
+ a Mono/Linux build.
+
+
+
+ <fileset>
+
+
+ Added support for FileSet references. Framework for making all types
+ referencable but only implemented for FileSets right now.
+
+
+
+ <mail>
+
+
+ Reenabled usage of StringWriter constructor with CultureInfo as this bug in
+ Mono is fixed.
+
+ No longer have empty strings as default.
+
+ Bcc and cc are no longer set to an empty string when not specified in
+ buildfile, thereby preventing problems with Mono bug #45746.
+
+
+
+ 0.8.2 (April 24, 2003)
+
+
+ Misc bugfixes.
+
+
+
+ 0.8.2-rc3 (April 17, 2003)
+
+
+ <if> task changes to support the uptodate test.
+
+ Changes for task item element initialization.
+
+ Read output of <exec>'d (and other external program) processes and insert
+ into logfile.
+
+ Fixed logging for <regex> task.
+
+ Made NAnt errors less chatty.
+
+ NAnt now works without Framework SDK installed.
+
+ Fixed bugs in <Copy> and <Move> tasks which caused exceptions when
+ using todir and a FileSet, in certain cases.
+
+ New <unzip> task.
+
+ New <loadtasks> task which replaces the functionality of taskdef (from
+ NAntContrib).
+
+ <foreach> supports <in><items> FileSet to work on files.
+
+
+
+ 0.8.2-rc2 (April 12, 2003)
+
+
+ Fix for <nunit2> task using FileSet.
+
+ Fix for FileSet's <includeList> element.
+
+
+
+ 0.8.2-rc1 (April 12, 2003)
+
+
+ Logging cleanups: use log4net for internal logging.
+
+ FxCop cleanups for correctness.
+
+ Support for multiple versions of .NET framework.
+
+ Changes to make NAnt more Mono-friendly.
+
+ Updated SharpZipLib library.
+
+ Makes error reporting more accurate - give line numbers for property expansion
+ errors.
+
+ Multiple test assembly support for <nunit2> task.
+ Added support multiple delimiters and string trimming to LoopTask's file line
+ mode.
+
+ More support for csc/vbc command-line options.
+
+
+
+ 0.8.1 (February 21, 2003)
+
+
+ Added more command-line options (-f: to specify a buildfile).
+
+ Added case sensitivity checks.
+
+ Added <vjc> task.
+
+ Fixed NUnit2 support.
+
+ Misc bugfixes and cleanups from contributors.
+
+
+
+ 0.7.9 (June 11, 2002)
+
+
+ If more than one build file matches the criteria, e.g. two files ending in
+ .build than NAnt will report an error.
+
+ Added -find option, causes NAnt to search up the directory tree looking for the
+ buildfile. Use in conjunction with -buildfile:foo.* to find the first foo.*
+ file up the directory tree.
+
+ Added -projecthelp option, callable targets should now include a description
+ attribute to describe briefly what they do.
+
+ CompilerBase tasks now check for changed resources and recompiles if out of
+ date.
+
+ Compiler tasks reportq what caused the rebuild when verbose is on, try 'NAnt
+ -verbose'.
+
+ Improved Log class.
+
+ Added PlainText NUnit formatter, see NAnt's build file for an example.
+
+ nant.onsuccess and nant.onfailure properties can now name a target to get
+ executed at the end of a build.
+
+ FileSets now have an absolute element. Items inside an absolute element will
+ always be included in the file set. This is useful for references that are in
+ the system path. See the HelloWindowsForms build file for an example.
+
+ -set option changed to -D to be more like Ant.
+
+ Unknown command line arguments cause program help to be displayed.
+
+ FileSets now support absolute paths and parent directories.
+
+ *Tasks.dll assemblies that are in the same folder as NAnt are automatically
+ loaded and scanned for tasks.
+
+ User manual available.
+
+ Help for tasks is auto-generated.
+
+ <attrib> task added.
+
+ <gac> task added and moved to NAntContrib project.
+
+ <sysinfo> task added.
+
+ Added failonerror, verbose, if and unless attributes to all tasks.
+
+ DESIGN DECISION: all elements and attributes will be lowercase
+
+ Major reworking of FileSet class (removed absolutes element, added asis
+ attribute).
+
+ Tasks/Targets/FileSet includes/excludes now have if/unless attributes.
+
+ New Unit Tests added.
+
+
+ CallTest.cs
+
+ DeleteTest.cs
+
+ EchoTest.cs
+
+ FailTest.cs
+
+ MkdirTest.cs
+
+ MoveTest.cs
+
+ PropertyTest.cs
+
+
+
+
+ New Properties added during project initilization.
+
+
+ nant.location points to nant.exe directory
+
+ nant.tasks.[TaskName].location points to [TaskName] host assembly
+
+
+
+
+ <nant> task now inherits properties to new project.
+ Changed verions number to 0.5 to reflect the number of changes in the code
+ base.
+
+
+
+ 0.1.5 (July 22, 2001)
+
+
+ Only compiles program if source file last write time > output last write
+ time.
+
+ Refactored compiler code into common CompilerBase class.
+
+ Refactored compiler and exec task into common ExternalProgramBase class.
+
+ Added <arg value="/win32res:filename"/> element to all external program
+ tasks.
+
+ Added Int32ValidatorAttribute and BooleanValidatorAttribute classes to perform
+ error checking on task attributes after macro expansion but before task
+ execution. Search for BooleanValidator or Int32Validator in tasks for examples.
+
+ Changed Task attribute names to TaskAttributeAttribute and FileSetAttribute.
+
+ Removed default value for task attributes (set with initial value).
+
+ Changes to Project class on how to initialize a project and run it.
+
+ Right aligned task prefixes to clean up output.
+
+ Added or enhanced these tasks
+
+
+ vbc, jsc, csc
+
+ move
+
+ nant
+
+ tstamp
+
+ exec (failonerror attribute)
+
+
+
+
+
+ 0.1.4 (July 19, 2001)
+
+
+ Added or enhanced these tasks
+
+
+ echo
+
+ fail
+
+ property
+
+ copy (respects basedir)
+
+ delete (respects basedir)
+
+ mkdir (respects basedir)
+
+ exec
+
+
+
+
+
+ 0.1.3 (July 18, 2001)
+
+
+ Dependencies working via depends attribute on targets.
+
+ Changed name from NBuild to NAnt.
+
+ Using the name "Parameter" to refer to the xml attributes in tasks because it
+ was conflicting badly with .NET Attributes.
+
+ Added FileSetParameterAttribute so that FileSet parameters would autoinit.
+
+ Renamed TaskAttributeAttribute to StringParameterAttribute.
+
+ Broke into seperate source files (one per class).
+
+ Changed default build file from Project.xml to the first file with a .build
+ extension.
+
+
+
+ 0.1.2 (July 16, 2001)
+
+
+ Basic functionality to have NAnt build itself (<csc> task).
+
+
+
+ 0.1.1 (July 5, 2001)
+
+
+ Initial test version.
+
+
+
+
diff --git a/build-support/tools/nant/doc/sdk/NAnt-SDK.chm b/build-support/tools/nant/doc/sdk/NAnt-SDK.chm
new file mode 100644
index 00000000..ee72e831
Binary files /dev/null and b/build-support/tools/nant/doc/sdk/NAnt-SDK.chm differ
diff --git a/build-support/tools/nant/examples/Filters/ReplaceCharacter/ReplaceCharacter.cs b/build-support/tools/nant/examples/Filters/ReplaceCharacter/ReplaceCharacter.cs
new file mode 100644
index 00000000..7862c52d
--- /dev/null
+++ b/build-support/tools/nant/examples/Filters/ReplaceCharacter/ReplaceCharacter.cs
@@ -0,0 +1,115 @@
+using System;
+using System.IO;
+using System.Globalization;
+
+using NAnt.Core.Attributes;
+using NAnt.Core.Filters;
+
+namespace NAnt.Examples.Filters {
+ ///
+ /// Replaces a specific character in a file.
+ ///
+ ///
+ /// Replaces the character specified by with the
+ /// character specified by .
+ ///
+ ///
+ /// Replace all "@" characters with "~".
+ ///
+ ///
+ /// ]]>
+ ///
+ ///
+ [ElementName("replacecharacter")]
+ public class ReplaceCharacter : Filter {
+ ///
+ /// Delegate for Read and Peek. Allows the same implementation
+ /// to be used for both methods.
+ ///
+ delegate int AcquireCharDelegate();
+
+ #region Private Instance Fields
+
+ private char _from;
+ private char _to;
+
+ //Methods used for Read and Peek
+ private AcquireCharDelegate ReadChar = null;
+ private AcquireCharDelegate PeekChar = null;
+
+ #endregion Private Instance Fields
+
+ #region Public Instance Properties
+
+ ///
+ /// The character to replace.
+ ///
+ [TaskAttribute("from", Required=true)]
+ public char From {
+ get { return _from; }
+ set { _from = value; }
+ }
+
+ ///
+ /// The character to replace with.
+ ///
+ [TaskAttribute("to", Required=true)]
+ public char To {
+ get { return _to; }
+ set { _to = value; }
+ }
+
+ #endregion Public Instance Properties
+
+ #region Public Instance Methods
+
+ ///
+ /// Construct that allows this filter to be chained to the one
+ /// in the parameter chainedReader.
+ ///
+ /// Filter that the filter will be chained to
+ public override void Chain(ChainableReader chainedReader) {
+ base.Chain(chainedReader);
+ ReadChar = new AcquireCharDelegate(base.Read);
+ PeekChar = new AcquireCharDelegate(base.Peek);
+ }
+
+ ///
+ /// Reads the next character applying the filter logic.
+ ///
+ /// Char as an int or -1 if at the end of the stream
+ public override int Read() {
+ return GetNextCharacter(ReadChar);
+ }
+
+ ///
+ /// Reads the next character applying the filter logic without
+ /// advancing the current position in the stream.
+ ///
+ /// Char as an int or -1 if at the end of the stream
+ public override int Peek() {
+ return GetNextCharacter(PeekChar);
+ }
+
+ #endregion Public Instance Methods
+
+ #region Private Instance Methods
+
+ ///
+ /// Returns the next character in the stream replacing the specified character. Using the
+ /// allows for the same implementation for Read and Peek
+ ///
+ /// Delegate to acquire the next character. (Read/Peek)
+ /// Char as an int or -1 if at the end of the stream
+ private int GetNextCharacter(AcquireCharDelegate AcquireChar) {
+ int nextChar = AcquireChar();
+ if (nextChar == From) {
+ return To;
+ }
+ return nextChar;
+ }
+
+ #endregion Private Instance Methods
+ }
+}
diff --git a/build-support/tools/nant/examples/Filters/ReplaceCharacter/default.build b/build-support/tools/nant/examples/Filters/ReplaceCharacter/default.build
new file mode 100644
index 00000000..c81b00a7
--- /dev/null
+++ b/build-support/tools/nant/examples/Filters/ReplaceCharacter/default.build
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/HelloWindowsForms/HelloWindowsForms.build b/build-support/tools/nant/examples/HelloWindowsForms/HelloWindowsForms.build
new file mode 100644
index 00000000..e25955b4
--- /dev/null
+++ b/build-support/tools/nant/examples/HelloWindowsForms/HelloWindowsForms.build
@@ -0,0 +1,59 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/HelloWindowsForms/HelloWindowsForms.vbproj b/build-support/tools/nant/examples/HelloWindowsForms/HelloWindowsForms.vbproj
new file mode 100644
index 00000000..653a3513
--- /dev/null
+++ b/build-support/tools/nant/examples/HelloWindowsForms/HelloWindowsForms.vbproj
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/HelloWindowsForms/MainForm.resx b/build-support/tools/nant/examples/HelloWindowsForms/MainForm.resx
new file mode 100644
index 00000000..230b18b4
--- /dev/null
+++ b/build-support/tools/nant/examples/HelloWindowsForms/MainForm.resx
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.3
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Assembly
+
+
+ MainForm
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/examples/HelloWindowsForms/MainForm.vb b/build-support/tools/nant/examples/HelloWindowsForms/MainForm.vb
new file mode 100644
index 00000000..b3fd58c5
--- /dev/null
+++ b/build-support/tools/nant/examples/HelloWindowsForms/MainForm.vb
@@ -0,0 +1,60 @@
+Public Class MainForm
+ Inherits System.Windows.Forms.Form
+
+#Region " Windows Form Designer generated code "
+
+ Public Sub New()
+ MyBase.New()
+
+ 'This call is required by the Windows Form Designer.
+ InitializeComponent()
+
+ 'Add any initialization after the InitializeComponent() call
+
+ End Sub
+
+ 'Form overrides dispose to clean up the component list.
+ Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
+ If disposing Then
+ If Not (components Is Nothing) Then
+ components.Dispose()
+ End If
+ End If
+ MyBase.Dispose(disposing)
+ End Sub
+
+ 'Required by the Windows Form Designer
+ Private components As System.ComponentModel.IContainer
+
+ 'NOTE: The following procedure is required by the Windows Form Designer
+ 'It can be modified using the Windows Form Designer.
+ 'Do not modify it using the code editor.
+ Friend WithEvents myLabel As System.Windows.Forms.Label
+ Private Sub InitializeComponent()
+ Me.myLabel = New System.Windows.Forms.Label()
+ Me.SuspendLayout()
+ '
+ 'myLabel
+ '
+ Me.myLabel.Dock = System.Windows.Forms.DockStyle.Fill
+ Me.myLabel.Font = New System.Drawing.Font("Tahoma", 24.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
+ Me.myLabel.Name = "myLabel"
+ Me.myLabel.Size = New System.Drawing.Size(304, 118)
+ Me.myLabel.TabIndex = 0
+ Me.myLabel.Text = "Hello Windows Forms"
+ Me.myLabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
+ '
+ 'MainForm
+ '
+ Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
+ Me.ClientSize = New System.Drawing.Size(304, 118)
+ Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.myLabel})
+ Me.Name = "MainForm"
+ Me.Text = "Hello Windows Forms"
+ Me.ResumeLayout(False)
+
+ End Sub
+
+#End Region
+
+End Class
diff --git a/build-support/tools/nant/examples/HelloWorld/HelloWorld.cs b/build-support/tools/nant/examples/HelloWorld/HelloWorld.cs
new file mode 100644
index 00000000..3552d4e8
--- /dev/null
+++ b/build-support/tools/nant/examples/HelloWorld/HelloWorld.cs
@@ -0,0 +1,5 @@
+public class ProjectName {
+ static void Main() {
+ System.Console.WriteLine("Hello World using C#");
+ }
+}
diff --git a/build-support/tools/nant/examples/HelloWorld/HelloWorld.js b/build-support/tools/nant/examples/HelloWorld/HelloWorld.js
new file mode 100644
index 00000000..62627e50
--- /dev/null
+++ b/build-support/tools/nant/examples/HelloWorld/HelloWorld.js
@@ -0,0 +1 @@
+print("Hello World using JScript.NET");
\ No newline at end of file
diff --git a/build-support/tools/nant/examples/HelloWorld/HelloWorld.vb b/build-support/tools/nant/examples/HelloWorld/HelloWorld.vb
new file mode 100644
index 00000000..155bbc2d
--- /dev/null
+++ b/build-support/tools/nant/examples/HelloWorld/HelloWorld.vb
@@ -0,0 +1,8 @@
+Imports System
+
+Public Class MainApp
+ Shared Sub Main()
+ Console.WriteLine("Hello World using VB.NET")
+ Return
+ End Sub
+End Class
diff --git a/build-support/tools/nant/examples/HelloWorld/default.build b/build-support/tools/nant/examples/HelloWorld/default.build
new file mode 100644
index 00000000..3f4cd64f
--- /dev/null
+++ b/build-support/tools/nant/examples/HelloWorld/default.build
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/ScriptTask/script-sample.build b/build-support/tools/nant/examples/ScriptTask/script-sample.build
new file mode 100644
index 00000000..8fa9d3fa
--- /dev/null
+++ b/build-support/tools/nant/examples/ScriptTask/script-sample.build
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/Simple/Simple.build b/build-support/tools/nant/examples/Simple/Simple.build
new file mode 100644
index 00000000..54c9ed84
--- /dev/null
+++ b/build-support/tools/nant/examples/Simple/Simple.build
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/Simple/Simple.cs b/build-support/tools/nant/examples/Simple/Simple.cs
new file mode 100644
index 00000000..f7e7d0c4
--- /dev/null
+++ b/build-support/tools/nant/examples/Simple/Simple.cs
@@ -0,0 +1,5 @@
+public class Simple {
+ static void Main() {
+ System.Console.WriteLine("Hello, World!");
+ }
+}
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/AssemblyInfo.cpp b/build-support/tools/nant/examples/Solution/cpp/WinForms/AssemblyInfo.cpp
new file mode 100644
index 00000000..2c401dba
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/AssemblyInfo.cpp
@@ -0,0 +1,58 @@
+#include "stdafx.h"
+
+using namespace System::Reflection;
+using namespace System::Runtime::CompilerServices;
+
+//
+// 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:AssemblyTitleAttribute("")];
+[assembly:AssemblyDescriptionAttribute("")];
+[assembly:AssemblyConfigurationAttribute("")];
+[assembly:AssemblyCompanyAttribute("")];
+[assembly:AssemblyProductAttribute("")];
+[assembly:AssemblyCopyrightAttribute("")];
+[assembly:AssemblyTrademarkAttribute("")];
+[assembly:AssemblyCultureAttribute("")];
+
+//
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the value or you can default the Revision and Build Numbers
+// by using the '*' as shown below:
+
+[assembly:AssemblyVersionAttribute("1.0.*")];
+
+//
+// In order to sign your assembly you must specify a key to use. Refer to the
+// Microsoft .NET Framework documentation for more information on assembly signing.
+//
+// Use the attributes below to control which key is used for signing.
+//
+// Notes:
+// (*) If no key is specified, the assembly is not signed.
+// (*) KeyName refers to a key that has been installed in the Crypto Service
+// Provider (CSP) on your machine. KeyFile refers to a file which contains
+// a key.
+// (*) If the KeyFile and the KeyName values are both specified, the
+// following processing occurs:
+// (1) If the KeyName can be found in the CSP, that key is used.
+// (2) If the KeyName does not exist and the KeyFile does exist, the key
+// in the KeyFile is installed into the CSP and used.
+// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
+// When specifying the KeyFile, the location of the KeyFile should be
+// relative to the project directory.
+// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
+// documentation for more information on this.
+//
+[assembly:AssemblyDelaySignAttribute(false)];
+[assembly:AssemblyKeyFileAttribute("")];
+[assembly:AssemblyKeyNameAttribute("")];
+
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/Form1.cpp b/build-support/tools/nant/examples/Solution/cpp/WinForms/Form1.cpp
new file mode 100644
index 00000000..ac3477f7
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/Form1.cpp
@@ -0,0 +1,15 @@
+#include "stdafx.h"
+#include "Form1.h"
+#include
+
+using namespace WinForms;
+
+int APIENTRY _tWinMain(HINSTANCE hInstance,
+ HINSTANCE hPrevInstance,
+ LPTSTR lpCmdLine,
+ int nCmdShow)
+{
+ System::Threading::Thread::CurrentThread->ApartmentState = System::Threading::ApartmentState::STA;
+ Application::Run(new Form1());
+ return 0;
+}
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/Form1.h b/build-support/tools/nant/examples/Solution/cpp/WinForms/Form1.h
new file mode 100644
index 00000000..6ec54e83
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/Form1.h
@@ -0,0 +1,59 @@
+#pragma once
+
+
+namespace WinForms
+{
+ using namespace System;
+ using namespace System::ComponentModel;
+ using namespace System::Collections;
+ using namespace System::Windows::Forms;
+ using namespace System::Data;
+ using namespace System::Drawing;
+
+ ///
+ /// Summary for Form1
+ ///
+ /// WARNING: If you change the name of this class, you will need to change the
+ /// 'Resource File Name' property for the managed resource compiler tool
+ /// associated with all .resx files this class depends on. Otherwise,
+ /// the designers will not be able to interact properly with localized
+ /// resources associated with this form.
+ ///
+ public __gc class Form1 : public System::Windows::Forms::Form
+ {
+ public:
+ Form1(void)
+ {
+ InitializeComponent();
+ }
+
+ protected:
+ void Dispose(Boolean disposing)
+ {
+ if (disposing && components)
+ {
+ components->Dispose();
+ }
+ __super::Dispose(disposing);
+ }
+
+ private:
+ ///
+ /// Required designer variable.
+ ///
+ System::ComponentModel::Container * components;
+
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ void InitializeComponent(void)
+ {
+ this->components = new System::ComponentModel::Container();
+ this->Size = System::Drawing::Size(300,300);
+ this->Text = S"Form1";
+ }
+ };
+}
+
+
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/Form1.resX b/build-support/tools/nant/examples/Solution/cpp/WinForms/Form1.resX
new file mode 100644
index 00000000..dd0ea4d8
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/Form1.resX
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.0.0.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/ReadMe.txt b/build-support/tools/nant/examples/Solution/cpp/WinForms/ReadMe.txt
new file mode 100644
index 00000000..3c838567
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/ReadMe.txt
@@ -0,0 +1,33 @@
+========================================================================
+ APPLICATION : winforms Project Overview
+========================================================================
+
+AppWizard has created this winforms Application for you.
+
+This file contains a summary of what you will find in each of the files that
+make up your winforms application.
+
+winforms.vcproj
+ This is the main project file for VC++ projects generated using an Application Wizard.
+ It contains information about the version of Visual C++ that generated the file, and
+ information about the platforms, configurations, and project features selected with the
+ Application Wizard.
+
+Form1.cpp
+ This is the main application source file.
+ Contains the code to display the form.
+
+Form1.h
+ Contains the implementation of your form class and InitializeComponent() function.
+
+AssemblyInfo.cpp
+ Contains custom attributes for modifying assembly metadata.
+
+/////////////////////////////////////////////////////////////////////////////
+Other standard files:
+
+StdAfx.h, StdAfx.cpp
+ These files are used to build a precompiled header (PCH) file
+ named Win32.pch and a precompiled types file named StdAfx.obj.
+
+/////////////////////////////////////////////////////////////////////////////
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/WinForms.sln b/build-support/tools/nant/examples/Solution/cpp/WinForms/WinForms.sln
new file mode 100644
index 00000000..166ee3c3
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/WinForms.sln
@@ -0,0 +1,21 @@
+Microsoft Visual Studio Solution File, Format Version 8.00
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "WinForms", "WinForms.vcproj", "{11211AF9-DD1D-4151-844A-A2430B67DE3D}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfiguration) = preSolution
+ Debug = Debug
+ Release = Release
+ EndGlobalSection
+ GlobalSection(ProjectConfiguration) = postSolution
+ {11211AF9-DD1D-4151-844A-A2430B67DE3D}.Debug.ActiveCfg = Debug|Win32
+ {11211AF9-DD1D-4151-844A-A2430B67DE3D}.Debug.Build.0 = Debug|Win32
+ {11211AF9-DD1D-4151-844A-A2430B67DE3D}.Release.ActiveCfg = Release|Win32
+ {11211AF9-DD1D-4151-844A-A2430B67DE3D}.Release.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ EndGlobalSection
+ GlobalSection(ExtensibilityAddIns) = postSolution
+ EndGlobalSection
+EndGlobal
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/WinForms.vcproj b/build-support/tools/nant/examples/Solution/cpp/WinForms/WinForms.vcproj
new file mode 100644
index 00000000..6e96ee26
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/WinForms.vcproj
@@ -0,0 +1,194 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/app.ico b/build-support/tools/nant/examples/Solution/cpp/WinForms/app.ico
new file mode 100644
index 00000000..3a5525fd
Binary files /dev/null and b/build-support/tools/nant/examples/Solution/cpp/WinForms/app.ico differ
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/app.rc b/build-support/tools/nant/examples/Solution/cpp/WinForms/app.rc
new file mode 100644
index 00000000..b488dbd9
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/app.rc
@@ -0,0 +1,52 @@
+// Microsoft Visual C++ generated resource script.
+//
+#include "resource.h"
+
+#define APSTUDIO_READONLY_SYMBOLS
+
+/////////////////////////////////////////////////////////////////////////////
+#undef APSTUDIO_READONLY_SYMBOLS
+
+/////////////////////////////////////////////////////////////////////////////
+// English (U.S.) resources
+
+
+/////////////////////////////////////////////////////////////////////////////
+//
+// Icon
+//
+
+// Icon placed first or with lowest ID value becomes application icon
+
+LANGUAGE 9, 1
+#pragma code_page(1252)
+1 ICON "app.ico"
+
+#ifdef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// TEXTINCLUDE
+//
+
+1 TEXTINCLUDE
+BEGIN
+ "resource.h\0"
+ "\0"
+END
+
+#endif // APSTUDIO_INVOKED
+
+/////////////////////////////////////////////////////////////////////////////
+
+
+
+#ifndef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// Generated from the TEXTINCLUDE 3 resource.
+//
+
+
+/////////////////////////////////////////////////////////////////////////////
+#endif // not APSTUDIO_INVOKED
+
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/cpp.build b/build-support/tools/nant/examples/Solution/cpp/WinForms/cpp.build
new file mode 100644
index 00000000..4d22b34e
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/cpp.build
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Output file doesn't exist in ${expected.output}
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/resource.h b/build-support/tools/nant/examples/Solution/cpp/WinForms/resource.h
new file mode 100644
index 00000000..1f2251c2
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/resource.h
@@ -0,0 +1,3 @@
+//{{NO_DEPENDENCIES}}
+// Microsoft Visual C++ generated include file.
+// Used by app.rc
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/stdafx.cpp b/build-support/tools/nant/examples/Solution/cpp/WinForms/stdafx.cpp
new file mode 100644
index 00000000..ce3f7b84
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/stdafx.cpp
@@ -0,0 +1,7 @@
+// stdafx.cpp : source file that includes just the standard includes
+// winforms.pch will be the pre-compiled header
+// stdafx.obj will contain the pre-compiled type information
+
+#include "stdafx.h"
+
+
diff --git a/build-support/tools/nant/examples/Solution/cpp/WinForms/stdafx.h b/build-support/tools/nant/examples/Solution/cpp/WinForms/stdafx.h
new file mode 100644
index 00000000..ffc016e4
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/WinForms/stdafx.h
@@ -0,0 +1,14 @@
+// stdafx.h : include file for standard system include files,
+// or project specific include files that are used frequently, but
+// are changed infrequently
+#pragma once
+
+
+#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
+// C RunTime Header Files
+#include
+#include
+#include
+#include
+
+// TODO: reference additional headers your program requires here
diff --git a/build-support/tools/nant/examples/Solution/cpp/default.build b/build-support/tools/nant/examples/Solution/cpp/default.build
new file mode 100644
index 00000000..534e1e9f
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cpp/default.build
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/Solution/cs/WinForms/App.ico b/build-support/tools/nant/examples/Solution/cs/WinForms/App.ico
new file mode 100644
index 00000000..3a5525fd
Binary files /dev/null and b/build-support/tools/nant/examples/Solution/cs/WinForms/App.ico differ
diff --git a/build-support/tools/nant/examples/Solution/cs/WinForms/AssemblyInfo.cs b/build-support/tools/nant/examples/Solution/cs/WinForms/AssemblyInfo.cs
new file mode 100644
index 00000000..177a4f0e
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cs/WinForms/AssemblyInfo.cs
@@ -0,0 +1,58 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+//
+// 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("")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("")]
+[assembly: AssemblyCopyright("")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+//
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers
+// by using the '*' as shown below:
+
+[assembly: AssemblyVersion("1.0.*")]
+
+//
+// In order to sign your assembly you must specify a key to use. Refer to the
+// Microsoft .NET Framework documentation for more information on assembly signing.
+//
+// Use the attributes below to control which key is used for signing.
+//
+// Notes:
+// (*) If no key is specified, the assembly is not signed.
+// (*) KeyName refers to a key that has been installed in the Crypto Service
+// Provider (CSP) on your machine. KeyFile refers to a file which contains
+// a key.
+// (*) If the KeyFile and the KeyName values are both specified, the
+// following processing occurs:
+// (1) If the KeyName can be found in the CSP, that key is used.
+// (2) If the KeyName does not exist and the KeyFile does exist, the key
+// in the KeyFile is installed into the CSP and used.
+// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
+// When specifying the KeyFile, the location of the KeyFile should be
+// relative to the project output directory which is
+// %Project Directory%\obj\. For example, if your KeyFile is
+// located in the project directory, you would specify the AssemblyKeyFile
+// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
+// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
+// documentation for more information on this.
+//
+[assembly: AssemblyDelaySign(false)]
+[assembly: AssemblyKeyFile("")]
+[assembly: AssemblyKeyName("")]
diff --git a/build-support/tools/nant/examples/Solution/cs/WinForms/Form1.cs b/build-support/tools/nant/examples/Solution/cs/WinForms/Form1.cs
new file mode 100644
index 00000000..419efde0
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cs/WinForms/Form1.cs
@@ -0,0 +1,69 @@
+using System;
+using System.Drawing;
+using System.Collections;
+using System.ComponentModel;
+using System.Windows.Forms;
+using System.Data;
+
+namespace WinForms
+{
+ ///
+ /// Summary description for Form1.
+ ///
+ public class Form1 : System.Windows.Forms.Form
+ {
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.Container components = null;
+
+ public Form1()
+ {
+ //
+ // Required for Windows Form Designer support
+ //
+ InitializeComponent();
+
+ //
+ // TODO: Add any constructor code after InitializeComponent call
+ //
+ }
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ protected override void Dispose( bool disposing )
+ {
+ if( disposing )
+ {
+ if (components != null)
+ {
+ components.Dispose();
+ }
+ }
+ base.Dispose( disposing );
+ }
+
+ #region Windows Form Designer generated code
+ ///
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ ///
+ private void InitializeComponent()
+ {
+ this.components = new System.ComponentModel.Container();
+ this.Size = new System.Drawing.Size(300,300);
+ this.Text = "Form1";
+ }
+ #endregion
+
+ ///
+ /// The main entry point for the application.
+ ///
+ [STAThread]
+ static void Main()
+ {
+ Application.Run(new Form1());
+ }
+ }
+}
diff --git a/build-support/tools/nant/examples/Solution/cs/WinForms/Form1.resx b/build-support/tools/nant/examples/Solution/cs/WinForms/Form1.resx
new file mode 100644
index 00000000..dd0ea4d8
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cs/WinForms/Form1.resx
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.0.0.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
diff --git a/build-support/tools/nant/examples/Solution/cs/WinForms/WinForms.csproj b/build-support/tools/nant/examples/Solution/cs/WinForms/WinForms.csproj
new file mode 100644
index 00000000..dbe06627
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cs/WinForms/WinForms.csproj
@@ -0,0 +1,119 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/Solution/cs/WinForms/WinForms.sln b/build-support/tools/nant/examples/Solution/cs/WinForms/WinForms.sln
new file mode 100644
index 00000000..32b355e0
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cs/WinForms/WinForms.sln
@@ -0,0 +1,21 @@
+Microsoft Visual Studio Solution File, Format Version 8.00
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WinForms", "WinForms.csproj", "{C0E751EE-4590-447A-B236-FF7E71A484DF}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfiguration) = preSolution
+ Debug = Debug
+ Release = Release
+ EndGlobalSection
+ GlobalSection(ProjectConfiguration) = postSolution
+ {C0E751EE-4590-447A-B236-FF7E71A484DF}.Debug.ActiveCfg = Debug|.NET
+ {C0E751EE-4590-447A-B236-FF7E71A484DF}.Debug.Build.0 = Debug|.NET
+ {C0E751EE-4590-447A-B236-FF7E71A484DF}.Release.ActiveCfg = Release|.NET
+ {C0E751EE-4590-447A-B236-FF7E71A484DF}.Release.Build.0 = Release|.NET
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ EndGlobalSection
+ GlobalSection(ExtensibilityAddIns) = postSolution
+ EndGlobalSection
+EndGlobal
diff --git a/build-support/tools/nant/examples/Solution/cs/WinForms/cs.build b/build-support/tools/nant/examples/Solution/cs/WinForms/cs.build
new file mode 100644
index 00000000..a1fe1d9e
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cs/WinForms/cs.build
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Output file doesn't exist in ${expected.output}
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/examples/Solution/cs/default.build b/build-support/tools/nant/examples/Solution/cs/default.build
new file mode 100644
index 00000000..534e1e9f
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/cs/default.build
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/Solution/vb/WinForms/AssemblyInfo.vb b/build-support/tools/nant/examples/Solution/vb/WinForms/AssemblyInfo.vb
new file mode 100644
index 00000000..39f66889
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vb/WinForms/AssemblyInfo.vb
@@ -0,0 +1,32 @@
+Imports System
+Imports System.Reflection
+Imports 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.
+
+' Review the values of the assembly attributes
+
+
+
+
+
+
+
+
+
+'The following GUID is for the ID of the typelib if this project is exposed to COM
+
+
+' Version information for an assembly consists of the following four values:
+'
+' Major Version
+' Minor Version
+' Build Number
+' Revision
+'
+' You can specify all the values or you can default the Build and Revision Numbers
+' by using the '*' as shown below:
+
+
diff --git a/build-support/tools/nant/examples/Solution/vb/WinForms/Form1.resx b/build-support/tools/nant/examples/Solution/vb/WinForms/Form1.resx
new file mode 100644
index 00000000..dd0ea4d8
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vb/WinForms/Form1.resx
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.0.0.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
diff --git a/build-support/tools/nant/examples/Solution/vb/WinForms/Form1.vb b/build-support/tools/nant/examples/Solution/vb/WinForms/Form1.vb
new file mode 100644
index 00000000..135c39f9
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vb/WinForms/Form1.vb
@@ -0,0 +1,39 @@
+Public Class Form1
+ Inherits System.Windows.Forms.Form
+
+#Region " Windows Form Designer generated code "
+
+ Public Sub New()
+ MyBase.New()
+
+ 'This call is required by the Windows Form Designer.
+ InitializeComponent()
+
+ 'Add any initialization after the InitializeComponent() call
+
+ End Sub
+
+ 'Form overrides dispose to clean up the component list.
+ Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
+ If disposing Then
+ If Not (components Is Nothing) Then
+ components.Dispose()
+ End If
+ End If
+ MyBase.Dispose(disposing)
+ End Sub
+
+ 'Required by the Windows Form Designer
+ Private components As System.ComponentModel.IContainer
+
+ 'NOTE: The following procedure is required by the Windows Form Designer
+ 'It can be modified using the Windows Form Designer.
+ 'Do not modify it using the code editor.
+ Private Sub InitializeComponent()
+ components = New System.ComponentModel.Container()
+ Me.Text = "Form1"
+ End Sub
+
+#End Region
+
+End Class
diff --git a/build-support/tools/nant/examples/Solution/vb/WinForms/WinForms.sln b/build-support/tools/nant/examples/Solution/vb/WinForms/WinForms.sln
new file mode 100644
index 00000000..53294ee8
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vb/WinForms/WinForms.sln
@@ -0,0 +1,21 @@
+Microsoft Visual Studio Solution File, Format Version 8.00
+Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "WinForms", "WinForms.vbproj", "{B01CBC5B-0F63-4623-8B41-806E063D4F0C}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfiguration) = preSolution
+ Debug = Debug
+ Release = Release
+ EndGlobalSection
+ GlobalSection(ProjectConfiguration) = postSolution
+ {B01CBC5B-0F63-4623-8B41-806E063D4F0C}.Debug.ActiveCfg = Debug|.NET
+ {B01CBC5B-0F63-4623-8B41-806E063D4F0C}.Debug.Build.0 = Debug|.NET
+ {B01CBC5B-0F63-4623-8B41-806E063D4F0C}.Release.ActiveCfg = Release|.NET
+ {B01CBC5B-0F63-4623-8B41-806E063D4F0C}.Release.Build.0 = Release|.NET
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ EndGlobalSection
+ GlobalSection(ExtensibilityAddIns) = postSolution
+ EndGlobalSection
+EndGlobal
diff --git a/build-support/tools/nant/examples/Solution/vb/WinForms/WinForms.vbproj b/build-support/tools/nant/examples/Solution/vb/WinForms/WinForms.vbproj
new file mode 100644
index 00000000..002692a9
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vb/WinForms/WinForms.vbproj
@@ -0,0 +1,112 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/Solution/vb/WinForms/vb.build b/build-support/tools/nant/examples/Solution/vb/WinForms/vb.build
new file mode 100644
index 00000000..a1fe1d9e
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vb/WinForms/vb.build
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Output file doesn't exist in ${expected.output}
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/examples/Solution/vb/default.build b/build-support/tools/nant/examples/Solution/vb/default.build
new file mode 100644
index 00000000..534e1e9f
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vb/default.build
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/Solution/vjs/WinForms/AssemblyInfo.jsl b/build-support/tools/nant/examples/Solution/vjs/WinForms/AssemblyInfo.jsl
new file mode 100644
index 00000000..da85e12d
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vjs/WinForms/AssemblyInfo.jsl
@@ -0,0 +1,58 @@
+import System.Reflection.*;
+import System.Runtime.CompilerServices.*;
+
+//
+// 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("") */
+/** @assembly AssemblyDescription("") */
+/** @assembly AssemblyConfiguration("") */
+/** @assembly AssemblyCompany("") */
+/** @assembly AssemblyProduct("") */
+/** @assembly AssemblyCopyright("") */
+/** @assembly AssemblyTrademark("") */
+/** @assembly AssemblyCulture("") */
+
+//
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Revision and Build
+// Numbers by using the '*' as shown below:
+
+/** @assembly AssemblyVersion("1.0.*") */
+
+//
+// In order to sign your assembly you must specify a key to use. Refer to the
+// Microsoft .NET Framework documentation for more information on assembly signing.
+//
+// Use the attributes below to control which key is used for signing.
+//
+// Notes:
+// (*) If no key is specified, the assembly is not signed.
+// (*) KeyName refers to a key that has been installed in the Crypto Service
+// Provider (CSP) on your machine. KeyFile refers to a file which contains
+// a key.
+// (*) If the KeyFile and the KeyName values are both specified, the
+// following processing occurs:
+// (1) If the KeyName can be found in the CSP, that key is used.
+// (2) If the KeyName does not exist and the KeyFile does exist, the key
+// in the KeyFile is installed into the CSP and used.
+// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
+// When specifying the KeyFile, the location of the KeyFile should be
+// relative to the project directory. For example, if your KeyFile is
+// located in the project directory itself, you would specify the
+// AssemblyKeyFile attribute as @assembly AssemblyKeyFile("mykey.snk")
+// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
+// documentation for more information on this.
+//
+
+/** @assembly AssemblyDelaySign(false) */
+/** @assembly AssemblyKeyFile("") */
+/** @assembly AssemblyKeyName("") */
diff --git a/build-support/tools/nant/examples/Solution/vjs/WinForms/Form1.jsl b/build-support/tools/nant/examples/Solution/vjs/WinForms/Form1.jsl
new file mode 100644
index 00000000..204220f4
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vjs/WinForms/Form1.jsl
@@ -0,0 +1,67 @@
+package WinForms;
+
+import System.Drawing.*;
+import System.Collections.*;
+import System.ComponentModel.*;
+import System.Windows.Forms.*;
+import System.Data.*;
+
+/**
+ * Summary description for Form1.
+ */
+public class Form1 extends System.Windows.Forms.Form
+{
+ /**
+ * Required designer variable.
+ */
+ private System.ComponentModel.Container components = null;
+
+ public Form1()
+ {
+ //
+ // Required for Windows Form Designer support
+ //
+ InitializeComponent();
+
+ //
+ // TODO: Add any constructor code after InitializeComponent call
+ //
+ }
+
+ /**
+ * Clean up any resources being used.
+ */
+ protected void Dispose(boolean disposing)
+ {
+ if (disposing)
+ {
+ if (components != null)
+ {
+ components.Dispose();
+ }
+ }
+ super.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+ /**
+ * Required method for Designer support - do not modify
+ * the contents of this method with the code editor.
+ */
+ private void InitializeComponent()
+ {
+ this.components = new System.ComponentModel.Container();
+ this.set_Size(new System.Drawing.Size(300,300));
+ this.set_Text("Form1");
+ }
+ #endregion
+
+ /**
+ * The main entry point for the application.
+ */
+ /** @attribute System.STAThread() */
+ public static void main(String[] args)
+ {
+ Application.Run(new Form1());
+ }
+}
diff --git a/build-support/tools/nant/examples/Solution/vjs/WinForms/Form1.resx b/build-support/tools/nant/examples/Solution/vjs/WinForms/Form1.resx
new file mode 100644
index 00000000..dd0ea4d8
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vjs/WinForms/Form1.resx
@@ -0,0 +1,42 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 1.0.0.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
diff --git a/build-support/tools/nant/examples/Solution/vjs/WinForms/WinForms.sln b/build-support/tools/nant/examples/Solution/vjs/WinForms/WinForms.sln
new file mode 100644
index 00000000..da00319a
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vjs/WinForms/WinForms.sln
@@ -0,0 +1,21 @@
+Microsoft Visual Studio Solution File, Format Version 8.00
+Project("{E6FDF86B-F3D1-11D4-8576-0002A516ECE8}") = "WinForms", "WinForms.vjsproj", "{84A7C512-CE63-4884-B9FB-DF863EEC3800}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfiguration) = preSolution
+ Debug = Debug
+ Release = Release
+ EndGlobalSection
+ GlobalSection(ProjectConfiguration) = postSolution
+ {84A7C512-CE63-4884-B9FB-DF863EEC3800}.Debug.ActiveCfg = Debug|.NET
+ {84A7C512-CE63-4884-B9FB-DF863EEC3800}.Debug.Build.0 = Debug|.NET
+ {84A7C512-CE63-4884-B9FB-DF863EEC3800}.Release.ActiveCfg = Release|.NET
+ {84A7C512-CE63-4884-B9FB-DF863EEC3800}.Release.Build.0 = Release|.NET
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ EndGlobalSection
+ GlobalSection(ExtensibilityAddIns) = postSolution
+ EndGlobalSection
+EndGlobal
diff --git a/build-support/tools/nant/examples/Solution/vjs/WinForms/WinForms.vjsproj b/build-support/tools/nant/examples/Solution/vjs/WinForms/WinForms.vjsproj
new file mode 100644
index 00000000..a69dad9c
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vjs/WinForms/WinForms.vjsproj
@@ -0,0 +1,106 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/Solution/vjs/WinForms/vjs.build b/build-support/tools/nant/examples/Solution/vjs/WinForms/vjs.build
new file mode 100644
index 00000000..4d22b34e
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vjs/WinForms/vjs.build
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Output file doesn't exist in ${expected.output}
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/examples/Solution/vjs/default.build b/build-support/tools/nant/examples/Solution/vjs/default.build
new file mode 100644
index 00000000..534e1e9f
--- /dev/null
+++ b/build-support/tools/nant/examples/Solution/vjs/default.build
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/SimpleExtension.build b/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/SimpleExtension.build
new file mode 100644
index 00000000..068da14b
--- /dev/null
+++ b/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/SimpleExtension.build
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/SimpleExtension.cs b/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/SimpleExtension.cs
new file mode 100644
index 00000000..f703193f
--- /dev/null
+++ b/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/SimpleExtension.cs
@@ -0,0 +1,12 @@
+using System;
+
+//Calculates the circumference of a circle given the radius.
+public class Calculate {
+
+ private double circ = 0;
+
+ public double Circumference(double radius){
+ circ = Math.PI*2*radius;
+ return circ;
+ }
+}
\ No newline at end of file
diff --git a/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/SimpleExtension.dll b/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/SimpleExtension.dll
new file mode 100644
index 00000000..409ff4f7
Binary files /dev/null and b/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/SimpleExtension.dll differ
diff --git a/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/circle.xsl b/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/circle.xsl
new file mode 100644
index 00000000..6559d004
--- /dev/null
+++ b/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/circle.xsl
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/circles.xml b/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/circles.xml
new file mode 100644
index 00000000..695a3573
--- /dev/null
+++ b/build-support/tools/nant/examples/StyleTask/SimpleExtensionObject/circles.xml
@@ -0,0 +1,10 @@
+
+
+12
+75.398223686155
+
+
+37.5
+235.61944901923448
+
+
\ No newline at end of file
diff --git a/build-support/tools/nant/examples/UserTask/UserTask.cs b/build-support/tools/nant/examples/UserTask/UserTask.cs
new file mode 100644
index 00000000..b55ff3ae
--- /dev/null
+++ b/build-support/tools/nant/examples/UserTask/UserTask.cs
@@ -0,0 +1,31 @@
+using NAnt.Core;
+using NAnt.Core.Attributes;
+
+namespace NAnt.Examples.Tasks {
+ [TaskName("usertask")]
+ public class TestTask : Task {
+ #region Private Instance Fields
+
+ private string _message;
+
+ #endregion Private Instance Fields
+
+ #region Public Instance Properties
+
+ [TaskAttribute("message", Required=true)]
+ public string FileName {
+ get { return _message; }
+ set { _message = value; }
+ }
+
+ #endregion Public Instance Properties
+
+ #region Override implementation of Task
+
+ protected override void ExecuteTask() {
+ Log(Level.Info, _message.ToUpper());
+ }
+
+ #endregion Override implementation of Task
+ }
+}
diff --git a/build-support/tools/nant/examples/UserTask/default.build b/build-support/tools/nant/examples/UserTask/default.build
new file mode 100644
index 00000000..97c1db25
--- /dev/null
+++ b/build-support/tools/nant/examples/UserTask/default.build
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/examples/examples.build b/build-support/tools/nant/examples/examples.build
new file mode 100644
index 00000000..ea05d884
--- /dev/null
+++ b/build-support/tools/nant/examples/examples.build
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/build-support/tools/nant/schema/nant.xsd b/build-support/tools/nant/schema/nant.xsd
new file mode 100644
index 00000000..f2a6ad20
--- /dev/null
+++ b/build-support/tools/nant/schema/nant.xsd
@@ -0,0 +1,2435 @@
+
+
+
+ NAnt schema generated at 10/14/2006 16:12:51
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file