crossley    2003/03/05 04:17:15

  Modified:    .        build.xml
  Log:
  Move validate-config stuff into their own targets.
  Allow them to be switched off via build.properties
  
  Revision  Changes    Path
  1.353     +53 -42    xml-cocoon2/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/xml-cocoon2/build.xml,v
  retrieving revision 1.352
  retrieving revision 1.353
  diff -u -r1.352 -r1.353
  --- build.xml 5 Mar 2003 08:11:21 -0000       1.352
  +++ build.xml 5 Mar 2003 12:17:15 -0000       1.353
  @@ -129,6 +129,10 @@
       <!-- A task to patch xml files -->
       <taskdef name="xpatch" classname="XConfToolTask" 
classpath="${tools.tasks.dest}"/>
   
  +    <!-- Jing is used in various targets for XML validation with RELAX NG -->
  +    <taskdef name="jing" classname="com.thaiopensource.relaxng.util.JingTask"
  +             classpathref="classpath"/>
  +
     </target>
   
   <!-- Preparation Targets =================================================== -->
  @@ -148,26 +152,6 @@
       
<echo>+-------------------------------------------------------------------------------+</echo>
   
       <mkdir dir="${build}"/>
  -
  -    <!-- Jing is used in various build targets for XML validation
  -      with RELAX NG -->
  -    <taskdef name="jing" classname="com.thaiopensource.relaxng.util.JingTask"
  -             classpathref="classpath"/>
  -
  -    <!-- Validate some important core config. Do default config files here,
  -      then do them again after the blocks have been processed. -->
  -    <jing rngfile="./src/webapp/WEB-INF/entities/any.rng">
  -      <fileset dir="./src/webapp/WEB-INF" includes="cocoon.xconf"/>
  -    </jing>
  -    <jing rngfile="./src/webapp/WEB-INF/entities/roles-v01.rng">
  -      <fileset dir="./src/java/org/apache/cocoon" includes="cocoon.roles"/>
  -    </jing>
  -<!-- FIXME: recent sitemap changes have broken validation
  -    <jing rngfile="${build.webapp}/WEB-INF/entities/sitemap-v06.rng">
  -      <fileset dir="./src/webapp" includes="sitemap.xmap"/>
  -    </jing>
  --->
  -
     </target>
   
     <!-- Prepare the build directories -->
  @@ -182,7 +166,7 @@
     <target name="compile" depends="compile-core, compile-scratchpad, 
compile-deprecated"/>
   
     <!-- compiles the core -->
  -  <target name="compile-core" depends="prepare-core">
  +  <target name="compile-core" depends="validate-core-config,prepare-core">
   
       <!-- copy those files that need to be in the classpath -->
       <copy todir="${build.dest}">
  @@ -646,25 +630,7 @@
       <xpatch directory="${deprecated.conf}" extension="xconf" 
configuration="${build.webapp}/WEB-INF/cocoon.xconf"/>
     </target>
     
  -  <target name="webapp" 
depends="prepare-webapp,prepare-webapp-samples,prepare-webapp-deprecated">
  -
  -    <!-- Validate some important core config. -->
  -    <jing rngfile="${build.webapp}/WEB-INF/entities/any.rng">
  -      <fileset dir="${build.webapp}/WEB-INF" includes="cocoon.xconf"/>
  -    </jing>
  -<!-- FIXME: precept.xroles has a new un-defined attribute "default-hint"
  -     which is breaking validation.
  -    <jing rngfile="${build.webapp}/WEB-INF/entities/roles-v01.rng">
  -      <fileset dir="${build}/classes/org/apache/cocoon"
  -               includes="cocoon.roles"/>
  -    </jing>
  --->
  -<!-- FIXME: recent sitemap changes have broken validation
  -    <jing rngfile="${build.webapp}/WEB-INF/entities/sitemap-v06.rng">
  -      <fileset dir="${build.webapp}" includes="sitemap.xmap"/>
  -    </jing>
  --->
  -  </target>
  +  <target name="webapp" 
depends="prepare-webapp,prepare-webapp-samples,prepare-webapp-deprecated,validate-config"/>
   
     <target name="war" depends="webapp">
       <!-- A task to create manifest for webapp. -->
  @@ -711,6 +677,51 @@
       </xslt>
     </target>
   
  +  <!-- Validate some important default core configuration files. Process the
  +       default config files here, then do them again later in validate-config
  +       after the blocks have been processed and fragments added.
  +  -->
  +  <target name="validate-core-config" depends="prepare"
  +          description="Validation of default core configuration files using RELAX 
NG"
  +          if="validate.config">
  +    <echo message="Conducting validation of default core configuration files."/>
  +    <echo message="(You can turn validation off if you must - comment out the 
validate.config property in build.properties)"/>
  +    <jing rngfile="./src/webapp/WEB-INF/entities/any.rng">
  +      <fileset dir="./src/webapp/WEB-INF" includes="cocoon.xconf"/>
  +    </jing>
  +    <jing rngfile="./src/webapp/WEB-INF/entities/roles-v01.rng">
  +      <fileset dir="./src/java/org/apache/cocoon" includes="cocoon.roles"/>
  +    </jing>
  +<!-- FIXME: recent sitemap changes have broken validation
  +    <jing rngfile="${build.webapp}/WEB-INF/entities/sitemap-v06.rng">
  +      <fileset dir="./src/webapp" includes="sitemap.xmap"/>
  +    </jing>
  +-->
  +  </target>
  +
  +  <!-- Validate some important final configuration files. At this stage
  +       the fragments from blocks have been added to the default core config.
  +  -->
  +  <target name="validate-config" if="validate.config">
  +    <echo message="Conducting validation of final configuration files."/>
  +    <echo message="(You can turn validation off if you must - comment out the 
validate.config property in build.properties)"/>
  +    <jing rngfile="${build.webapp}/WEB-INF/entities/any.rng">
  +      <fileset dir="${build.webapp}/WEB-INF" includes="cocoon.xconf"/>
  +    </jing>
  +<!-- FIXME: precept.xroles has a new un-defined attribute "default-hint"
  +     which is breaking validation.
  +    <jing rngfile="${build.webapp}/WEB-INF/entities/roles-v01.rng">
  +      <fileset dir="${build}/classes/org/apache/cocoon"
  +               includes="cocoon.roles"/>
  +    </jing>
  +-->
  +<!-- FIXME: recent sitemap changes have broken validation
  +    <jing rngfile="${build.webapp}/WEB-INF/entities/sitemap-v06.rng">
  +      <fileset dir="${build.webapp}" includes="sitemap.xmap"/>
  +    </jing>
  +-->
  +  </target>
  +
     <!-- Validation of xdocs  -->
     <!-- This only does documentation/xdocs/**.xml and does not attempt to do
          webapps, blocks, java, etc. because most of their xdocs do not bother
  @@ -720,7 +731,7 @@
             depends="prepare-docs"
             if="validate.xdocs">
       <echo message="Conducting validation of core XML documentation."/>
  -    <echo message="(You can turn validation off if you must, commenting out the 
validate.xdocs property)"/>
  +    <echo message="(You can turn validation off if you must - comment out the 
validate.xdocs property in build.properties)"/>
   
       <echo message="Validating all **/book.xml instances using RELAX NG ..."/>
       <jing rngfile="${webapp}/WEB-INF/entities/book-v01.rng">
  
  
  

Reply via email to