| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| /******************************************************************************* |
| * Copyright (c) 2010 Intalio Inc. 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: |
| * David Carver (Intalio) - initial API and implementation |
| *******************************************************************************/ |
| --> |
| <project name="Build Utilities"> |
| |
| <property name="baseDir" location="/Volumes/Resources/Developer/builds" /> |
| <property name="testPlugins" location="${baseDir}/escape/macosx.cocoa.x86_64/eclipse/plugins" /> |
| |
| <property name="downloadDir" location="${basedir}/downloads" /> |
| <property name="libs" location="${basedir}/lib" /> |
| <available file="${downloadDir}/findbugs.zip" property="findBugsAvailable" /> |
| <available file="${downloadDir}/pmd.zip" property="pmdAvailable" /> |
| |
| <target name="init"> |
| <mkdir dir="${downloadDir}" /> |
| </target> |
| |
| <target name="findbugs.init" depends="init" unless="findBugsAvailable"> |
| <get src="http://downloads.sourceforge.net/project/findbugs/findbugs/1.3.9/findbugs-1.3.9.zip" dest="${downloadDir}/findbugs.zip" /> |
| <unzip src="${downloadDir}/findbugs.zip" dest="${libs}" /> |
| </target> |
| |
| <target name="findbugs" depends="findbugs.init" description="Run FindBugs against eclipse jars."> |
| <taskdef name="findbugs" classname="edu.umd.cs.findbugs.anttask.FindBugsTask"> |
| <classpath> |
| <path> |
| <fileset dir="${libs}/findbugs-1.3.9/lib" includes="*.jar" /> |
| </path> |
| </classpath> |
| </taskdef> |
| |
| <mkdir dir="findbugs" /> |
| <copy todir="findbugs"> |
| <fileset dir="${testPlugins}"> |
| <include name="*.jar" /> |
| </fileset> |
| </copy> |
| |
| <findbugs home="${libs}/findbugs-1.3.9/lib" output="xml" outputFile="${basedir}/fb.xml"> |
| <class location="findbugs" /> |
| </findbugs> |
| |
| <delete dir="findbugs" failonerror="false" /> |
| |
| </target> |
| |
| <target name="pmd.init" depends="init" unless="pmdAvailable"> |
| <get src="http://downloads.sourceforge.net/project/pmd/pmd/4.2.5/pmd-bin-4.2.5.zip" dest="${downloadDir}/pmd.zip" usetimestamp="true" /> |
| <unzip src="${downloadDir}/pmd.zip" dest="${libs}" /> |
| </target> |
| |
| <target name="dry" depends="pmd.init" description="Run Duplicate Code Detector against eclipse source code"> |
| <taskdef name="cpd" classname="net.sourceforge.pmd.cpd.CPDTask"> |
| <classpath> |
| <path> |
| <fileset dir="${libs}/pmd-4.2.5/lib" includes="*.jar" /> |
| </path> |
| </classpath> |
| </taskdef> |
| <cpd minimumTokenCount="100" format="xml" outputFile="dry-report.xml"> |
| <fileset dir=".."> |
| <include name="**/org.eclipse.*/**/*.java" /> |
| </fileset> |
| </cpd> |
| </target> |
| |
| <target name="pmd" depends="pmd.init" description="Run PMD Static Code Analysis against eclipse source code"> |
| <path id="pmd.path"> |
| <fileset dir="${libs}/pmd-4.2.5/lib"> |
| <include name="*.jar" /> |
| </fileset> |
| </path> |
| <taskdef name="pmd" classname="net.sourceforge.pmd.ant.PMDTask" classpathref="pmd.path"/> |
| <pmd failonerror="true" encoding="utf-8"> |
| <ruleset>basic</ruleset> |
| <ruleset>braces</ruleset> |
| <ruleset>clone</ruleset> |
| <ruleset>finalizers</ruleset> |
| <ruleset>imports</ruleset> |
| <ruleset>migrating</ruleset> |
| <ruleset>strings</ruleset> |
| <ruleset>codesize</ruleset> |
| <ruleset>unusedcode</ruleset> |
| <formatter type="xml" toFile="pmd-report.xml" /> |
| <fileset dir=".."> |
| <include name="**/*.java" /> |
| </fileset> |
| </pmd> |
| </target> |
| |
| </project> |