/[cvs]/jsr166/build.xml
ViewVC logotype

Diff of /jsr166/build.xml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.59 by tim, Sun Dec 7 20:49:10 2003 UTC revision 1.67 by jsr166, Sun Apr 11 22:00:40 2004 UTC
# Line 30  Line 30 
30    <property name="build.dir"            location="build"/>    <property name="build.dir"            location="build"/>
31    <property name="build.classes.dir"    location="${build.dir}/classes"/>    <property name="build.classes.dir"    location="${build.dir}/classes"/>
32    <property name="build.testcases.dir"  location="${build.dir}/testcases"/>    <property name="build.testcases.dir"  location="${build.dir}/testcases"/>
33      <property name="build.j1.dir"         location="${build.dir}/j1"/>
34      <property name="build.loops.dir"      location="${build.dir}/loops"/>
35    <property name="build.lib.dir"        location="${build.dir}/lib"/>    <property name="build.lib.dir"        location="${build.dir}/lib"/>
36    <property name="build.ant.dir"        location="${build.dir}/ant"/>    <property name="build.ant.dir"        location="${build.dir}/ant"/>
37    <property name="build.javadocs.dir"   location="${build.dir}/javadocs"/>    <property name="build.javadocs.dir"   location="${build.dir}/javadocs"/>
# Line 42  Line 44 
44    <!-- Source locations -->    <!-- Source locations -->
45    <property name="src.dir"              location="${basedir}/src/main"/>    <property name="src.dir"              location="${basedir}/src/main"/>
46    <property name="test.src.dir"         location="${basedir}/src/test"/>    <property name="test.src.dir"         location="${basedir}/src/test"/>
47      <property name="j1.src.dir"           location="${basedir}/src/javaone"/>
48      <property name="loops.src.dir"        location="${basedir}/src/loops"/>
49      <property name="tck.src.dir"          location="${test.src.dir}/tck"/>
50      <property name="jtreg.src.dir"        location="${test.src.dir}/jtreg"/>
51    <property name="ant.src.dir"          location="${basedir}/etc/ant"/>    <property name="ant.src.dir"          location="${basedir}/etc/ant"/>
52    <property name="stylesheet.dir"       location="${basedir}/etc/xsl"/>    <property name="stylesheet.dir"       location="${basedir}/etc/xsl"/>
53    <property name="lib.dir"              location="${basedir}/lib"/>    <property name="lib.dir"              location="${basedir}/lib"/>
# Line 53  Line 59 
59    <!-- Jar locations -->    <!-- Jar locations -->
60    <property name="product.jar"          location="${build.lib.dir}/jsr166.jar"/>    <property name="product.jar"          location="${build.lib.dir}/jsr166.jar"/>
61    <property name="junit.jar"            location="${lib.dir}/junit.jar"/>    <property name="junit.jar"            location="${lib.dir}/junit.jar"/>
62        <property name="concurrent.jar"       location="${lib.dir}/concurrent.jar"/>
63    
64    <!-- Bootclasspath argument -->    <!-- Bootclasspath argument -->
65    <property name="bootclasspath.args"   value="-Xbootclasspath/p:${product.jar}"/>    <property name="bootclasspath.args"   value="-Xbootclasspath/p:${product.jar}"/>
66    
# Line 63  Line 70 
70      <pathelement location="${junit.jar}"/>      <pathelement location="${junit.jar}"/>
71    </path>    </path>
72    
73      <!-- ALoops classpath -->
74      <path id="loops.classpath">
75        <pathelement location="${build.loops.dir}"/>
76      </path>
77    
78      <!-- J1 classpath -->
79      <path id="j1.classpath">
80        <pathelement location="${build.j1.dir}"/>
81        <pathelement location="${junit.jar}"/>
82        <pathelement location="${concurrent.jar}"/>
83      </path>
84    
85    
86    <!-- Main targets -->    <!-- Main targets -->
87    
88    
89    <target name="compile"    <target name="compile"
90            depends="init, configure-compiler, prepare-src"            depends="init, configure-compiler"
91            description="Compiles main sources to build folder">            description="Compiles main sources to build folder">
92    
93      <mkdir dir="${build.classes.dir}"/>      <mkdir dir="${build.classes.dir}"/>
94    
95      <javac srcdir="${prepare.src.dir}"      <javac srcdir="${src.dir}"
96            destdir="${build.classes.dir}"            destdir="${build.classes.dir}"
97              debug="${build.debug}"              debug="${build.debug}"
98         debuglevel="${build.debuglevel}"         debuglevel="${build.debuglevel}"
# Line 132  Line 150 
150    
151    
152    
   <target name="checkstyle"  
           depends="filter-src"  
           description="Reports on style errors in Java source (verbose, mostly chaff)">  
   
     <taskdef resource="checkstyletask.properties"  
             classpath="${lib.dir}/checkstyle-all-3.1.jar"/>  
   
     <mkdir dir="${build.checkstyle.dir}"/>  
       
     <checkstyle config="etc/checkstyle/sun_checks.xml"  
        failOnViolation="false">  
       <formatter type="xml" toFile="${build.checkstyle.dir}/checkstyle-report.xml"/>  
       <fileset dir="${build.filter.src.dir}" includes="**/*.java"/>  
     </checkstyle>  
       
     <style in="${build.checkstyle.dir}/checkstyle-report.xml"  
           out="${build.checkstyle.dir}/checkstyle-report.html"  
         style="${stylesheet.dir}/checkstyle-frames.xsl"/>  
   
   </target>  
   
   
   
