Hi,

The attached patch fixes up antgump so it's usable. It seems that
Antgump got left behind when Gump migrated from merge.xsl to Jenny (I
don't actually know this history, just deducing..).

Changes:
 - Updated README
 - Add a target to compile and jar the jenny classes
 - Declare all jars in a <path>, list defaults in
   gump.workspace.properties, and add a 'print-env' target that prints
   them for debugging.
 - Add a default.properties containing hardcoded paths (following the
   Turbine system)

The default workspace.master.xml is still very outdated, and I haven't
got around to fixing it yet.

Btw, what is the status of Antgump? Dead? Superceded by something? If it
ever worked as advertised, would it replace the gen.sh system, or does
Gump run on systems that don't have Ant?


--Jeff
? .timestamp
? antgump.diff
? temp
Index: README.txt
===================================================================
RCS file: /home/cvspublic/jakarta-alexandria/proposal/antgump/README.txt,v
retrieving revision 1.1
diff -u -r1.1 README.txt
--- README.txt  1 Apr 2001 05:28:20 -0000       1.1
+++ README.txt  4 May 2002 13:39:31 -0000
@@ -1,39 +1,47 @@
 README for AntGump
 Created by Scott Sanders
 March 30, 2001
+Updated by Jeff Turner, 4 May, 2002
+
+Introduction
+------------
 
 The intention that I had with AntGump was to copy Sam Ruby's work with Gump,
-and amke it use Ant as much as possible.  Sam's work was excellent to start 
+and make it use Ant as much as possible.  Sam's work was excellent to start 
 with, and I did not have to do much of anything to all of his fine work.  All
 of the work that I did was in porting Gump to be Ant-based.
 
-To run AntGump, you simply should have created a workspace file, like Sam's 
-rubypad.xml or rubix.xml or my athena.xml.  This tells AntGump which projects
-you would like to build in your very own tinderbox.  Once you have defined your
-workspace file, simply run build.py, passing the workspace file as an argument.
+Prerequisites
+-------------
 
-On Unix, this looks like:
+In order to use AntGump, the following are software requirements:
 
-   ./build.py athena.xml
+Ant 1.3 or higher         http://jakarta.apache.org/ant/
+CVS                       http://www.cvshome.org (You probably have it)
+JDK                       http://java.sun.com (I use 1.3 from IBM)
+XalanJ 2.0.1 or higher    http://xml.apache.org
 
-On Windows, this looks like (from a command shell):
 
-   build.py athena.xml
+Getting started
+---------------
 
-Or, the easy way on both systems:
+To run AntGump, you simply should have created a workspace file, like Sam's 
+rubypad.xml or rubix.xml or my athena.xml.  This tells AntGump which projects
+you would like to build in your very own tinderbox.  Once you have defined your
+workspace file, you pass it in to Ant as follows:
 
-    python build.py athena.xml
+ant -Dworkspace.master=athena.xml
 
+If workspace.master is unspecified, the default workspace.master.xml file is
+used. This workspace file is parametrized, and if you using it, you will need
+to customize the values in gump.workspace.properties.
 
-In order to use AntGump, the following are software requirements:
+You'll almost certainly need to edit gump.workspace.properties to set the
+correct path to the Xalan and other jars.
 
-Ant 1.3                http://jakarta.apache.org
-CVS            http://www.cvshome.org (You probably have it)
-JDK            http://java.sun.com (I use 1.3 from IBM)
-Python 1.5.2   http://www.python.org (Python 2.0 is fine as well)
-XalanJ 2.0.1   http://xml.apache.org
 
-Special Notes:
+Special Notes
+-------------
 
 AntGump differs from Gump in that it always calls the specified target of a
 projects build file, even if you are singly executing a project's build.  The Gump
Index: build.xml
===================================================================
RCS file: /home/cvspublic/jakarta-alexandria/proposal/antgump/build.xml,v
retrieving revision 1.3
diff -u -r1.3 build.xml
--- build.xml   21 Apr 2001 17:35:57 -0000      1.3
+++ build.xml   4 May 2002 13:39:32 -0000
@@ -2,25 +2,56 @@
 
   <property file="${user.home}/gump.workspace.properties"/>
   <property file="gump.workspace.properties"/>
+  <property file="default.properties"/>
 
-  <property name="work.dir" value="${basedir}/temp"/>
-  <property name="workspace.master" value="workspace.master.xml"/>
-  <property name="workspace.copy" value="${work.dir}/workspace.xml"/>
+  <path id="classpath">
+      <pathelement location="${jenny.jar}"/>
+      <pathelement location="${xml-apis.jar}"/>
+      <pathelement location="${xerces.jar}"/>
+      <pathelement location="${xalan.jar}"/>
+  </path>
 
-  <target name="clean">
+  <target name="clean" description="Cleans workdir">
     <delete dir="${work.dir}"/>
+    <delete dir="${jenny.build.classes}"/>
   </target>
-  
 
-  <target name="main" depends="clean,workspace">
+  <target name="print-env" description="Prints the user's environment">
+      <echo message="Using jars:"/>
+      <echo message="  jenny.jar    = ${jenny.jar}"/>
+      <echo message="  xml-apis.jar = ${xml-apis.jar}"/>
+      <echo message="  xerces.jar   = ${xerces.jar}"/>
+      <echo message="  xalan.jar    = ${xalan.jar}"/>
+      <echo message=""/>
+      <echo message="If any of these are incorrect or unset, please fix them in your 
+gump.workspace.properties file"/>
+  </target>
+
+  <target name="jenny" description="Compile and jar the Jenny classes">
+      <mkdir dir="${jenny.build.classes}"/>
+      <javac srcdir="${jenny.src.java}"
+          destdir="${jenny.build.classes}">
+          <classpath refid="classpath" />
+      </javac>
+      <jar jarfile="${jenny.jar}"
+          basedir="${jenny.build.classes}">
+      </jar>
+  </target>
+
+  <target name="main" depends="print-env,clean,workspace,jenny" description="Runs 
+Gump (default)">
     <echo message="Step 1 - Creating working directory - ${work.dir}"/>
     <mkdir dir="${work.dir}"/>
 
     <echo message="Step 2 - Merging projects into workspace"/>
+    <!--
     <style in="${workspace.copy}" 
           out="${work.dir}/merge.xml" 
         style="../gump/stylesheet/merge.xsl"  
-       destdir="${work.dir}"/>
+        destdir="${work.dir}"/>
+    -->
+    <java classname="Jenny" fork="true">
+        <classpath refid="classpath"/>
+        <arg value="${workspace.copy}"/>
+    </java>
 
     <echo message="Step 3 - Sorting projects into dependency order"/>
     <style in="${work.dir}/merge.xml" 
@@ -39,7 +70,7 @@
           out="${work.dir}/antgumpall.xml" 
         style="xsl/antgump-all.xsl"  
       destdir="${work.dir}"/>
-               
+
     <echo message="Step 6 - Preparing Sandbox"/>
     <ant antfile="antgumpall.xml" target="prepare" dir="${work.dir}"/>
 
@@ -54,7 +85,7 @@
   </target>
 
 
-  <target name="workspace">
+  <target name="workspace" description="Filters and copies the workspace XML file">
       
     <!-- Gump installation properties -->
     
@@ -109,4 +140,4 @@
           
   </target>
 
-</project>
\ No newline at end of file
+</project>
Index: default.properties
===================================================================
RCS file: default.properties
diff -N default.properties
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ default.properties  4 May 2002 13:39:32 -0000
@@ -0,0 +1,11 @@
+# --------------------------------------------------
+# Hardcoded paths (shouldn't need editing)
+# --------------------------------------------------
+jenny.home=../gump
+jenny.src.java=${jenny.home}/java
+jenny.build.classes=${jenny.home}/classes
+jenny.jar=${jenny.home}/jenny.jar
+
+work.dir=${basedir}/temp
+workspace.master=workspace.master.xml
+workspace.copy=${work.dir}/workspace.xml
Index: gump.workspace.properties
===================================================================
RCS file: 
/home/cvspublic/jakarta-alexandria/proposal/antgump/gump.workspace.properties,v
retrieving revision 1.1
diff -u -r1.1 gump.workspace.properties
--- gump.workspace.properties   20 Apr 2001 17:56:23 -0000      1.1
+++ gump.workspace.properties   4 May 2002 13:39:32 -0000
@@ -1,15 +1,24 @@
 # -----------------------------------------------
 # Workspace version
 # -----------------------------------------------
-workspace.version = 0.2
+workspace.version = 0.3
+
+# -----------------------------------------------
+#                REQUIRED LIBRARIES
+# -----------------------------------------------
+xalan.home=${user.home}/apache/xml/xalan-j_2_2_D9
+xalan.lib=${xalan.home}/bin
+xml-apis.jar=${xalan.lib}/xml-apis.jar
+xerces.jar=${xalan.lib}/xerces.jar
+xalan.jar=${xalan.lib}/xalan.jar
 
 # -----------------------------------------------
 # Properties for gump installation setup.
 # -----------------------------------------------
-gump.home = /opt/jakarta/jakarta-alexandria/proposal/gump
-gump.base.dir = /home/sanders/antgump
-gump.cvs.dir = /home/sanders/antgump-cvs
-gump.lib.dir = /home/sanders/java
+gump.home = ${user.home}/apache/jakarta/jakarta-alexandria/proposal/gump
+gump.base.dir = ${user.home}/antgump
+gump.cvs.dir = ${user.home}/antgump-cvs
+gump.lib.dir = ${user.home}/java
 
 # -----------------------------------------------
 # Properties for CVS login.
Index: workspace.master.xml
===================================================================
RCS file: /home/cvspublic/jakarta-alexandria/proposal/antgump/workspace.master.xml,v
retrieving revision 1.1
diff -u -r1.1 workspace.master.xml
--- workspace.master.xml        20 Apr 2001 17:56:23 -0000      1.1
+++ workspace.master.xml        4 May 2002 13:39:32 -0000
@@ -11,7 +11,6 @@
   <project href="@GUMP_HOME@/project/jakarta-avalon-cornerstone.xml"/>
   <project href="@GUMP_HOME@/project/jakarta-avalon-logkit.xml"/>
   <project href="@GUMP_HOME@/project/jakarta-avalon-phoenix.xml"/>
-  <project href="@GUMP_HOME@/project/jakarta-avalon-testlet.xml"/>
   <project href="@GUMP_HOME@/project/jakarta-avalon.xml"/>
   <project href="@GUMP_HOME@/project/jakarta-commons.xml"/>
   <project href="@GUMP_HOME@/project/jakarta-ecs.xml"/>
@@ -27,9 +26,11 @@
   <project href="@GUMP_HOME@/project/jakarta-slide.xml"/>
   <project href="@GUMP_HOME@/project/jakarta-struts.xml"/>
   <project href="@GUMP_HOME@/project/jakarta-taglibs.xml"/>
+  <!--
   <project href="@GUMP_HOME@/project/jakarta-tomcat-40.xml"/>
-  <!-- project href="@GUMP_HOME@/project/jakarta-tomcat-41.xml"/ -->
+  <project href="@GUMP_HOME@/project/jakarta-tomcat-41.xml"/>
   <project href="@GUMP_HOME@/project/jakarta-tomcat.xml"/>
+  -->
   <project href="@GUMP_HOME@/project/jakarta-tools.xml"/>
   <project href="@GUMP_HOME@/project/jakarta-turbine.xml"/>
   <project href="@GUMP_HOME@/project/jakarta-velocity.xml"/>

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to