You are viewing a plain text version of this content. The canonical link for it is here.
Posted to nmaven-commits@incubator.apache.org by si...@apache.org on 2006/12/10 23:44:12 UTC

svn commit: r485313 [15/15] - in /incubator/nmaven/trunk: components/ components/dotnet-artifact/ components/dotnet-artifact/src/ components/dotnet-artifact/src/main/ components/dotnet-artifact/src/main/java/ components/dotnet-artifact/src/main/java/or...

Added: incubator/nmaven/trunk/plugins/scripts/build-2.0.sh
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/plugins/scripts/build-2.0.sh?view=auto&rev=485313
==============================================================================
--- incubator/nmaven/trunk/plugins/scripts/build-2.0.sh (added)
+++ incubator/nmaven/trunk/plugins/scripts/build-2.0.sh Sun Dec 10 15:43:51 2006
@@ -0,0 +1,3 @@
+mvn -f ../pom-java-bootstrap.xml install
+mvn org.apache.maven.dotnet.plugins:maven-install-plugin:install-file -Dfile=../imports/nunit-2.0/nunit.framework.dll -DgroupId=org.nunit -DartifactId=nunit.framework -Dpackaging=dll -Dversion=2.2.8.0
+mvn -f ../pom-net-bootstrap.xml -Dmaven.test.skip=true -Dbootstrap install