153    <target name="doccheck"    <target name="doccheck"
154            depends="filter-doccheck"            depends="filter-doccheck"
155            description="Reports on javadoc style errors">            description="Reports on javadoc style errors">
# Line 172  Line 167 
167    
168    </target>    </target>
169    
170      
171    
172      <target name="checkstyle"
173              depends="filter-src"
174              description="Reports on style errors in Java source (verbose, mostly chaff)">
175    
176        <taskdef resource="checkstyletask.properties"
177                classpath="${lib.dir}/checkstyle-all-3.1.jar"/>
178    
179        <mkdir dir="${build.checkstyle.dir}"/>
180    
181        <checkstyle config="etc/checkstyle/sun_checks.xml"
182           failOnViolation="false">
183          <formatter type="xml" toFile="${build.checkstyle.dir}/checkstyle-report.xml"/>
184          <fileset dir="${build.filter.src.dir}" includes="**/*.java"/>
185        </checkstyle>
186    
187        <style in="${build.checkstyle.dir}/checkstyle-report.xml"
188              out="${build.checkstyle.dir}/checkstyle-report.html"
189            style="${stylesheet.dir}/checkstyle-frames.xsl"/>
190    
191      </target>
192    
193    
194    
195    <target name="dist"    <target name="dist"
196            depends="init, dist-clean, dist-jar, dist-docs"            depends="init, dist-clean, dist-jar, dist-docs"
# Line 267  Line 285 
285    
286      <javac srcdir="${ant.src.dir}"      <javac srcdir="${ant.src.dir}"
287            destdir="${build.ant.dir}"            destdir="${build.ant.dir}"
288             source="1.4"             source="1.4"/>
     />  
