| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Copyright 2005 The Apache Software Foundation |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| <project default="help" |
| xmlns:j="jelly:core" |
| xmlns:ant="jelly:ant" |
| xmlns:maven="jelly:maven" |
| xmlns:u="jelly:util" |
| > |
| |
| <!-- ==================== --> |
| <!-- Default Global Goals --> |
| <!-- ==================== --> |
| |
| <goal name="help"> |
| <echo>Custom goals for this project are:</echo> |
| <echo> jdo11.build - builds all JDO1 projects</echo> |
| <echo> jdo11.default - calls the default goal for all JDO1 projects</echo> |
| <echo> jdo11.clean - cleans all JDO1 projects</echo> |
| <echo> jdo20.build - builds all JDO2 projects</echo> |
| <echo> jdo20.default - calls the default goal for all JDO2 projects</echo> |
| <echo> jdo20.clean - cleans all JDO2 projects</echo> |
| <echo> tck20.build - builds tck20 and dependent JDO2 projects</echo> |
| <echo> tck20.default - calls the default goal for tck20 and dependent JDO2 projects</echo> |
| <echo> tck20.clean - cleans tck20 and dependent JDO2 projects</echo> |
| <echo> tck20.dist - creates distributions of tck20 and dependent JDO2 projects</echo> |
| <echo> fostore20.clean - cleans fostore20 and dependencies</echo> |
| <echo> fostore20.build - builds fostore20 and dependencies</echo> |
| <echo> fostore20.default - calls the default goal for fostore20 and dependencies</echo> |
| <echo>Please check README.txt for more details.</echo> |
| </goal> |
| |
| <!-- ========== --> |
| <!-- JDO1 Goals --> |
| <!-- ========== --> |
| |
| <goal name="jdo11.build" |
| description="Builds all JDO1 projects"> |
| <j:set var="maven.multiproject.includes">${jdo11.projects}</j:set> |
| <j:set var="goal">build</j:set> |
| <attainGoal name="multiproject:goal"/> |
| </goal> |
| |
| <goal name="jdo11.default" |
| description="Calls the default goal for all JDO1 projects"> |
| <j:set var="maven.multiproject.includes">${jdo11.projects}</j:set> |
| <j:set var="goal">default</j:set> |
| <attainGoal name="multiproject:goal"/> |
| </goal> |
| |
| <goal name="jdo11.clean" |
| description="Cleans all JDO1 projects"> |
| <j:set var="maven.multiproject.includes">${jdo11.projects}</j:set> |
| <attainGoal name="multiproject:clean"/> |
| </goal> |
| |
| <!-- ========== --> |
| <!-- JDO2 Goals --> |
| <!-- ========== --> |
| |
| <goal name="jdo20.build" |
| description="Builds all JDO2 projects"> |
| <j:set var="maven.multiproject.includes">${jdo20.projects}</j:set> |
| <j:set var="goal">build</j:set> |
| <attainGoal name="multiproject:goal"/> |
| </goal> |
| |
| <goal name="jdo20.default" |
| description="Calls the default goal for all JDO2 projects"> |
| <j:set var="maven.multiproject.includes">${jdo20.projects}</j:set> |
| <j:set var="goal">default</j:set> |
| <attainGoal name="multiproject:goal"/> |
| </goal> |
| |
| <goal name="jdo20.clean" |
| description="Cleans all JDO2 projects"> |
| <j:set var="maven.multiproject.includes">${jdo20.projects}</j:set> |
| <attainGoal name="multiproject:clean"/> |
| </goal> |
| |
| <goal name="tck20.build" |
| description="Builds tck20 and dependent JDO2 projects"> |
| <j:set var="maven.multiproject.includes">${tck20.projects}</j:set> |
| <j:set var="goal">build</j:set> |
| <attainGoal name="multiproject:goal"/> |
| </goal> |
| |
| <goal name="tck20.default" |
| description="Calls the default goal for tck20 and dependent JDO2 projects"> |
| <j:set var="maven.multiproject.includes">${tck20.projects}</j:set> |
| <j:set var="goal">default</j:set> |
| <attainGoal name="multiproject:goal"/> |
| </goal> |
| |
| <goal name="tck20.clean" |
| description="Cleans tck20 and dependent JDO2 projects"> |
| <j:set var="maven.multiproject.includes">${tck20.projects}</j:set> |
| <attainGoal name="multiproject:clean"/> |
| </goal> |
| |
| <goal name="tck20.dist" |
| description="Creates distributions of tck20 and dependent JDO2 projects"> |
| <j:set var="maven.multiproject.includes">${tck20.projects}</j:set> |
| <j:set var="goal">dist</j:set> |
| <attainGoal name="multiproject:goal"/> |
| </goal> |
| |
| <goal name="fostore20.build" |
| description="Builds fostore20 and dependencies"> |
| <j:set var="maven.multiproject.includes">${fostore20.projects}</j:set> |
| <j:set var="goal">build</j:set> |
| <attainGoal name="multiproject:goal"/> |
| </goal> |
| |
| <goal name="fostore20.default" |
| description="Calls the default goal for fostore20 and dependencies"> |
| <j:set var="maven.multiproject.includes">${fostore20.projects}</j:set> |
| <j:set var="goal">default</j:set> |
| <attainGoal name="multiproject:goal"/> |
| </goal> |
| |
| <goal name="fostore20.clean" |
| description="Cleans fostore20 and dependencies"> |
| <j:set var="maven.multiproject.includes">${fostore20.projects}</j:set> |
| <attainGoal name="multiproject:clean"/> |
| </goal> |
| |
| |
| <!-- ==== --> |
| <!-- Misc --> |
| <!-- ==== --> |
| |
| <goal name="multiproject:clean"> |
| <attainGoal name="multiproject:projects-init"/> |
| <maven:reactor |
| basedir="${maven.multiproject.basedir}" |
| banner="Gathering project list" |
| includes="${maven.multiproject.includes}" |
| excludes="${maven.multiproject.excludes}" |
| postProcessing="true" |
| ignoreFailures="${maven.multiproject.ignoreFailures}" |
| collectionVar="reactorProjects" |
| collectOnly="true" /> |
| <j:forEach var="reactorProject" items="${reactorProjects}"> |
| <j:set var="_clean_dir">${reactorProject.context.getVariable("maven.build.dest")}</j:set> |
| <ant:delete dir="${_clean_dir}" failonerror="false" /> |
| <j:set var="_clean_dir">${reactorProject.context.getVariable("maven.build.dir")}</j:set> |
| <ant:delete dir="${_clean_dir}" failonerror="false" /> |
| <j:set var="_basedir">${reactorProject.context.getVariable("basedir")}</j:set> |
| <ant:delete file="${_basedir}/velocity.log" quiet="true" failonerror="false" /> |
| <ant:delete file="${_basedir}/velocity.log.1" quiet="true" failonerror="false" /> |
| <ant:delete file="${_basedir}/jcoverage.ser" quiet="true" failonerror="false" /> |
| </j:forEach> |
| </goal> |
| |
| <!-- ==================== --> |
| <!-- Distribution support --> |
| <!-- ==================== --> |
| |
| <preGoal name="dist:build-src"> |
| <echo>Copying top-level project.xml, project.properties, and README.txt to ${maven.dist.src.archive.dir}</echo> |
| <copy toDir="${maven.dist.src.archive.dir}"> |
| <fileset dir="${basedir}/.."> |
| <include name="project.properties"/> |
| <include name="project.xml"/> |
| <include name="README.txt"/> |
| </fileset> |
| </copy> |
| <echo>Creating ${maven.dist.src.archive.dir}/lib/ext</echo> |
| <mkdir dir="${maven.dist.src.archive.dir}/lib/ext"/> |
| </preGoal> |
| |
| <postGoal name="dist"> |
| <attainGoal name="copy-release-artifacts"/> |
| </postGoal> |
| |
| <goal name="copy-release-artifacts"> |
| <attainGoal name="copy-distribution"/> |
| <attainGoal name="copy-dependency-artifacts"/> |
| </goal> |
| |
| <goal name="copy-dependency-artifacts"> |
| <mkdir dir="${jdo.releases.dist.dir}/java-repository/${pom.groupId}/jars"/> |
| <mkdir dir="${jdo.releases.dist.dir}/java-repository/${pom.groupId}/poms"/> |
| |
| <!-- Copy the artifacts for the remote repository --> |
| <copy file="${maven.build.dir}/${maven.final.name}.jar" |
| todir="${jdo.releases.dist.dir}/java-repository/${pom.groupId}/jars"/> |
| <copy file="project.xml" |
| toFile="${jdo.releases.dist.dir}/java-repository/${pom.groupId}/poms/${maven.final.name}.pom" /> |
| </goal> |
| |
| <goal name="copy-distribution"> |
| <mkdir dir="${jdo.releases.dist.dir}/db/jdo/${pom.currentVersion}"/> |
| <!-- Copy distributions --> |
| <copy todir="${jdo.releases.dist.dir}/db/jdo/${pom.currentVersion}"> |
| <fileset dir="${maven.build.dir}/distributions"/> |
| </copy> |
| </goal> |
| |
| </project> |