build.xml #2

  • //
  • guest/
  • paul_krause/
  • perforce/
  • integrations/
  • jdev/
  • build.xml
  • View
  • Commits
  • Open Download .zip Download (8 KB)
<?xml version="1.0"?>
<!DOCTYPE project SYSTEM "ant.dtd">
<project name="com.perforce.jdev" default="build">

  <target name="ant.dtd">
    <antstructure output="ant.dtd"/>
    <replace file="ant.dtd" description="Workaround missing encoding bug">
      <replacetoken><![CDATA[?xml version="1.0" ?]]></replacetoken>
      <replacevalue><![CDATA[?xml version="1.0" encoding="UTF-8" ?]]></replacevalue>
    </replace>
  </target>

  <property name="jlint.verbose" value="false"/>
  <property name="jlint.flow"  value="true"/>
  <property name="jlint.inherit" value="true"/>
  <property name="jlint.sync"  value="true"/>

  <property name="jdev.home" location="../../../../../../Apps/jdev9i"/>
  <property name="jdev.lib" location="${jdev.home}/jdev/lib"/>
  <property name="jdev.olib" location="${jdev.home}/lib"/>
  <property name="jdev.jlib" location="${jdev.home}/jlib"/>
  <property name="ext.lib" location="${jdev.lib}/ext"/>

  <property name="p4api.home.dist" location="/src/perforce/public/perforce/api/java/p4package"/>
  <property name="p4api.home" location="/src/perforce/paul_krause/perforce/api/java/p4package"/>

  <property name="cmd.extension" value=".sh"/>
  <property name="bat.extension" value=""/>
  <property name="exe.extension" value=""/>

  <path id="build.classpath">
    <pathelement location="classes"/>
    <path description="JDeveloper SCM API">
      <pathelement location="${jdev.lib}/jdscm.jar"/>
      <pathelement location="${jdev.lib}/jdev.jar"/>
      <pathelement location="${jdev.lib}/jdukshare.jar"/>
    </path>
    <path description="JDeveloper Addin API">
      <pathelement location="${jdev.lib}/jdev.jar"/>
    </path>
    <path description="P4 PFK API">
      <pathelement location="${p4api.home}"/>
      <pathelement location="${p4api.home}/dist/p4.jar/jdev.jar"/>
    </path>
  </path>

  <path id="tasks.classpath">
    <pathelement location="/depot/main/Classes"/>
    <pathelement location="/depot/main/Lib/COM.soundbite.ant.jar"/>
  </path>

  <path id="jrefactory.classpath">
    <pathelement location="/depot/main/Lib/jrefactory.jar"/>
  </path>

  <path id="checkstyle.classpath">
    <pathelement location="/depot/main/ThirdParty/checkstyle-2.0/checkstyle-all-2.0.jar"/>
  </path>

  <taskdef name="antic"
    classname="COM.soundbite.ant.Antic"
    classpathref="tasks.classpath" />
  <taskdef name="checkstyle"
    classname="com.puppycrawl.tools.checkstyle.CheckStyleTask"
    classpathref="checkstyle.classpath"/>
  <taskdef name="etags"
    classname="COM.soundbite.ant.Etags"
    classpathref="tasks.classpath"/>
  <taskdef name="jlint"
    classname="COM.soundbite.ant.Jlint"
    classpathref="tasks.classpath"/>
  <taskdef name="p4change"
    classname="org.apache.tools.ant.taskdefs.optional.perforce.P4Change"/>
  <taskdef name="p4counter"
    classname="org.apache.tools.ant.taskdefs.optional.perforce.P4Counter"/>
  <taskdef name="p4edit"
    classname="org.apache.tools.ant.taskdefs.optional.perforce.P4Edit"/>
  <taskdef name="p4have"
    classname="org.apache.tools.ant.taskdefs.optional.perforce.P4Have"/>
  <taskdef name="p4label"
    classname="org.apache.tools.ant.taskdefs.optional.perforce.P4Label"/>
  <taskdef name="p4reopen"
    classname="org.apache.tools.ant.taskdefs.optional.perforce.P4Reopen"/>
  <taskdef name="p4revert"
    classname="org.apache.tools.ant.taskdefs.optional.perforce.P4Revert"/>
  <taskdef name="p4submit"
    classname="org.apache.tools.ant.taskdefs.optional.perforce.P4Submit"/>
  <taskdef name="p4sync"
    classname="org.apache.tools.ant.taskdefs.optional.perforce.P4Sync"/>
  <taskdef name="pretty"
    classname="org.acm.seguin.ant.Pretty" classpathref="jrefactory.classpath"/>
  <taskdef name="refactory-metrics"
    classname="org.acm.seguin.ant.Metrics" classpathref="jrefactory.classpath"/>

  <target name="init">
  </target>

  <target name="clean.depend" unless="force" depends="init">
    <depend cache="" destdir="classes" closure="yes" srcdir="src"/>
  </target>

  <target name="TAGS" depends="init" description="Generate TAGS file for emacs find-tag (meta-.)">
    <etags dir="src"/>
  </target>


  <target name="all" depends="clean, init, lint, build, TAGS, javadoc" description="Build every target"/>

  <target name="clean" depends="
    clean.class,
    clean.logs"
    description="Delete classes, jars, logs, and javadoc">
    <delete file="dependencies.txt"/>
  </target>

  <target name="clean.all" depends="clean.doc, clean.tmp, clean"/>

  <target name="clean.class">
    <delete dir="classes"/>
    <mkdir dir="classes"/>
  </target>

  <target name="clean.doc">
    <delete dir="javadoc"/>
  </target>

  <target name="clean.logs">
  </target>

  <target name="clean.tmp" depends="java.io.tmpdir"
    description="Delete temp files. Use with care!">
    <delete>
      <fileset includes="*" dir="${java.io.tmpdir}"/>
    </delete>
  </target>

  <target name="java.io.tmpdir">
    <mkdir dir="${java.io.tmpdir}"/>
  </target>


  <target name="build" depends="init,compile"
    description="(Default target) Deploy classes, EJBs, taglibs, and webapps.">
  </target>

  <target name="compile" depends="init,clean.depend"
    description="Compile all Java files">
    <javac deprecation="on" srcdir="src" destdir="classes" encoding="ISO8859_1"
      debug="true" classpathref="build.classpath">
      <include name="**/*.java"/>
    </javac>
  </target>

  <target name="deploy" depends="compile">
    <jar basedir="classes" jarfile="${ext.lib}/Perforce.jar" compress="on">
      <manifest file="Perforce.manifest"/>
      <metainf dir="src/META-INF"/>
      <zipgroupfileset dir="${p4api.home}/dist" includes="p4.jar"/>
    </jar>
  </target>

  <target name="lint" depends="compile,antic" description="Delint class files">
    <jlint dir="classes" srcdir="src" verbose="false" maxfiles="1"
      flow="${jlint.flow}" inherit="${jlint.inherit}" sync="${jlint.sync}">
      <include name="**/*.class"/>
    </jlint>
  </target>

  <target name="clean.lint">
    <delete>
      <fileset dir="classes" includes="**/*.lint"/>
    </delete>
  </target>

  <target name="antic" depends="init" description="Delint source files">
    <antic dir="src" relax="false"/>
  </target>

  <property name="copyright" value="&amp;copy; SoundBite. All Rights Reserved."/>
  <property name="disclaimer.text" value="Use of this software is subject to a license agreement."/>
  <property name="disclaimer" value="&lt;table&gt;&lt;TR&gt;&lt;TD VALIGN=top CLASS=NavBarCell3&gt;&lt;FONT SIZE=-2&gt;${disclaimer.text}&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TABLE&gt;"/>


  <target name="javadoc" depends="init,compile,clean.doc" description="Build program documentation">
    <mkdir dir="javadoc"/>
    <javadoc author="true"
      bottom="${disclaimer}"
      destdir="javadoc"
      charset="ISO-8859-1"
      footer="${copyright}"
      packagenames="com.perforce.*"
      maxmemory="128M"
      private="true"
      serialwarn="true"
      use="true"
      windowtitle="Perforce-JDeveloper Integeration">
      <classpath>
        <path refid="build.classpath"/>
        <pathelement location="${jdev.olib}/xmlparserv2.jar"/>
        <pathelement location="${jdev.jlib}/jewt4.jar"/>
        <path path="${java.class.path}"/>
      </classpath>
      <sourcepath location="src"/>
      <link href="file:${java.home}/../docs/api"/>
      <link href="file:${p4api.home}/docs"/>
      <link href="file:${user.home}/My Documents/jdev-scm-doc"/>
      <link href="file:${user.home}/My Documents/jdev-doc"/>
      <link href="file:${user.home}/My Documents/jewt-doc"/>
      <link href="file:${user.home}/My Documents/xmlparserv2-doc"/>
    </javadoc>
  </target>

  <target name="analyze" depends="init,compile">
    <jdepend outputfile="jdepend.out">
      <sourcespath location="src"/>
      <classpath path="build.classpath"/>
    </jdepend>
    <refactory-metrics output="refactory-metrics.csv" srcdir="src" comma="true" silent="false"/>
  </target>

  <target name="pretty-print">
    <pretty settingsdir="c:/depot/main">
      <fileset dir="src" includes="**/*.java"/>
    </pretty>
  </target>

  <target name="checkstyle" depends="init,compile" description="Check code against styleguide">
    <checkstyle memberpattern="^[a-z]+[A-Z0-9]+[a-z0-9A-Z]*$" javadocscope="protected" parampattern="^[a-z][a-z0-9]*$">
      <fileset dir="src" includes="**/*.java"/>
    </checkstyle>
  </target>

</project>
<!-- Local Variables: -->
<!-- tab-width: 8 -->
<!-- indent-tabs-mode: nil -->
<!-- End: -->
# Change User Description Committed
#2 2137 Paul Krause add deploy target
#1 2076 Paul Krause jdev 9.0.2 baseline (upgrading to jdev 9.0.3)