Changeset 3120

Show
Ignore:
Timestamp:
01/10/11 22:53:14
Author:
douglm
Message:

Further build changes - more simplification. Remove a number of unused build files. Do all of build jar in the macro. Removed buildjar.xml

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/build.properties

    r2655 r3120  
    77 
    88# Version we are building 
    9 org.bedework.version=3.6 
     9org.bedework.version=3.7 
    1010 
    1111# Name of generated jar files 
  • trunk/build.xml

    r3105 r3120  
    6464  <property name="build.dir" location="${org.bedework.project.bedework}/build"/> 
    6565   
    66   <property name="buildjar" location="${build.dir}/buildTools/buildjar.xml"/> 
    6766  <property name="buildsh" location="${build.dir}/buildsh.xml"/> 
    6867  <property name="buildwar" location="${build.dir}/buildwar.xml"/> 
     
    128127    <fileset id="empty.fileset" dir="${org.bedework.empty.dir}" 
    129128             excludes="*" /> 
    130     <!-- default to empty --> 
    131     <fileset id="buildjar.resource.files" refid="empty.fileset" /> 
    132     <fileset id="buildjar.generated.java.sources" refid="empty.fileset" /> 
    133129 
    134130    <!-- ==================== Subcomponent Compilation Classpath ==================== 
     
    181177       ================================================================= --> 
    182178 
    183   <target name="build" depends="init.build,build.deployutil,build.rpiutil,build.build, 
     179  <target name="build" depends="init.build,build.deployutil,build.rpiutil, 
    184180                                build.access,build.davutil, 
    185181                                build.webdav,build.caldav, 
     
    665661          description="builds the deployutil component"> 
    666662    <ant antfile="${org.bedework.project.bedework}/deployutil/build.xml" inheritrefs="true" 
    667            target="build" > 
    668       <property name="build.jar.file" location="${org.bedework.deployutil.jar}" /> 
    669     </ant> 
     663           target="build" /> 
    670664     
    671665    <copy todir="${build.dir}" file="${org.bedework.deployutil.jar}" /> 
  • trunk/build/buildTools/deftasks.xml

    r3118 r3120  
    107107                location="${dist.home}/test-reports" /> 
    108108 
    109       <property name="edu.rpi.cmt.access.empty.dir" 
     109      <property name="org.bedework.empty.dir" 
    110110                location="${dist.home}/empty-dir" /> 
    111       <mkdir dir="${edu.rpi.cmt.access.empty.dir}" /> 
    112  
    113       <fileset id="empty.fileset" dir="${edu.rpi.cmt.access.empty.dir}" 
     111      <mkdir dir="${org.bedework.empty.dir}" /> 
     112 
     113      <fileset id="empty.fileset" dir="${org.bedework.empty.dir}" 
    114114               excludes="*" /> 
    115115 
     
    162162       ================================================================= --> 
    163163  <target name="cleanup"> 
    164     <delete dir="${edu.rpi.cmt.access.empty.dir}" /> 
     164    <!-- 
     165    <delete dir="${org.bedework.empty.dir}" /> 
     166    --> 
    165167  </target> 
    166168 
     
    182184          description="Compile access control classes"/> 
    183185   
     186  <!-- This macro builds a single jar file. It just sets defaults for the java 
     187       compiler then invokes it. 
     188 
     189       This is the only place we compile files. 
     190 
     191       On entry we require: 
     192         jar.file              Fully specified name of destination jar file. 
     193         base.java.sources     Defines the java source files 
     194         base.class.patternset Defines the java class files 
     195         base.resource.files   Defines extra resources to go in the jar 
     196 
     197       We will copy all files defined by base.java.patternset to a temporary 
     198       location and compile out of that into a temporary classes location. 
     199 
     200       We do that to avoid a problematic feature of the java compilers, the 
     201       tendency to recompile any referenced sources found on the source path. 
     202 
     203       So, if we have all our sources under the directory "src" and compile a 
     204       single package in that tree, all referenced classes will be compiled, 
     205       even if they exist in a jar file on the class path. 
     206 
     207       The other side-effect is that we might compile and include classes we 
     208       didn't realise we were compiling. 
     209 
     210       The downside is that we need to be very specific about the classes we 
     211       compile for a package and we might need to put classes in 
     212       base.java.sources which we don't want in the final jar file. 
     213 
     214       On exit we will have created classes in the directory 
     215          ${jar.temp.classes} 
     216       and a jar file 
     217          ${build.jar.file} 
     218 
     219       Authors: Mike Douglass   douglm rpi.edu 
     220  --> 
    184221  <macrodef name="build-jar"> 
    185222    <attribute name="module-base"/> 
     
    230267        </then> 
    231268      </if> 
    232  
    233       <ant antfile="${buildjar}" inheritRefs="true" target="build" > 
    234         <property name="build.jar.file" location="@{jar-file}" /> 
    235       </ant> 
     269       
     270      <!--  =================== Compilation Control Options =============== 
     271        These properties control option settings on the Javac compiler when it 
     272        is invoked using the <javac> task. 
     273 
     274        compile.debug        Should compilation include the debug option? 
     275        compile.deprecation  Should compilation include the deprecation option? 
     276        compile.optimize     Should compilation include the optimize option? 
     277 
     278        Below are the defaults. They may already be set in the build properties. 
     279      --> 
     280 
     281      <property name="compile.debug" value="true"/> 
     282      <property name="compile.deprecation" value="false"/> 
     283      <property name="compile.optimize" value="true"/> 
     284      <property name="compile.verbose" value="false"/> 
     285      <property name="compile.listfiles" value="false"/> 
     286 
     287      <property name="jar.temp.sources" 
     288               location="${dist.home}/source" /> 
     289      <property name="jar.temp.classes" 
     290               location="${dist.home}/classes" /> 
     291 
     292      <!-- ============================================================== 
     293            See if the jar is up to date. We recompile if any of the 
     294            source files or metainf files are newer. We also recompile if 
     295            any jars on the package classpath are newer. 
     296           ============================================================== --> 
     297 
     298      <noisyMsg message="build.jar.file=@{jar-file}" /> 
     299       
     300      <if> 
     301        <isset property="build.jar.dependency"/> 
     302        <then> 
     303          <dirname file="${build.jar.dependency}" 
     304                   property="dependency.dirname" /> 
     305          <basename file="${build.jar.dependency}" 
     306                    property="dependency.basename" /> 
     307          <fileset dir="${dependency.dirname}" id="dependency.fileset"> 
     308            <include name="${dependency.basename}"/> 
     309          </fileset> 
     310        </then> 
     311        <else> 
     312          <fileset refid="empty.fileset" id="dependency.fileset"/> 
     313        </else> 
     314      </if>       
     315 
     316      <uptodate property="build.jar.uptodate" 
     317                targetfile="@{jar-file}" > 
     318        <srcfiles refid="buildjar.java.sources" /> 
     319        <srcfiles refid="buildjar.generated.java.sources" /> 
     320        <srcfiles refid="buildjar.resource.files"/> 
     321        <srcfiles refid="dependency.fileset"/> 
     322      </uptodate> 
     323 
     324      <if> 
     325        <isset property="build.jar.uptodate"/> 
     326        <then> 
     327          <noisyMsg message="**** @{jar-file} is up to date" /> 
     328        </then> 
     329        <else> 
     330          <noisyMsg message="**** @{jar-file} needs rebuilding" /> 
     331 
     332          <!-- Delete jar file --> 
     333          <delete file="@{jar-file}"/> 
     334 
     335          <dirname property="build.jar.dir" file="@{jar-file}"/> 
     336 
     337          <mkdir dir="${build.jar.dir}" /> 
     338 
     339          <!-- ========================================================== 
     340                            Build the classes 
     341               ========================================================== --> 
     342 
     343          <!-- First copy the sources we are going to compile into a temp 
     344               directory. --> 
     345          <delete dir="${jar.temp.sources}" /> 
     346          <mkdir dir="${jar.temp.sources}" /> 
     347           
     348          <copy toDir="${jar.temp.sources}"> 
     349            <fileset refid="buildjar.java.sources" /> 
     350            <fileset refid="buildjar.generated.java.sources" /> 
     351            <fileset refid="buildjar.resource.files"/> 
     352          </copy> 
     353 
     354          <mkdir dir="${jar.temp.classes}"/> 
     355           
     356          <debugMsg message="About to build jar @{jar-file}"/> 
     357          <debugCpid idpar="compile.classpath" /> 
     358 
     359          <javac srcdir="${jar.temp.sources}" 
     360                 destdir="${jar.temp.classes}" 
     361                 debug="${compile.debug}" 
     362                 verbose="${compile.verbose}" 
     363                 listfiles="${compile.listfiles}" 
     364                 deprecation="${compile.deprecation}" 
     365                 optimize="${compile.optimize}"> 
     366            <classpath refid="compile.classpath"/> 
     367            <include name="**/*.java"/> 
     368            <compilerarg value="-nowarn" compiler="jikes" /> 
     369          </javac> 
     370 
     371          <!-- ========================================================== 
     372                            Build jar file 
     373               ========================================================== --> 
     374 
     375          <jar jarfile="@{jar-file}"> 
     376            <fileset dir="${jar.temp.classes}"> 
     377              <patternset refid="base.class.patternset"/> 
     378            </fileset> 
     379            <fileset refid="buildjar.resource.files"/> 
     380          </jar> 
     381 
     382          <!-- ========================================================== 
     383                            Clean up 
     384               ========================================================== --> 
     385 
     386          <delete dir="${jar.temp.sources}" /> 
     387          <delete dir="${jar.temp.classes}"/> 
     388        </else> 
     389      </if> 
    236390    </sequential> 
    237391  </macrodef> 
  • trunk/deployutil/build.xml

    r3105 r3120  
    33<!-- ============= deployutil classes build Targets ============ 
    44     This is the ant build file for the deployment classes for bedework. 
     5     Because this builds a number of the tasks we cannot use the full build 
     6     suite. 
    57 
    6      Authors: Mike Douglass   douglm@rpi.edu 
     8     Authors: Mike Douglass   douglm rpi.edu 
    79     =================================================================== --> 
    810 
    911<project name="bedework.deployutil" default="build"> 
     12  <property environment="env"/> 
     13  <dirname property="project.home" file="${ant.file}"/> 
     14 
     15  <property file="${project.home}/build.properties" /> 
     16 
     17  <!-- Note only one level up --> 
     18  <property name="bedework.home" 
     19            location="${project.home}/.." /> 
     20 
     21  <property name="build.dir" location="${bedework.home}/build"/> 
     22 
     23  <import file="${build.dir}/buildTools/deftasks.xml"/> 
     24 
     25  <!-- Override this one --> 
    1026  <property name="lib.dir" location="${org.bedework.default.lib}"/> 
    1127 
     28  <projectDefs name="${org.bedework.package.name}" 
     29               version="${org.bedework.webdav.version}"  
     30               subproject="true" /> 
     31 
    1232  <target name="init"> 
    13     <delete dir="${lib.dir}" /> 
    14     <mkdir dir="${lib.dir}" /> 
    15  
    16     <dirname property="this.dir" file="${ant.file}"/> 
    17     <property name="source.home" location="${this.dir}/src"/> 
    18  
    19     <!-- ==================== Compilation Classpath ==================== --> 
    20  
    21     <path id="compile.classpath"> 
    22       <fileset dir="${lib.dir}"> 
    23          <include name="*.jar"/> 
    24       </fileset> 
    25       <fileset dir="${dist.home}"> 
    26          <include name="*.jar"/> 
    27       </fileset> 
    28     </path> 
     33    <projectInit/> 
    2934  </target> 
    3035 
    31   <target name="build" depends="init" 
     36  <target name="build-source" depends="init" 
    3237          description="Compile bedework deployutil classes"> 
    33     <!-- ==================== Sources and classes ====================== --> 
    34  
    35     <fileset id="buildjar.java.sources" dir="${source.home}" > 
    36       <include name="org/bedework/*/*.java"/> 
    37     </fileset> 
    38  
    39     <patternset id="base.class.patternset"> 
    40       <include name="org/bedework/*/*.class"/> 
    41     </patternset> 
    42  
    43     <ant antfile="${buildjar}" inheritRefs="true" target="build" /> 
     38    <build-jar module-base="${project.home}"  
     39               jar-file="${org.bedework.deployutil.jar}" /> 
    4440  </target> 
    4541</project>