289    
290    </target>    </target>
291    
# Line 377  Line 394 
394    
395      <mkdir dir="${build.testcases.dir}"/>      <mkdir dir="${build.testcases.dir}"/>
396    
397      <javac srcdir="${test.src.dir}/tck"      <javac srcdir="${tck.src.dir}"
398              destdir="${build.testcases.dir}"
399                debug="${build.debug}"
400           debuglevel="${build.debuglevel}"
401          deprecation="${build.deprecation}"
402               source="${build.sourcelevel}"
403                 fork="true">
404    
405          <compilerarg value="${bootclasspath.args}"/>
406          <compilerarg line="${build.args}"/>
407    
408          <classpath refid="test.classpath"/>
409    
410        </javac>
411    
412        <javac srcdir="${test.src.dir}"
413            destdir="${build.testcases.dir}"            destdir="${build.testcases.dir}"
414              debug="${build.debug}"              debug="${build.debug}"
415         debuglevel="${build.debuglevel}"         debuglevel="${build.debuglevel}"
# Line 385  Line 417 
417             source="${build.sourcelevel}"             source="${build.sourcelevel}"
418               fork="true">               fork="true">
419    
420          <include name="jsr166/test/**"/>
421    
422        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="${bootclasspath.args}"/>
423        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
424          
425        <classpath refid="test.classpath"/>        <classpath refid="test.classpath"/>
426    
427      </javac>      </javac>
428    
429    <!--
430        <javac srcdir="${jtreg.src.dir}"
431              destdir="${build.testcases.dir}"
432                debug="${build.debug}"
433           debuglevel="${build.debuglevel}"
434          deprecation="${build.deprecation}"
435               source="${build.sourcelevel}"
436                 fork="true">
437    
438          <compilerarg value="${bootclasspath.args}"/>
439          <compilerarg line="${build.args}"/>
440    
441          <classpath refid="test.classpath"/>
442    
443        </javac>
444    -->
445    
446    </target>    </target>
447    
448    
# Line 411  Line 462 
462                     fork="true">                     fork="true">
463    
464        <jvmarg value="${bootclasspath.args}"/>        <jvmarg value="${bootclasspath.args}"/>
465                <jvmarg value="-server"/>
466          <jvmarg value="-showversion"/>
467    
468        <classpath refid="test.classpath"/>        <classpath refid="test.classpath"/>
469    
470        <formatter type="xml"/>        <formatter type="xml"/>
471    
472        <batchtest todir="${build.reports.dir}">        <batchtest todir="${build.reports.dir}" unless="no.test.tck">
473          <fileset dir="${test.src.dir}/tck">          <fileset dir="${tck.src.dir}">
474            <include name="${testcase}Test.java"/>            <include name="**/${testcase}Test.java"/>
475            </fileset>
476          </batchtest>
477    
478          <batchtest todir="${build.reports.dir}" if="do.test.old">
479            <fileset dir="${test.src.dir}">
480              <include name="jsr166/test/**/${testcase}Test.java"/>
481          </fileset>          </fileset>
482        </batchtest>        </batchtest>
483    
484    <!--
485          <batchtest todir="${build.reports.dir}" if="do.test.jtreg">
486            <fileset dir="${jtreg.src.dir}">
487              <include name="**/${testcase}Test.java"/>
488            </fileset>
489          </batchtest>
490    -->
491    
492      </junit>      </junit>
493    
494    </target>    </target>
# Line 462  Line 529 
529      </condition>      </condition>
530    
531      <property name="warnunchecked.arg" value=""/>      <property name="warnunchecked.arg" value=""/>
       
     <condition property="prepare.src.dir" value="${build.dir}/prepare-src">  
       <istrue value="${build.nothreads}"/>  
     </condition>  
       
     <property name="prepare.src.dir" value="${src.dir}"/>  
532    
533    
534      <!-- Common options in javac invocations -->      <!-- Common options in javac invocations -->
# Line 476  Line 537 
537    </target>    </target>
538    
539    
   <target name="prepare-src"  
           depends="configure-compiler"  
           if="prepare.src.dir">  
   
     <mkdir dir="${prepare.src.dir}"/>  
     <copy todir="${prepare.src.dir}">  
       <fileset dir="${src.dir}">  
         <exclude name="java/lang/**"/>  
       </fileset>  
     </copy>  
   
   </target>  
   
   
