| <?xml version="1.0"?> |
| <!-- |
| Copyright (c) 2017, 2018 Eike Stepper (Loehne, Germany) and others. |
| All rights reserved. This program and the accompanying materials |
| are made available under the terms of the Eclipse Public License v1.0 |
| which accompanies this distribution, and is available at |
| http://www.eclipse.org/legal/epl-v10.html |
| |
| Contributors: |
| Eike Stepper - initial API and implementation |
| --> |
| <project name="generate" default="generate"> |
| |
| <condition property="skip.tests.condition"> |
| <equals arg1="${skip.tests}" arg2="true"/> |
| </condition> |
| |
| <!-- ==== --> |
| <!-- Init --> |
| <!-- ==== --> |
| |
| <target name="init"> |
| <property environment="env" /> |
| <property name="build.root" value="${env.WORKSPACE}" /> |
| <property name="git.clone" location="${build.root}/git" /> |
| <property name="releng.dir" location="${git.clone}/releng" /> |
| <property name="releng" location="${releng.dir}/org.eclipse.emf.cdo.releng" /> |
| <property name="releng.site" location="${releng.dir}/org.eclipse.emf.cdo.releng.site" /> |
| |
| <property file="ant.properties" /> |
| <property file="${build.root}/build-info.properties" /> |
| </target> |
| |
| <!-- ===== --> |
| <!-- Clean --> |
| <!-- ===== --> |
| |
| <target name="clean" depends="init"> |
| <delete failonerror="false" includeemptydirs="true"> |
| <fileset dir="${build.root}" defaultexcludes="false"> |
| <include name="features/**" /> |
| <include name="plugins/**" /> |
| <include name="binary/**" /> |
| <include name="zips/**" /> |
| <include name="tests/**" /> |
| <include name="help/**" /> |
| <include name="*.jar" /> |
| <include name="*.css" /> |
| <include name="*.html" /> |
| <include name="*.index" /> |
| <include name="*.xml" /> |
| <include name="*.xz" /> |
| <include name="*.log" /> |
| <include name="*.txt" /> |
| <include name="signing.marker" /> |
| <exclude name="build-info.properties" /> |
| <exclude name="build-info.xml" /> |
| </fileset> |
| </delete> |
| |
| <!-- |
| <echoxml file="${test.report}"> |
| <testsuite name="CDO AllTests" tests="1" errors="0" failures="0" ignored="0"> |
| <testcase name="noTestHasBeenExecuted" classname="org.eclipse.emf.cdo.tests.NoTest" time="0.00"/> |
| </testsuite> |
| </echoxml> |
| --> |
| </target> |
| |
| <!-- ============= --> |
| <!-- Generate Site --> |
| <!-- ============= --> |
| |
| <target name="generate-site" depends="clean"> |
| <!-- Copy site contents --> |
| <copy todir="${build.root}" overwrite="true" includeemptydirs="true" preservelastmodified="true" failonerror="true"> |
| <fileset dir="${releng.site}/target/repository"> |
| <include name="**" /> |
| </fileset> |
| <fileset dir="${releng}/hudson"> |
| <include name="p2.index" /> |
| </fileset> |
| </copy> |
| |
| <!-- Adjust content.jar --> |
| <unzip src="${build.root}/content.jar" dest="${build.root}" /> |
| <delete file="${build.root}/content.jar" /> |
| <replaceregexp file="${build.root}/content.xml" match="Build Local" replace="${build.qualifier}" /> |
| <zip destfile="${build.root}/content.jar" basedir="${build.root}" includes="content.xml" /> |
| <xslt style="xsl/content2html.xsl" in="${build.root}/content.xml" out="${build.root}/index.html" /> |
| <xslt style="xsl/content2xml.xsl" in="${build.root}/content.xml" out="${build.root}/index.xml" /> |
| <delete file="${build.root}/content.xml" /> |
| |
| <!-- Adjust artifacts.jar --> |
| <unzip src="${build.root}/artifacts.jar" dest="${build.root}" /> |
| <delete file="${build.root}/artifacts.jar" /> |
| <replaceregexp file="${build.root}/artifacts.xml" match="Build Local" replace="${build.qualifier}" /> |
| <zip destfile="${build.root}/artifacts.jar" basedir="${build.root}" includes="artifacts.xml" /> |
| <delete file="${build.root}/artifacts.xml" /> |
| </target> |
| |
| <!-- ============= --> |
| <!-- Generate Help --> |
| <!-- ============= --> |
| |
| <target name="generate-help" depends="clean"> |
| <property name="releng.help" location="${releng.dir}/org.eclipse.emf.cdo.releng.help" /> |
| <mkdir dir="${build.root}/help" /> |
| <copy todir="${build.root}/help"> |
| <fileset dir="${releng.help}/html"> |
| <include name="**" /> |
| </fileset> |
| <fileset dir="${releng.help}"> |
| <include name="docs.txt" /> |
| </fileset> |
| </copy> |
| </target> |
| |
| <!-- =================== --> |
| <!-- Generate Booksmarks --> |
| <!-- =================== --> |
| |
| <target name="generate-bookmarks" depends="clean"> |
| <property name="bookmarks.tmp" location="${build.root}/bookmarks.tmp" /> |
| <xslt |
| style="xsl/target2bookmarks.xsl" |
| in="${releng.dir}/org.eclipse.emf.cdo.releng.parent/tp/org.eclipse.emf.cdo.releng.tp.target" |
| out="${bookmarks.tmp}" /> |
| |
| <property name="bookmarks.xml" location="${build.root}/bookmarks.xml" /> |
| <concat destfile="${bookmarks.xml}"> |
| <header filtering="false"><?xml version="1.0" encoding="UTF-8"?> |
| <bookmarks> |
| </header> |
| <union> |
| <sort> |
| <tokens> |
| <file file="${bookmarks.tmp}" /> |
| <linetokenizer includedelims="true" /> |
| </tokens> |
| </sort> |
| </union> |
| <filterchain> |
| <linecontains> |
| <contains value="http://" /> |
| </linecontains> |
| </filterchain> |
| <footer filtering="false"></bookmarks> |
| </footer> |
| </concat> |
| <delete file="${bookmarks.tmp}" /> |
| </target> |
| |
| <!-- ================ --> |
| <!-- Generate Dropins --> |
| <!-- ================ --> |
| |
| <target name="generate-dropins" depends="clean"> |
| <property name="zips" location="${build.root}/zips" /> |
| <mkdir dir="${zips}" /> |
| <zip destfile="${zips}/emf-cdo-${build.qualifier}-Dropins.zip"> |
| <fileset dir="${releng.site}/target/repository"> |
| <exclude name="**/*.pack.gz" /> |
| <include name="features/*.jar" /> |
| <include name="plugins/*.jar" /> |
| </fileset> |
| </zip> |
| <echo message=" for use with a <a href="http://help.eclipse.org/oxygen/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/misc/p2_dropins_format.html">dropins</a> folder." |
| file="${zips}/emf-cdo-${build.qualifier}-Dropins.properties" /> |
| </target> |
| |
| <!-- ==================== --> |
| <!-- Generate API Reports --> |
| <!-- ==================== --> |
| |
| <target name="generate-apireports" depends="clean"> |
| <copy file="${releng}/api/api.xml" todir="${build.root}" overwrite="true" /> |
| <copy file="${releng}/api/api.css" todir="${build.root}" overwrite="true" /> |
| <java classname="org.eclipse.emf.cdo.releng.Api2Html"> |
| <classpath> |
| <pathelement location="${releng}/target/classes/" /> |
| <pathelement location="/opt/public/common/apache-ant-1.7.1/lib/xercesImpl.jar" /> |
| </classpath> |
| <arg value="${build.root}" /> |
| <arg value="${build.qualifier}" /> |
| </java> |
| </target> |
| |
| <!-- ==================== --> |
| <!-- Generate Test Reports --> |
| <!-- ==================== --> |
| |
| <target name="generate-testreports" depends="clean" unless="skip.tests.condition"> |
| <property name="tests" location="${build.root}/tests" /> |
| <mkdir dir="${tests}" /> |
| <copy todir="${tests}/tmp" flatten="true"> |
| <fileset dir="${build.root}"> |
| <include name="**/target/surefire-reports/TEST-*.xml" /> |
| </fileset> |
| </copy> |
| <java classname="org.eclipse.emf.cdo.releng.FixTestReportNesting"> |
| <classpath> |
| <pathelement location="${releng}/target/classes/" /> |
| </classpath> |
| <arg value="${tests}/tmp" /> |
| </java> |
| <junitreport todir="${tests}"> |
| <fileset dir="${tests}/tmp/singles"> |
| <include name="TEST-*.xml" /> |
| </fileset> |
| <report format="frames" todir="${tests}"> |
| <param name="TITLE" expression="CDO ${build.qualifier} Test Results" /> |
| </report> |
| </junitreport> |
| <delete includeemptydirs="true"> |
| <fileset dir="${tests}"> |
| <include name="tmp/**" /> |
| </fileset> |
| </delete> |
| <replace dir="${tests}" includes="**/package-summary.html" token="<h3>Package " value="<h3>Scenario " /> |
| <replace dir="${tests}" includes="overview-*.html" token="<h2>Packages</h2>" value="<h2>Scenarios</h2>" /> |
| <move file="${tests}/TESTS-TestSuites.xml" tofile="${tests}/test-report.xml" /> |
| </target> |
| |
| <!-- ======== --> |
| <!-- Generate --> |
| <!-- ======== --> |
| |
| <target name="generate" depends="generate-site,generate-help,generate-bookmarks,generate-dropins,generate-apireports,generate-testreports" /> |
| |
| </project> |