I've created a patch for the clojure source that does the following:

- Adds a minimal site build, with links to the main Clojure web site
(http://clojure.org)
- Generates a source JAR to go with the binary JAR
- Generates JavaDoc for the project site  (if profile "javadoc" is enabled)
- Adds a Maven profile, "ci", for a nightly continuous integration
build, to deploy Maven artifacts to a local Maven repository

This is based on icky Maven stuff I wrote for Tapestry a year or so ago.

I'm also in the process of revamping tapestry.apache.org to make it
more of a project hosting site; it will (soon) have Bamboo (continuous
integration server),
Confluence (Wiki), JIRA (Issue Tracking) and SVN.  I could set up a
post-commit and nightly build for Clojure at any time.  This has
served the Tapestry community quite well, giving people easy access to
latest-and-greatest snapshots and (JavaDoc) documentation.


Note that the clojure-logo.png file must be stored in src/site/resources/images.

-- 
Howard M. Lewis Ship

Creator Apache Tapestry and Apache HiveMind

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

<<inline: clojure-logo.png>>

Index: pom.xml
===================================================================
--- pom.xml	(revision 1139)
+++ pom.xml	Tue Dec 02 21:50:15 PST 2008
@@ -1,31 +1,162 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project xmlns="http://maven.apache.org/POM/4.0.0";
          xmlns:xsi="http//www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
-http://maven.apache.org/maven-v4_0_0.xsd";>
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd";>
-	<modelVersion>4.0.0</modelVersion>
+    <modelVersion>4.0.0</modelVersion>
-	<groupId>jvm.clojure</groupId>
+    <groupId>org.clojure</groupId>
-	<artifactId>clojure-lang</artifactId>
-	<name>clojure-lang</name>
-	<version>1.0-SNAPSHOT</version>
+    <artifactId>clojure-lang</artifactId>
+    <name>clojure-lang</name>
+    <version>1.0-SNAPSHOT</version>
-	<url>http://clojure.org/</url>
+    <url>http://clojure.org/mvn-site/</url>
+
+    <description>Clojure core environment and runtime library.</description>
+  
+    <licenses>
+        <license>
+            <name>Common Public License Version 1.0</name>
+            <url>http://www.opensource.org/licenses/cpl1.0.txt</url>
+            <distribution>repo</distribution>
+        </license>
+    </licenses>
+
+    <scm>
+        <connection>scm:https://clojure.svn.sourceforge.net/svnroot/clojure/</connection>
+        <url>http://clojure.svn.sourceforge.net/viewvc/clojure/</url>
+    </scm>
+
+    <developers>
+        <developer>
+            <id>rh</id>
+            <name>Rich Hickey</name>
+            <email>[EMAIL PROTECTED]</email>
+            <roles>
+                <role>Bringer Of Light</role>
+            </roles>
+            <timezone>EST</timezone>
+        </developer>
+    </developers>
+
+    <mailingLists>
+        <mailingList>
+            <name>Clojure Google Group</name>
+            <subscribe>[EMAIL PROTECTED]</subscribe>
+            <unsubscribe>[EMAIL PROTECTED]</unsubscribe>
+            <archive>http://groups.google.com/group/clojure</archive>
+        </mailingList>
+    </mailingLists>
+
-	<build>
-		<sourceDirectory>src/jvm</sourceDirectory>
-		<scriptSourceDirectory>src/clj</scriptSourceDirectory>
-		<plugins>
-			<plugin>
-				<artifactId>maven-compiler-plugin</artifactId>
-				<configuration>
-					<source>1.5</source>
-					<target>1.5</target>
-					<optimize>true</optimize>
-				</configuration>
-			</plugin>
+    <build>
+        <sourceDirectory>src/jvm</sourceDirectory>
+        <scriptSourceDirectory>src/clj</scriptSourceDirectory>
+        <plugins>
+            <plugin>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <configuration>
+                    <source>1.5</source>
+                    <target>1.5</target>
+                    <optimize>true</optimize>
+                </configuration>
+            </plugin>
+               <plugin>
+                <artifactId>maven-site-plugin</artifactId>
+                <!-- Snapshots after this are broken. [EMAIL PROTECTED] Maven. TAPESTRY-1943 -->
+                <version>2.0-beta-5</version>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-source-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>jar</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-jar-plugin</artifactId>
+                <configuration>
+                    <archive>
+                        <compress>true</compress>
+                        <index>true</index>
+                    </archive>
+                </configuration>
+            </plugin>
-		</plugins>
-		<resources>
-			<resource>
-				<directory>src/clj/</directory>
-			</resource>
-		</resources>
-	</build>
+        </plugins>
+        <resources>
+            <resource>
+                <directory>src/clj/</directory>
+            </resource>
+        </resources>
+    </build>
+
+    <reporting>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-project-info-reports-plugin</artifactId>
+                <reportSets>
+                    <reportSet>
+                        <reports>
+                            <report>license</report>
+                            <report>scm</report>
+                            <report>project-team</report>
+                            <report>mailing-list</report>
+                            <!-- These don't exist yet for Clojure.
+                            <report>cim</report>
+                            <report>issue-tracking</report>
+                            -->
+                        </reports>
+                    </reportSet>
+                </reportSets>
+            </plugin>
+        </plugins>
+    </reporting>
+
+    <profiles>
+        <!--  Only enable Javadoc as part of the output site when the javadoc profile is active. -->
+        <profile>
+            <id>javadoc</id>
+            <reporting>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.maven.plugins</groupId>
+                        <artifactId>maven-javadoc-plugin</artifactId>
+                        <!--  Version 2.3 is broken: See http://jira.codehaus.org/browse/MJAVADOC-145 -->
+                        <version>2.2</version>
+                        <configuration>
+                            <linksource>true</linksource>
+                            <links>
+                                <link>http://java.sun.com/j2se/1.5.0/docs/api/</link>
+                            </links>
+                            <aggregate>true</aggregate>
+                        </configuration>
+                    </plugin>
+                </plugins>
+            </reporting>
+        </profile>
+
+        <profile>
+            <!-- ci: running inside the the CI server and deploying to the snapshot repository and nightly web site. -->
+            <id>ci</id>
+            <distributionManagement>
+                <repository>
+                    <id>nightly</id>
+                    <url>${ci-web-root}/maven-repository</url>
+                </repository>
+                <snapshotRepository>
+                    <id>nightly-snapshot</id>
+                    <url>${ci-web-root}/maven-snapshot-repository</url>
+                </snapshotRepository>
+                <site>
+                    <url>${ci-web-root}/nightly/clojure</url>
+                </site>
+            </distributionManagement>
+        </profile>
+    </profiles>
+
+    <properties>
+        <ci-web-root>file:/var/www/html</ci-web-root>
+    </properties>
 </project>
\ No newline at end of file
Index: src/site/site.xml
===================================================================
--- src/site/site.xml	Tue Dec 02 21:50:15 PST 2008
+++ src/site/site.xml	Tue Dec 02 21:50:15 PST 2008
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+ *   Clojure
+ *   Copyright (c) Rich Hickey. All rights reserved.
+ *   The use and distribution terms for this software are covered by the
+ *   Common Public License 1.0 (http://opensource.org/licenses/cpl.php)
+ *   which can be found in the file CPL.TXT at the root of this distribution.
+ *   By using this software in any fashion, you are agreeing to be bound by
+ * 	 the terms of this license.
+ *   You must not remove this notice, or any other, from this software.
+-->
+
+<project name="Clojure">
+    <bannerLeft>
+        <name>Clojure</name>
+        <href>http://clojure.org</href>
+        <src>images/clojure-logo.png</src>
+    </bannerLeft>
+
+    <publishDate format="dd MMM yyyy"/>
+    <version/>
+
+    <body>
+
+        <menu name="Clojure Project">
+            <item name="Clojure Home Page" href="http://clojure.org"/>
+            <item name="Download" href="http://sourceforge.net/project/showfiles.php?group_id=137961"/>
+            <item name="JavaDocs" href="apidocs/"/>
+        </menu>
+
+        <menu ref="reports"/>
+
+    </body>
+
+</project>
Index: src/site/apt/index.apt
===================================================================
--- src/site/apt/index.apt	Tue Dec 02 21:34:09 PST 2008
+++ src/site/apt/index.apt	Tue Dec 02 21:34:09 PST 2008
@@ -0,0 +1,9 @@
+----
+ Clojure
+----
+
+  This is the project home page for Clojure, generated by Maven.
+
+  Most documentation is on the Clojure home page: {{{http://clojure.org/}http://clojure.org/}}.
+
+  
\ No newline at end of file

Reply via email to