540    <target name="configure-tests"    <target name="configure-tests"
541         depends="configure-compiler">         depends="configure-compiler">
542    
# Line 501  Line 548 
548      <available property="xalan.available"      <available property="xalan.available"
549                 classname="org.apache.xalan.Version"/>                 classname="org.apache.xalan.Version"/>
550    
551                  
552      <!-- Ant 1.6beta and later don't need or want this check -->      <!-- Ant 1.6beta and later don't need or want this check -->
553      <!--          <!--
554      <fail message="Need JUnit 3.8.1 in ${ant.home}${file.separator}lib to run tests"      <fail message="Need JUnit 3.8.1 in ${ant.home}${file.separator}lib to run tests"
555            unless="junit.available"/>            unless="junit.available"/>
556    
# Line 518  Line 565 
565    <!-- Anthill targets -->    <!-- Anthill targets -->
566    
567    <target name="anthill-build">    <target name="anthill-build">
568      
569      <!-- Override this in user.properties -->      <!-- Override this in user.properties -->
570      <property name="tiger.home" location="e:/j2sdk1.5.0"/>      <property name="tiger.home" location="e:/j2sdk1.5.0"/>
571        
572      <exec resultproperty="result.property" dir="${basedir}" executable="${tiger.home}/bin/java">      <exec resultproperty="result.property" dir="${basedir}" executable="${tiger.home}/bin/java">
573        <arg value="-Xmx256000000"/>        <arg value="-Xmx256000000"/>
574        <!-- classpath of new JVM -->        <!-- classpath of new JVM -->
# Line 537  Line 584 
584        <arg value="do-anthill-build"/>        <arg value="do-anthill-build"/>
585      </exec>      </exec>
586    </target>    </target>
587      
588    <target name="do-anthill-build"    <target name="do-anthill-build"
589            depends="jar, test, docs, dist-docs"/>            depends="jar, test, docs, dist-docs"/>
590    
# Line 562  Line 609 
609    
610    
611    
612    <!-- Backward compatibility, work in progress -->    <!-- Various demos and test programs -->
613    
614    
615      <target name="sample" depends="init, configure-compiler"
616              description="Standalone demo program">
617    
   <target name="compat" depends="jar">  
     
