nicolaken    2002/11/18 06:34:47

  Modified:    .        build.xml
  Added:       tools    forrest-targets.ent
  Removed:     .        forrest-targets.ent
  Log:
  Moved forrest ant entity under tools.
  
  Revision  Changes    Path
  1.186     +1 -1      jakarta-avalon-phoenix/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-avalon-phoenix/build.xml,v
  retrieving revision 1.185
  retrieving revision 1.186
  diff -u -r1.185 -r1.186
  --- build.xml 18 Nov 2002 14:16:47 -0000      1.185
  +++ build.xml 18 Nov 2002 14:34:46 -0000      1.186
  @@ -1,6 +1,6 @@
   <?xml version="1.0"?>
     <!DOCTYPE project [
  -    <!ENTITY forrest-targets SYSTEM "file:./forrest-targets.ent">
  +    <!ENTITY forrest-targets SYSTEM "file:./tools/forrest-targets.ent">
     ]>
   <!--
   
==============================================================================
  
  
  
  1.1                  jakarta-avalon-phoenix/tools/forrest-targets.ent
  
  Index: forrest-targets.ent
  ===================================================================
  <!--
  This build.xml snippet contains Forrest targets for Ant 1.5+.  It checks that
  the user has set ${forrest.home}, either in one of:
    build.properties
    project.properties
    ant.properties
    .ant.properties
  or with the FORREST_HOME environment variable, and prints an informative error
  message if not found.
  
  Usage:
  1) Copy this file to somewhere in your project.
  2) Add the following to the top of your project's Ant build.xml script
  (adjusting the path):
  
    <!DOCTYPE project [
      <!ENTITY forrest-targets SYSTEM "file:./forrest-targets.ent">
    ]>
  
  3) Before the closing '</project>' in your build.xml, add this:
  
    &forrest-targets;
    
  This is like expanding a macro: it pulls in the contents of this file.
  
  A minimal build.xml would thus be:
  
  <!DOCTYPE project [
  <!ENTITY forrest-targets SYSTEM "file:./forrest-targets.ent">
  ]>
  
  <project default="site">
      &forrest-targets;
  </project>
  -->
  
    <target name="site" depends="forrest.init" description="Generates static 
HTML documentation">
      <ant antfile="${forrest.home}/forrest.antproxy.xml" target="site"/>
    </target>
  
    <target name="webapp" depends="forrest.init" description="Generates an 
unpackaged webapp of the website">
      <ant antfile="${forrest.home}/forrest.antproxy.xml" target="webapp"/>
    </target>
  
    <target name="war" depends="forrest.init" description="Generates a .war 
file containing the website">
      <ant antfile="${forrest.home}/forrest.antproxy.xml" target="war"/>
    </target>
  
    <target name="validate" depends="forrest.init" description="Validates XML 
documentation files">
      <ant antfile="${forrest.home}/forrest.antproxy.xml" target="validate"/>
    </target>
  
    <target name="forrest.init" depends="forrest.sethome, 
forrest.home.defined"/>
  
    <target name="forrest.sethome" depends="forrest.loadenv,
    forrest.checkenv, forrest.checkhome, forrest.check-build.properties,
    forrest.check-project.properties, forrest.check-ant.properties,
    forrest.check-.ant.properties"/>
  
    <target name="forrest.loadenv" unless="forrest.home.present">
      <property environment="env"/>
      <echo level="verbose">Forrest: Got ${env.FORREST_HOME}</echo>
    </target>
  
    <target name="forrest.checkenv" if="env.FORREST_HOME">
      <echo level="verbose">Found $FORREST_HOME..</echo>
      <property name="forrest.home" location="${env.FORREST_HOME}"/>
      <echo level="verbose">forrest.home set to ${forrest.home}</echo>
      <available file="${forrest.home}" type="dir" 
property="forrest.home.present"/>
    </target>
  
  
    <target name="forrest.checkhome">
      <available file="${forrest.home}" type="dir" 
property="forrest.home.present"/>
      <available file="build.properties" type="file" 
property="build.properties.present"/>
      <available file="project.properties" type="file" 
property="project.properties.present"/>
      <available file="ant.properties" type="file" 
property="ant.properties.present"/>
      <available file=".ant.properties" type="file" 
property=".ant.properties.present"/>
    </target>
  
    <!-- No we can't extract the commonalities below into an antcall'ed target,
    because it wouldn't be able to set forrest.home -->
    <target name="forrest.check-build.properties" unless="forrest.home.present"
    if="build.properties.present">
      <echo level="verbose">Forrest: Checking build.properties..</echo>
      <loadproperties srcfile="build.properties">
        <filterchain>
          <linecontains>
            <contains value="forrest.home"/>
          </linecontains>
        </filterchain>
      </loadproperties>
      <available file="${forrest.home}" type="dir" 
property="forrest.home.present"/>
  
    </target>
  
    <target name="forrest.check-project.properties" 
unless="forrest.home.present"
    if="project.properties.present">
      <echo level="verbose">Forrest: Checking project.properties..</echo>
      <loadproperties srcfile="project.properties">
        <filterchain>
          <linecontains>
            <contains value="forrest.home"/>
          </linecontains>
        </filterchain>
      </loadproperties>
      <available file="${forrest.home}" type="dir" 
property="forrest.home.present"/>
    </target>
  
    <target name="forrest.check-ant.properties" unless="forrest.home.present"
    if="ant.properties.present">
      <echo level="verbose">Forrest: Checking ant.properties..</echo>
      <loadproperties srcfile="ant.properties">
        <filterchain>
          <linecontains>
            <contains value="forrest.home"/>
          </linecontains>
        </filterchain>
      </loadproperties>
      <available file="${forrest.home}" type="dir" 
property="forrest.home.present"/>
    </target>
  
    <target name="forrest.check-.ant.properties" unless="forrest.home.present"
    if=".ant.properties.present">
      <echo level="verbose">Forrest: Checking .ant.properties..</echo>
      <loadproperties srcfile=".ant.properties">
        <filterchain>
          <linecontains>
            <contains value="forrest.home"/>
          </linecontains>
        </filterchain>
      </loadproperties>
      <available file="${forrest.home}" type="dir" 
property="forrest.home.present"/>
    </target>
  
    <target name="forrest.home.defined" depends="forrest.sethome" 
unless="forrest.home.present">
      <property name="path" value="${user.home}/xml-forrest/build/dist/shbat"/>
      <pathconvert targetos="windows" property="winpath">
        <path>
          <pathelement location="${path}"/>
        </path>
      </pathconvert>
      <pathconvert targetos="unix" property="unixpath">
        <path>
          <pathelement
            location="${path}"/>
        </path>
      </pathconvert>
  
      <echo>
        ----------------------------------------------
        To run this target, you need Forrest installed.
        Please do the following:
  
        export CVSROOT=:pserver:[EMAIL PROTECTED]:/home/cvs
        cvs checkout xml-forrest
        cd xml-forrest
        build      (Windows)
        ./build.sh (Unix)
  
        Then either:
  
        - Set FORREST_HOME as the Forrest build instructions describe
        - Create a build.properties, with the forrest.home property pointing to
          the forrest shbat directory, eg:
  
          forrest.home=${winpath}  (Windows)
          forrest.home=${unixpath}  (Unix)
  
          (adjusting the path according to where your xml-forrest is)
        ----------------------------------------------
      </echo>
      <fail message="Need to define $${forrest.home}"/>
    </target>
  
  
  

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

Reply via email to