Propchange: incubator/nmaven/trunk/plugins/scripts/build-2.0.sh
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/nmaven/trunk/plugins/src/assembly/src.xml
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/plugins/src/assembly/src.xml?view=auto&rev=485313
==============================================================================
--- incubator/nmaven/trunk/plugins/src/assembly/src.xml (added)
+++ incubator/nmaven/trunk/plugins/src/assembly/src.xml Sun Dec 10 15:43:51 2006
@@ -0,0 +1,22 @@
+<assembly>
+    <id>build</id>
+    <formats>
+        <format>tar.gz</format>
+        <format>zip</format>
+    </formats>
+  <includeBaseDirectory>true</includeBaseDirectory>
+    <fileSets>
+        <fileSet>
+            <directory>.</directory>
+            <outputDirectory></outputDirectory>
+            <excludes>
+                <exclude>*.ipr</exclude>
+                <exclude>*.iws</exclude>
+                <exclude>*.iml</exclude>
+                <exclude>src/**</exclude>
+                <exclude>**/site/**</exclude>                
+                <exclude>**/target/**</exclude>
+            </excludes>
+        </fileSet>
+    </fileSets>
+</assembly>
\ No newline at end of file

Propchange: incubator/nmaven/trunk/plugins/src/assembly/src.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/nmaven/trunk/site/LICENSE.txt
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/LICENSE.txt?view=auto&rev=485313
==============================================================================
--- incubator/nmaven/trunk/site/LICENSE.txt (added)
+++ incubator/nmaven/trunk/site/LICENSE.txt Sun Dec 10 15:43:51 2006
@@ -0,0 +1,176 @@
+                               Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS

Propchange: incubator/nmaven/trunk/site/LICENSE.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/nmaven/trunk/site/pom.xml
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/pom.xml?view=auto&rev=485313
==============================================================================
--- incubator/nmaven/trunk/site/pom.xml (added)
+++ incubator/nmaven/trunk/site/pom.xml Sun Dec 10 15:43:51 2006
@@ -0,0 +1,59 @@
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven-site</groupId>
+    <artifactId>nmaven-site</artifactId>
+    <packaging>pom</packaging>
+    <version>0.10</version>
+    <name>NMaven</name>
+    <url>http://nmaven.sourceforge.net</url>
+    <description>
+        NMaven provides Maven 2.x plugins to support building of .NET applications
+    </description>
+
+    <scm>
+        <url>http://svn.sourceforge.net/viewvc/nmaven/</url>
+        <connection>scm:svn:https://svn.sourceforge.net/svnroot/nmaven/</connection>
+        <developerConnection>
+            scm:svn:https://svn.sourceforge.net/svnroot/nmaven/</developerConnection>
+        <tag>REL_0_10</tag>
+    </scm>
+
+    <organization>
+        <name>NMaven</name>
+        <url>http://nmaven.sourceforge.net</url>
+    </organization>
+
+    <issueManagement>
+        <system>Sourceforge Bugtracking</system>
+        <url>http://sourceforge.net/tracker/?atid=876936&amp;group_id=176362&amp;func=browse</url>
+    </issueManagement>
+
+    <licenses>
+        <license>
+            <name>Apache 2.0</name>
+            <url>LICENSE.txt</url>
+        </license>
+    </licenses>
+
+    <developers>
+        <developer>
+            <name>Shane Isbell</name>
+            <id>random7</id>
+            <email>random7@users.sourceforge.net</email>
+            <organization>NMaven</organization>
+            <url>http://jroller.com/page/random7</url>
+            <roles>
+                <role>admin</role>
+                <role>developer</role>
+            </roles>
+        </developer>
+    </developers>
+
+    <distributionManagement>
+        <site>
+            <id>nmaven-site</id>
+            <name>NMaven Site</name>
+            <url>scp://shell.sourceforge.net//home/groups/n/nm/nmaven/htdocs</url>
+        </site>
+    </distributionManagement>
+</project>

Propchange: incubator/nmaven/trunk/site/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/nmaven/trunk/site/src/site/apt/adding-plugins.apt
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/apt/adding-plugins.apt?view=auto&rev=485313
==============================================================================
--- incubator/nmaven/trunk/site/src/site/apt/adding-plugins.apt (added)
+++ incubator/nmaven/trunk/site/src/site/apt/adding-plugins.apt Sun Dec 10 15:43:51 2006
@@ -0,0 +1,164 @@
+Adding Compilers
+
+ To add support for additional compilers, add a compiler-plugins.xml file, similar to
+ the examples below, in the root of each module that you are building. NMaven will pick it up and add it to the list
+ of supported compilers. Of course, if your compiler does not work with the DefaultCompiler, you will need to
+ create your own implementation of org.apache.maven.dotnet.executable.NetExecutable and add the class-name implementation to
+ the pluginClass tag.
+
+* compiler-plugins.xml
+
+  * {{{http://svn.sourceforge.net/viewvc/nmaven/components/tags/REL_0_12/nmaven-core/src/main/resources/META-INF/nmaven/compiler-plugins.xml?view=markup}compiler-plugins.xml}}
+  is the master plugin file.
+
+ * {{{http://nmaven.sourceforge.net/components/nmaven-model/nmaven-compile-plugin/compiler-plugin.html}Compiler Plugins Model}}
+
+ Example:
+
++----+
+
+<compilerPlugins>
+    <compilerPlugin>
+        <identifier>MS-CS</identifier>
+        <pluginClass>org.apache.maven.dotnet.executable.compiler.impl.DefaultCompiler</pluginClass>
+        <compiler>MICROSOFT</compiler>
+        <executable>csc</executable>
+        <language>C_SHARP</language>
+        <profile>FULL</profile>
+        <frameworkVersions>
+            <frameworkVersion>2.0.50727</frameworkVersion>
+            <frameworkVersion>1.1.4322</frameworkVersion>
+        </frameworkVersions>
+        <platforms>
+            <platform>
+                <operatingSystem>Windows</operatingSystem>
+                <architecture>x86</architecture>
+            </platform>
+        </platforms>
+        <profile>FULL</profile>
+        <commandFilter>
+            <includes>
+                <include>out</include>
+                <include>target</include>
+                <include>delaysign</include>
+                <include>doc</include>
+                <include>keyfile</include>
+                <include>keycontainer</include>
+                <include>platform</include>
+                <include>recurse</include>
+                <include>reference</include>
+                <include>addmodule</include>
+                <include>win32res</include>
+                <include>win32icon</include>
+                <include>resource</include>
+                <include>linkresource</include>
+                <include>debug</include>
+                <include>optimize</include>
+                <include>warnaserror</include>
+                <include>warn</include>
+                <include>nowarn</include>
+                <include>checked</include>
+                <include>unsafe</include>
+                <include>define</include>
+                <include>langversion</include>
+                <include>noconfig</include>
+                <include>baseaddress</include>
+                <include>bugreport</include>
+                <include>codepage</include>
+                <include>utf8output</include>
+                <include>main</include>
+                <include>fullpaths</include>
+                <include>filealign</include>
+                <include>pdb</include>
+                <include>nostdlib</include>
+                <include>lib</include>
+                <include>errorreport</include>
+                <include>moduleassemblyname</include>
+                <include>nologo</include>
+           </includes>
+        </commandFilter>
+    </compilerPlugin>
+</compilerPlugins>
+
++----+
+
+* Creating Profiles
+
+ NMaven matches a plugin based on four user-specified parameters - vendor, language, framework version and profile - and on one
+ platform parameter: operating system. Sometimes a user may want to target, say C# version 2.0.50727 but would like to
+ use a different NetCompiler implementation than the standard one. The \<profile/> field gives this capability. The
+ profile also has other uses such using a different set of command filters; or, as in the case of
+ the COMPACT profile, specifying a new set of system assemblies.
+
+ The .NET Compact Profile:
+
++----+
+    <compilerPlugin>
+        <identifier>MS-CS:COMPACT</identifier>
+        <pluginClass>org.apache.maven.dotnet.executable.compiler.impl.CSharpCompilerForProfile</pluginClass>
+        <compiler>MICROSOFT</compiler>
+        <executable>csc</executable>
+        <language>C_SHARP</language>
+        <profile>COMPACT</profile>
+        <frameworkVersions>
+            <frameworkVersion>2.0.50727</frameworkVersion>
+        </frameworkVersions>
+        <platforms>
+            <platform>
+                <operatingSystem>Windows</operatingSystem>
+                <architecture>x86</architecture>
+            </platform>
+        </platforms>
+        <defaultAssemblyPath>
+            C:\Program Files\Microsoft.NET\SDK\CompactFramework\v2.0\WindowsCE
+        </defaultAssemblyPath>
+        <assemblies>
+            <assembly>mscorlib</assembly>
+            <assembly>System.Data</assembly>
+            <assembly>System</assembly>
+            <assembly>System.Drawing</assembly>
+            <assembly>System.Messaging</assembly>
+            <assembly>System.Web.Services</assembly>
+            <assembly>System.Windows.Forms.DataGrid</assembly>
+            <assembly>System.Windows.Forms</assembly>
+            <assembly>Microsoft.WindowsCE.Forms</assembly>
+            <assembly>System.Xml</assembly>
+        </assemblies>
+        <commandFilter>
+            <includes>
+                ...
+           </includes>
+        </commandFilter>
+    </compilerPlugin>
++----+
+
+Adding Assembly Plugins
+
+* assembly-plugins.xml
+
+ For each compiler that implements a new language, you will also need to add an assembly-plugin entry. Currently, this
+ needs to be placed in the nmaven-core jar (file system access in future release). The AssemblyInfoMarshaller tells the
+ nmaven framework how to format the AssemblyInfo.*.
+
++----+
+
+<assemblyPlugins>
+    <assemblyPlugin>
+        <identifier>CS</identifier>
+        <pluginClass>
+            org.apache.maven.dotnet.assembler.impl.DefaultAssemblyInfoMarshaller
+        </pluginClass>
+        <language>C_SHARP</language>
+        <extension>cs</extension>
+    </assemblyPlugin>
+    <assemblyPlugin>
+        <identifier>VB</identifier>
+        <pluginClass>
+            org.apache.maven.dotnet.assembler.impl.VBAssemblyInfoMarshaller
+        </pluginClass>
+        <language>VB</language>
+        <extension>vb</extension>
+    </assemblyPlugin>
+</assemblyPlugins>
+
++----+
\ No newline at end of file

Added: incubator/nmaven/trunk/site/src/site/apt/environment-configuration.apt
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/apt/environment-configuration.apt?view=auto&rev=485313
==============================================================================
--- incubator/nmaven/trunk/site/src/site/apt/environment-configuration.apt (added)
+++ incubator/nmaven/trunk/site/src/site/apt/environment-configuration.apt Sun Dec 10 15:43:51 2006
@@ -0,0 +1,270 @@
+Configuring the Environment
+
+* How NMaven Chooses the Compiler Environment
+
+ NMaven chooses the correct compiler by the following rules:
+
+  [[1]] Is the \<vendor/> tag set? If it is set, go to (2). If not, then detect operating system. If OS is windows,
+   set the vendor to MICROSOFT. If OS is not windows, set the vendor to MONO.
+
+  [[2]] Is the \<language> tag set? If it is set, go to (3). If not, then set the language to C_SHARP.
+
+  [[3]] Is the \<frameworkVersion/> tag set? If it is set, go to (4). If not, then set the version to 2.0.50727
+
+  [[4]] Is the \<profile> tag set? If if is set, go to (5). If not, then set to the value "FULL".
+
+  [[5]] Is there a match in the compiler-plugins.xml for the given vendor, language, frameworkVersion, profile and operating system?
+   If not, fail the build. If so, instantiate the correct compiler plugin.
+
+  [[6]] If vendor is MICROSOFT, then set the execution path to C:\WINDOWS\Microsoft.NET\Framework\v${frameworkVersion}\${executable}.
+   If this directory does not exist, fail the build. Note that this execution path is hard-coded, and precludes you from running the
+   compiler from a non-standard location. In a future release, NMaven will read the value from the registry. If vendor
+   is not MICROSOFT, then NMaven will run whatever is specified within the path.
+
+
+* CSharp2.0:exe:Microsoft
+
++----+
+
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.ms.csharp</groupId>
+    <artifactId>it-0001</artifactId>
+    <packaging>exe</packaging>
+    <version>0.1.0.0</version>
+    <name>csharp: it-0001</name>
+
+    <build>
+	<sourceDirectory>src/main/csharp</sourceDirectory>
+	<testSourceDirectory>src/test/csharp</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compile-plugin</artifactId>
+     	        <extensions>true</extensions>
+            </plugin>
+        </plugins>
+    </build>
+</project>
+
++----+
+
+* CSharp1.1:exe:Microsoft
+
++----+
+
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.ms.csharp</groupId>
+    <artifactId>it-0001</artifactId>
+    <packaging>exe</packaging>
+    <version>0.1.0.0</version>
+    <name>csharp: it-0001</name>
+
+    <build>
+	<sourceDirectory>src/main/csharp</sourceDirectory>
+	<testSourceDirectory>src/test/csharp</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compile-plugin</artifactId>
+     	        <extensions>true</extensions>
+                <configuration>
+                    <frameworkVersion>1.1.4322</frameworkVersion>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+</project>
+
++----+
+
+* VB2.0: library:MS
+
++----+
+
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.ms.csharp</groupId>
+    <artifactId>it-0001</artifactId>
+    <packaging>library</packaging>
+    <version>0.1.0.0</version>
+    <name>vb:it-0001</name>
+
+    <build>
+	<sourceDirectory>src/main/vb</sourceDirectory>
+	<testSourceDirectory>src/test/vb</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compile-plugin</artifactId>
+     	        <extensions>true</extensions>
+                <configuration>
+			        <language>VB</language>
+                </configuration>
+            </plugin>
+
+        </plugins>
+    </build>
+</project>
+
++----+
+
+* CSharp1.1:module:Mono
+
+ You will only need to use the MONO vendor field if you want to build MONO on windows: MONO is the default vendor for
+ other OS's.
+
++----+
+
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.mono.csharp</groupId>
+    <artifactId>it-0001</artifactId>
+    <packaging>module</packaging>
+    <version>0.1.0.0</version>
+    <name>csharp: it-0001</name>
+
+    <build>
+	<sourceDirectory>src/main/csharp</sourceDirectory>
+	<testSourceDirectory>src/test/csharp</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compile-plugin</artifactId>
+     	        <extensions>true</extensions>
+                <configuration>
+                    <vendor>MONO</vendor>
+                    <frameworkVersion>1.1.4322</frameworkVersion>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+</project>
+
++----+
+
+* CSharp2.0:library:Mono
+
++----+
+
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.mono.csharp</groupId>
+    <artifactId>it-0001</artifactId>
+    <packaging>library</packaging>
+    <version>0.1.0.0</version>
+    <name>csharp: it-0001</name>
+
+    <build>
+	<sourceDirectory>src/main/csharp</sourceDirectory>
+	<testSourceDirectory>src/test/csharp</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compile-plugin</artifactId>
+     	        <extensions>true</extensions>
+                <configuration>
+                    <vendor>MONO</vendor>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+</project>
+
++----+
+
+* CSharp:library:DotGNU
+
++----+
+
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.mono.csharp</groupId>
+    <artifactId>it-0001</artifactId>
+    <packaging>library</packaging>
+    <version>0.1.0.0</version>
+    <name>csharp: it-0001</name>
+
+    <build>
+	<sourceDirectory>src/main/csharp</sourceDirectory>
+	<testSourceDirectory>src/test/csharp</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compile-plugin</artifactId>
+     	        <extensions>true</extensions>
+                <configuration>
+                    <vendor>DotGNU</vendor>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+</project>
+
++----+
+
+* Nemerle:library:Mono
+
++----+
+
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.mono.nemerle</groupId>
+    <artifactId>it-0001</artifactId>
+    <packaging>library</packaging>
+    <version>0.1.0.0</version>
+    <name>nemerle: it-0001</name>
+
+    <build>
+	<sourceDirectory>src/main/nemerle</sourceDirectory>
+	<testSourceDirectory>src/test/nemerle</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compile-plugin</artifactId>
+     	        <extensions>true</extensions>
+                <configuration>
+                    <language>NEMERLE</language>
+                    <vendor>MONO</vendor>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+</project>
+
++----+
+
+* PHP:library:Mono
+
+ To get PHP to run with NMaven, you will need to include mPHPRuntime.dll under each module directory. This is a work
+ around until I create a mavenizer-plugin that will handle non-nmaven generated assemblies.
+
++----+
+
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.mono.php</groupId>
+    <artifactId>it-0001</artifactId>
+    <packaging>library</packaging>
+    <version>0.1.0.0</version>
+    <name>php: it-0001</name>
+
+    <build>
+	<sourceDirectory>src/main/php</sourceDirectory>
+	<testSourceDirectory>src/test/php</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compile-plugin</artifactId>
+     	        <extensions>true</extensions>
+                <configuration>
+                    <language>PHP</language>
+                    <vendor>MONO</vendor>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+</project>
+
++----+

Added: incubator/nmaven/trunk/site/src/site/apt/features.apt
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/apt/features.apt?view=auto&rev=485313
==============================================================================
--- incubator/nmaven/trunk/site/src/site/apt/features.apt (added)
+++ incubator/nmaven/trunk/site/src/site/apt/features.apt Sun Dec 10 15:43:51 2006
@@ -0,0 +1,22 @@
+Features
+
+ * Mono Support: C#, Nemerle, PHP
+
+ * Microsoft Support: C#, VB, .NET Compact Profile
+
+ * DotGNU Support: C#
+
+ * NUnit support
+
+ * Resource generation and embedding
+
+ * Autmomatic Generation of AssemblyInfo.* based on language and contents of the pom.
+
+ * Web Application Packaging and Deployment
+
+ * XSD and WSDL Generation
+
+ * Pluggable architecture for adding new compilers and executables.
+
+ * nmaven-settings file for selecting the environment (MONO/MS/GNU, vendor/framework version, install location, etc)
+

Added: incubator/nmaven/trunk/site/src/site/apt/getting-started.apt
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/apt/getting-started.apt?view=auto&rev=485313
==============================================================================
--- incubator/nmaven/trunk/site/src/site/apt/getting-started.apt (added)
+++ incubator/nmaven/trunk/site/src/site/apt/getting-started.apt Sun Dec 10 15:43:51 2006
@@ -0,0 +1,305 @@
+Getting Started
+
+Sections
+
+ * {{{getting-started.html#Building NMaven}Building NMaven}}
+
+ * {{{getting-started.html#Assembly Info}Assembly Info}}
+
+ * {{{getting-started.html#Unit Testing with NUnit}Unit Testing with NUnit}}
+
+ * {{{getting-started.html#Building & Deploying Web Applications}Building & Deploying Web Applications}}
+
+ * {{{getting-started.html#Building with .NET Modules}Building with .NET Modules}}
+
+ * {{{getting-started.html#Installing Existing Assemblies in the Maven Repository}Installing Existing Assemblies in the Maven Repository}}
+
+ * {{{getting-started.html#Generating Resources}Generating Resources}}
+
+* {Building NMaven}
+
+ Make sure that you have jdk1.5+ installed and then do the following:
+
+  [[1]] Download the latest nmaven-components and nmaven-plugin project archives from the sourceforge site.
+
+  [[2]] Unarchive the nmaven-components. Build it by typing "mvn install" from the root directory.
+
+  [[3]] Unarchive the nmaven-plugins. Goto the scripts directory and run the appropriate batch or shell script for
+   your enviornment.  This does a bootstrap build of Java jars and .NET assemblies and places the 3rd party .NET libraries
+   in the local maven repo.
+
+ Building on Linux, may take some extra steps. By default, on many Linux environments, the GNU Compiler for Java is already
+ installed. The current GNU version will not work with NMaven. To check which version the system uses, type "java -version"
+ on the command line. If you see something similar to the following, you will need to take additional steps to get the
+ build setup:
+
++----+
+
+java version "1.4.2"
+gij (GNU libgcj) version 4.1.1 20060525 (Red Hat 4.1.1-1)
++----+
+
+ Create a file "/etc/profile.d/java.sh" with the following entries:
+
++----+
+
+ export JAVA_HOME=/usr/java/jdk1.5.0_09
+ export PATH=$JAVA_HOME/bin:$PATH
++----+
+
+ Type "mvn -version" from the command line. You should see the following:
+
++----+
+
+java version "1.5.0_09"
+Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_09-b01)
+Java HotSpot(TM) Client VM (build 1.5.0_09-b01, mixed mode, sharing)
++----+
+
+ On Linux, you also need Mono version 1.1.18 or higher. Type "mono -V" on the command line to see what version you
+ are running. If it is below 1.1.18, then download the latest mono version, unzip and run rpm from the commandline.
+ Detailed instructions are located here:
+ {{{ http://www.mono-project.com/Getting_Mono}Installing Mono}}
+
+* {Assembly Info}
+
+ Provided that you do not have your own AssemblyInfo class in your project, NMaven will automatically generate
+ an AssemblyInfo.* for you. It does the following mapping:
+
+*-------------------------+--------------------------------------------+
+| AssemblyDescription | $\{project.description\} |
+*-------------------------+--------------------------------------------+
+| AssemblyVersion | $\{project.version\} |
+*-------------------------+--------------------------------------------+
+| AssemblyTitle | $\{project.name\} |
+*-------------------------+--------------------------------------------+
+| AssemblyCompany | $\{project.organization.name\} |
+*-------------------------+--------------------------------------------+
+| AssemblyProduct | $\{project.organization.name\}-$\{project.name\} |
+*-------------------------+--------------------------------------------+
+| AssemblyCopyright | place a COPYRIGHT.txt file in your module directory and NMaven will pick it up and put it in the assembly |
+*-------------------------+--------------------------------------------+
+
+ Since the pom version is mapped to the assembly manifest, you MUST follow the 0.0.0.0 version convention specified by
+ Microsoft (or the build will fail).
+
+* {Unit Testing with NUnit}
+
+ Prior to being able to unit test with NUnit, you must install the nunit.framework.dll into the local maven repository.
+ Go to the scripts directory in the nmaven-plugins download and run the script install-1.1 (.NET 1.1 environment)
+ or install-2.0 (.NET 2.0 environment).
+
+ After installing NUnit, add the org.nunit dependency to your pom.xml (as shown below). You
+ will only need to add the nmaven-test-plugin to the pom under the following circumstances:
+
+  [[1]] If you do not add the nunit bin to your path;
+
+  [[2]] If you have the mono bin in your path and you want to use another installation of NUnit ;
+
+  [[3]] If you have both the mono bin and the NUnit bin in your path and you want to choose a specific one.
+
+ Sample configuration of the test-plugin:
+
++----+
+
+ <project>
+....
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.maven.sample</groupId>
+            <artifactId>csc1</artifactId>
+	        <type>module</type>
+            <version>2.0.0.0</version>
+        </dependency>
+
+        <dependency>
+            <groupId>org.nunit</groupId>
+            <artifactId>nunit.framework</artifactId>
+            <version>2.2.8.0</version>
+	        <type>library</type>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <sourceDirectory>src/main/csharp</sourceDirectory>
+        <testSourceDirectory>src/test/csharp</testSourceDirectory>
+
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compile-plugin</artifactId>
+     	        <extensions>true</extensions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-test-plugin</artifactId>
+                <configuration>
+                    <nunitHome>C:\Programs\nunit</nunitHome>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+</project>
+
++----+
+
+ On occasion, you may want to use one language for your main classes and another language for your test classes. In this
+ case use the \<testLanguage/> tag as shown below. The \<language/> and \<vendor/> tags are for the main classes and the
+ \<testLanguage/> and \<testVendor/> are for the test classes.
+
++----+
+
+ <project>
+....
+
+    <build>
+...
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compile-plugin</artifactId>
+     	        <extensions>true</extensions>
+     	        <configuration>
+     	            <language>C_SHARP</language>
+     	            <vendor>MONO</vendor>
+     	            <testLanguage>VB</testLanguage>
+     	            <testVendor>MICROSOFT</testVendor>
+     	        </configuration>
+            </plugin>
+        </plugins>
+    </build>
+</project>
+
++----+
+
+ NMaven defaults to the 2.0 Framework Version for compiling. To change this to 1.1 (for both the test compile and the
+ main compile), do the following:
+
++----+
+
+<plugins>
+    <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-compile-plugin</artifactId>
+        <extensions>true</extensions>
+        <configuration>
+            <language>C_SHARP</language>
+            <vendor>MONO</vendor>
+            <frameworkVersion>1.1.4322</frameworkVersion>
+            <testLanguage>VB</testLanguage>
+            <testVendor>MICROSOFT</testVendor>
+            <testFrameworkVersion>1.1.4322</testFrameworkVersion>
+        </configuration>
+    </plugin>
+</plugins>
+
++----+
+
+ To disable the NUnit tests, add the system property -Dmaven.test.skip=true to the command line. You can also disable
+ tests by adding \<skipTests>true\</skipTests> to the configuration above.
+
+* {Building & Deploying Web Applications}
+
+ To enable building of the Web application, specify the packaging as "nar" - .NET Archive. NMaven will compile
+ classes in the source and test directories and then proceed to place the newly generated artifacts and its dependencies into
+ the target/$\{project.build.finalname\}/bin directory. NMaven will also copy any files from the src/main/webapp directory
+ into the target/$\{project.build.finalname\} directory, allowing you to add any additional resources such as Web.Config and
+ ASPX files.
+
+ You will only need to add the nmaven-webapp-plugin to the pom if you are planning on deploying the web application. In
+ that case, add the deployPath pom configuration as shown below. Type "mvn deploy" from the command line and NMaven will
+ copy the web application to the deployPath location.
+
++----+
+
+<project>
+    <modelVersion>4.0.0</modelVersion>
+    <groupId>org.apache.maven.sample</groupId>
+    <artifactId>webapp</artifactId>
+    <packaging>nar</packaging>
+    <version>2.0.0</version>
+    <name>nar</name>
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.maven.sample</groupId>
+            <artifactId>csc2</artifactId>
+            <type>library</type>
+            <version>2.0.0</version>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <sourceDirectory>src/main/csharp</sourceDirectory>
+        <testSourceDirectory>src/test/csharp</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compile-plugin</artifactId>
+     	        <extensions>true</extensions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-webapp-plugin</artifactId>
+                <configuration>
+                    <deployPath>${MYAPP_HOME}/apps</deployPath>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+</project>
+
++----+
+
+* {Building with .NET Modules}
+
+ Linking all of your .NET libraries to all of the .NET module transitive dependencies is probably not want you want to do.
+ NMaven will only link the modules that are directly specified within the project's pom. For the DotGNU compiler,
+ you can create modules, but (as of yet) there is no way to add them to other libraries during the compile process.
+
+* {Installing Existing Assemblies in the Maven Repository}
+
+ Unlike typical artifacts generated by Maven, the NMaven artifacts in the Maven repository do not include versions
+ in the file name. This has a number of advantages, including not needing to recompile all of your favorite open-source
+ assemblies that you want use as dependencies in your build. To install an artifact, execute a commandline argument
+ (directly or through a script) using the maven-install-plugin:
+
++----+
+ mvn org.apache.maven.plugins:maven-install-plugin:install-file
+        -Dfile=../imports/nunit-2.0/nunit.framework.dll
+        -DgroupId=org.nunit
+        -DartifactId=nunit.framework
+        -Dpackaging=dll
+        -Dversion=2.2.8.0
++----+
+
+ After that, include the dependency in your pom.xml file and you are ready to go.
+
++----+
+     <dependencies>
+        <dependency>
+            <groupId>org.nunit</groupId>
+            <artifactId>nunit.framework</artifactId>
+            <version>2.2.8.0</version>
+            <type>library</type>
+        </dependency>
+    </dependencies>
++----+
+
+* {Generating Resources}
+
+ There are four types of resources to include within an assembly: linked resources, embedded resources,
+ win32 resources and win32 icon. By placing your files in the appropriate directory, NMaven will pick them up
+ and embed/link them during the compile phase.
+
+*-------------------------+--------------------------------------------+
+| src/main/resources/linkresource | Link all files in this directory to the assembly  |
+*-------------------------+--------------------------------------------+
+| src/main/resources/resource | Embed all files in this directory to the assembly|
+*-------------------------+--------------------------------------------+
+| src/main/resources/resgen | Generate a resx file from all files in this directory and embed the resource in the assembly |
+*-------------------------+--------------------------------------------+
+| src/main/resources/win32res | Embed the resources in the assembly |
+*-------------------------+--------------------------------------------+
+| src/main/resources/win32icon | Embed the icon within the assembly (icon will show up in file viewer) |
+*-------------------------+--------------------------------------------+
+

Added: incubator/nmaven/trunk/site/src/site/apt/index.apt
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/apt/index.apt?view=auto&rev=485313
==============================================================================
--- incubator/nmaven/trunk/site/src/site/apt/index.apt (added)
+++ incubator/nmaven/trunk/site/src/site/apt/index.apt Sun Dec 10 15:43:51 2006
@@ -0,0 +1,15 @@
+About NMaven
+
+ NMaven provides Maven 2.x plugins to support building of .NET applications. Technically, NMaven is its own framework
+ that provides the correct .NET compiler based on the environment (vendor/language/operating system).  This framework
+ allows the developer to easily add additional compiler support by implementing the NetCompiler interface and providing
+ a compiler-plugins.xml file in the project directory. NMaven leverages Maven (and its plugin architecture) for the build
+ lifecycle. So you can think of NMaven as a small, compiler-plugin-framework on top of the larger Maven build-framework.
+
+RoadMap
+
+ The primary goal of NMaven is to provide a Maven build environment for all Mono compatible compilers. Specific, 
+ near-term goals include:
+
+ * Signing of Assemblies
+ 
\ No newline at end of file

Added: incubator/nmaven/trunk/site/src/site/apt/plugins/index.apt
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/apt/plugins/index.apt?view=auto&rev=485313
==============================================================================
--- incubator/nmaven/trunk/site/src/site/apt/plugins/index.apt (added)
+++ incubator/nmaven/trunk/site/src/site/apt/plugins/index.apt Sun Dec 10 15:43:51 2006
@@ -0,0 +1,17 @@
+Available Plugins
+
+*-----------------------------------------------------------------------------------+----------------------------------+
+| <<Plugin>>                                       | <<Description>>
+*-----------------------------------------------------------------------------------+----------------------------------+
+| {{{maven-compile-plugin/index.html} <<<compile>>>}}          | Compiles .NET Applications
+*-----------------------------------------------------------------------------------+----------------------------------+
+| {{{maven-install-plugin/index.html} <<<install>>>}}          | Installs Artifacts
+*-----------------------------------------------------------------------------------+----------------------------------+
+| {{{maven-test-plugin/index.html} <<<test>>>}}              | Tests class files with NUnit.
+*-----------------------------------------------------------------------------------+----------------------------------+
+| {{{maven-webapp-plugin/index.html} <<<webapp>>>}}          | Packages and deploys web applications
+*-----------------------------------------------------------------------------------+----------------------------------+
+| {{{maven-wsdl-plugin/index.html} <<<wsdl>>>}}              | Generates WSDLs.
+*-----------------------------------------------------------------------------------+----------------------------------+
+| {{{maven-xsd-plugin/index.html} <<<xsd>>>}}                | Generates schema bindings
+*-----------------------------------------------------------------------------------+----------------------------------+

Added: incubator/nmaven/trunk/site/src/site/site.xml
URL: http://svn.apache.org/viewvc/incubator/nmaven/trunk/site/src/site/site.xml?view=auto&rev=485313
==============================================================================
--- incubator/nmaven/trunk/site/src/site/site.xml (added)
+++ incubator/nmaven/trunk/site/src/site/site.xml Sun Dec 10 15:43:51 2006
@@ -0,0 +1,26 @@
+<project name="NMaven">
+    <bannerRight>
+        <src>http://sflogo.sourceforge.net/sflogo.php?group_id=176362&amp;type=4</src>
+    </bannerRight>
+
+    <body>
+        <links>
+            <item name="Project Site" href="http://sourceforge.net/projects/nmaven/"/>
+            <item name="NMaven" href="http://nmaven.sourceforge.net/"/>            
+            <item name="NMaven SVN" href="http://svn.sourceforge.net/viewvc/nmaven/"/>
+            <item name="Maven" href="http://maven.apache.org/"/>
+            <item name="Mono Project" href="http://www.mono-project.com/"/>
+            <item name="DotGNU" href="http://dotgnu.org/"/>            
+        </links>
+        <menu name="General Info">
+            <item name="About" href="index.html"/>            
+            <item name="Features" href="features.html"/>
+            <item name="Getting Started" href="getting-started.html"/>
+            <item name="Plugins" href="/plugins/index.html"/>
+            <item name="Adding Compilers" href="adding-plugins.html"/>
+            <item name="Configuration" href="environment-configuration.html"/>
+            <item name="Download" href="http://sourceforge.net/project/showfiles.php?group_id=176362"/>
+        </menu>
+        ${reports}
+    </body>
+</project>
\ No newline at end of file

Propchange: incubator/nmaven/trunk/site/src/site/site.xml
------------------------------------------------------------------------------
    svn:eol-style = native