618      <mkdir dir="${build.testcases.dir}"/>      <mkdir dir="${build.testcases.dir}"/>
619        
620        <javac srcdir="${test.src.dir}"
621              destdir="${build.testcases.dir}"
622                debug="${build.debug}"
623           debuglevel="${build.debuglevel}"
624          deprecation="${build.deprecation}"
625               source="${build.sourcelevel}"
626                 fork="true">
627    
628          <include name="jsr166/test/Sample.java"/>
629    
630        </javac>
631    
632        <copy todir="${build.testcases.dir}">
633          <fileset dir="${test.src.dir}">
634            <include name="**/*.properties"/>
635          </fileset>
636        </copy>
637    
638    
639        <java classname="jsr166.test.Sample" fork="true">
640          <classpath refid="test.classpath"/>
641          <!-- <jvmarg value="-ea"/> -->
642          <!-- <jvmarg value="-server"/> -->
643          <!-- <arg value="1000"/> -->
644        </java>
645      </target>
646    
647    
648      <target name="loops" depends="init, configure-compiler"
649              description="Benchmark from Doug Lea's AQS paper">
650    
651        <mkdir dir="${build.loops.dir}"/>
652    
653        <javac srcdir="${loops.src.dir}"
654              destdir="${build.loops.dir}"
655                debug="${build.debug}"
656           debuglevel="${build.debuglevel}"
657          deprecation="${build.deprecation}"
658               source="${build.sourcelevel}"
659                 fork="true">
660    
661          <compilerarg line="${build.args}"/>
662          <classpath refid="loops.classpath"/>
663    
664        </javac>
665    
666        <java classname="ALoops" fork="true">
667          <classpath refid="loops.classpath"/>
668        </java>
669    
670      </target>
671    
672    
673      <target name="compile-j1" depends="init, configure-compiler">
674    
675        <mkdir dir="${build.j1.dir}"/>
676    
677        <javac srcdir="${j1.src.dir}"
678              destdir="${build.j1.dir}"
679                debug="${build.debug}"
680           debuglevel="${build.debuglevel}"
681          deprecation="${build.deprecation}"
682               source="${build.sourcelevel}" >
683    
684          <include name="**/*.java"/>
685          <exclude name="**/dijkstra/**"/>
686    
687          <compilerarg line="${build.args}"/>
688          <classpath refid="j1.classpath"/>
689    
690        </javac>
691    
692      </target>
693    
694    
695      <target name="sw" depends="compile-j1"
696              description="Runs the SwingWorker demo">
697    
698        <!--
699        <java classname="jsr166.swing.SwingWorkerDemo" fork="true">
700          <classpath refid="j1.classpath"/>
701        </java>
702        -->
703    
704        <copy todir="${build.j1.dir}" file="${j1.src.dir}/jsr166/swing/SwingWorker.html"/>
705    
706        <exec dir="${build.j1.dir}" executable="appletviewer.exe">
707          <arg value="${build.j1.dir}/SwingWorker.html"/>
708        </exec>
709    
710      </target>
711    
712      <target name="j1" depends="compile-j1"
713              description="Runs a standalone JavaOne program">
714    
715        <java classname="jsr166.random.TestRandom" fork="true">
716          <classpath refid="j1.classpath"/>
717          <jvmarg value="-client"/>
718        </java>
719    
720      </target>
721    
722    
723      <target name="test-j1" depends="compile-j1"
724              description="Runs testcases from the JavaOne source directories">
725    
726        <junit printsummary="true"
727                 showoutput="true"
728              errorProperty="junit.failed"
729            failureProperty="junit.failed"
730                        dir="${build.j1.dir}"
731                       fork="true">
732    
733          <!-- <jvmarg value="-server"/> -->
734          <classpath refid="j1.classpath"/>
735          <formatter type="xml"/>
736    
737          <batchtest todir="${build.j1.dir}">
738            <fileset dir="${j1.src.dir}">
739              <include name="**/*Test.java"/>
740            </fileset>
741          </batchtest>
742    
743        </junit>
744    
745        <available property="junit.report.format"
746                      value="frames"
747                  classname="org.apache.xalan.lib.Redirect"/>
748        <property name="junit.report.format" value="noframes"/>
749    
750        <junitreport todir="${build.j1.dir}">
751          <fileset dir="${build.j1.dir}">
752            <include name="TEST-*.xml"/>
753          </fileset>
754          <report styledir="${stylesheet.dir}"
755                    format="${junit.report.format}"
756                     todir="${build.j1.dir}"
757          />
758        </junitreport>
759    
760        <fail message="Test Cases Failed" if="junit.failed"/>
761    
762      </target>
763    
764    
765    
766      <!-- C++ and JNI definitions and demos -->
767    
768      <target name="configure-cpp">
769    
770        <!-- Define tasks and types -->
771    
772        <path id="cpptasks.path">
773          <pathelement location="${lib.dir}/cpptasks.jar"/>
774        </path>
775        <taskdef resource="cpptasks.tasks" classpathref="cpptasks.path"/>
776        <typedef resource="cpptasks.types" classpathref="cpptasks.path"/>
777    
778        <!-- Set platform property for JNI includes -->
779    
780        <condition property="platform" value="linux">
781          <os name="Linux"/>
782        </condition>
783        <condition property="platform" value="win32">
784          <os family="windows"/>
785        </condition>
786        <condition property="platform" value="solaris">
787          <os name="SunOS"/>
788        </condition>
789    
790      </target>
791    
792    
793      <target name="cppdemo" depends="configure-cpp">
794    
795        <mkdir dir="${build.dir}"/>
796    
797        <cc multithreaded="true"
798                     name="g++"
799                   objdir="${build.dir}"
800                  outfile="${build.dir}/CppDemo">
801          <fileset dir="${test.src.dir}" includes="CppDemo.cpp"/>
802          <libset libs="stdc++"/>
803        </cc>
804    
805        <exec executable="${build.dir}/CppDemo">
806          <arg line="count in word frequency of word in command line count"/>
807        </exec>
808    
809      </target>
810    
811    
812      <target name="jnidemo" depends="init, configure-compiler, configure-cpp">
813    
814        <mkdir dir="${build.testcases.dir}"/>
815    
816      <javac srcdir="${test.src.dir}"      <javac srcdir="${test.src.dir}"
817            destdir="${build.testcases.dir}"            destdir="${build.testcases.dir}"
818              debug="${build.debug}"              debug="${build.debug}"
# Line 576  Line 820 
820        deprecation="${build.deprecation}"        deprecation="${build.deprecation}"
821             source="${build.sourcelevel}"             source="${build.sourcelevel}"
822               fork="true">               fork="true">
               
823        <compilerarg value="${bootclasspath.args}"/>        <compilerarg value="${bootclasspath.args}"/>
824        <compilerarg line="${build.args}"/>        <compilerarg line="${build.args}"/>
         
825        <classpath refid="test.classpath"/>        <classpath refid="test.classpath"/>
826                <include name="JniDemo.java"/>
       <include name="Compatibility.java"/>  
         
827      </javac>      </javac>
828        
829                    <javah destdir="${build.testcases.dir}"
830      <java classname="Compatibility" fork="true">        classpathref="test.classpath">
831        <jvmarg value="${bootclasspath.args}"/>        <class name="JniDemo"/>
832        </javah>
833    
834        <cc multithreaded="true"
835                     name="g++"
836                   objdir="${build.dir}"
837                  outfile="${build.dir}/JniDemo"
838                  outtype="shared">
839    
840          <compiler>
841            <defineset>
842              <define name="__int64" value="long long"/>
843            </defineset>
844            <includepath location="${java.home}/../include"/>
845            <includepath location="${java.home}/../include/${platform}"/>
846            <compilerarg value="-mno-cygwin"/>
847          </compiler>
848    
849          <linker>
850            <linkerarg value="--add-stdcall-alias"/>
851          </linker>
852    
853          <includepath location="${build.testcases.dir}"/>
854    
855          <fileset dir="${test.src.dir}" includes="JniDemo.cpp"/>
856    
857          <libset libs="stdc++"/>
858    
859        </cc>
860    
861        <!-- Necessary if windows, harmless if not -->
862        <copy file="${build.dir}/libJniDemo.so" tofile="${build.dir}/JniDemo.dll"/>
863    
864        <java classname="JniDemo" fork="true">
865          <!-- Watch out: path separator hardwired to semicolon here! -->
866          <sysproperty key="java.library.path" path="${java.library.path};${build.dir}"/>
867        <classpath refid="test.classpath"/>        <classpath refid="test.classpath"/>
868          <arg line="count in word frequency of word in command line count"/>
869      </java>      </java>
870    
871    </target>    </target>
872    
873    
874    
875      <!-- Backward compatibility, work in progress (some files not checked in) -->
876    
877    
878    
879    <property name="pretiger.src.dir"     location="${build.dir}/pretiger/src"/>    <property name="pretiger.src.dir"     location="${build.dir}/pretiger/src"/>
880    <property name="build.pretiger.dir"   location="${build.dir}/pretiger/classes"/>    <property name="build.pretiger.dir"   location="${build.dir}/pretiger/classes"/>
881    <property name="pretiger.jar"         location="${build.lib.dir}/jsr166-pretiger.jar"/>    <property name="pretiger.jar"         location="${build.lib.dir}/jsr166-pretiger.jar"/>
882    <property name="pretiger.sourcelevel" value="1.4"/>    <property name="pretiger.sourcelevel" value="1.4"/>
883      
884    <target name="defang"    <target name="defang"
885         depends="init"         depends="init"
886     description="Generates pre-Tiger compatible source">     description="Generates pre-Tiger compatible source">
887      
888      <delete dir="${pretiger.src.dir}"/>      <delete dir="${pretiger.src.dir}"/>
889      <mkdir dir="${pretiger.src.dir}"/>      <mkdir dir="${pretiger.src.dir}"/>
890      
891      <exec executable="perl">      <exec executable="perl">
892        <arg file="etc/defang.pl"/>        <arg file="etc/defang.pl"/>
893        <!-- <arg value="-v"/> -->        <!-- <arg value="-v"/> -->
894        <arg value="-s"/> <arg file="${src.dir}"/>        <arg value="-s"/> <arg file="${src.dir}"/>
895        <arg value="-t"/> <arg file="${pretiger.src.dir}"/>        <arg value="-t"/> <arg file="${pretiger.src.dir}"/>
896      </exec>      </exec>
897        
898    </target>    </target>
899    
900    <target name="compile-pretiger"    <target name="compile-pretiger"
# Line 636  Line 917 
917      </javac>      </javac>
918    
919    </target>    </target>
920      
921    <target name="pretiger" depends="compile-pretiger">    <target name="pretiger" depends="compile-pretiger">
922    
923      <mkdir dir="${build.lib.dir}"/>      <mkdir dir="${build.lib.dir}"/>
924        
925      <jar destfile="${pretiger.jar}">      <jar destfile="${pretiger.jar}">
926        <fileset dir="${build.pretiger.dir}">        <fileset dir="${build.pretiger.dir}">
927        </fileset>        </fileset>
928      </jar>      </jar>
929        
930    </target>    </target>
931    
932  </project>  </project>

Legend:
Removed from v.1.59  
changed lines
  Added in v.1.67

dl@cs.oswego.edu
ViewVC Help
Powered by ViewVC 1.1.27