1 <?xml version="1.0" encoding="UTF-8"?>
3 <project name="phpMyAdmin" default="build" basedir=".">
4 <property name="source" value="."/>
5 <property name="source_comma_sep" value="."/>
7 <target name="clean" description="Clean up and create artifact directories">
8 <delete dir="${basedir}/build/api"/>
9 <delete dir="${basedir}/build/code-browser"/>
10 <delete dir="${basedir}/build/coverage"/>
11 <delete dir="${basedir}/build/logs"/>
12 <delete dir="${basedir}/build/pdepend"/>
14 <mkdir dir="${basedir}/build/api"/>
15 <mkdir dir="${basedir}/build/code-browser"/>
16 <mkdir dir="${basedir}/build/coverage"/>
17 <mkdir dir="${basedir}/build/logs"/>
18 <mkdir dir="${basedir}/build/pdepend"/>
21 <target name="phpunit" description="Run unit tests using PHPUnit and generates junit.xml and clover.xml">
22 <exec executable="phpunit">
23 <arg line="--configuration phpunit.xml.dist"/>
27 <target name="pdepend" description="Generate jdepend.xml and software metrics charts using PHP_Depend">
28 <exec executable="pdepend">
29 <arg line="--jdepend-xml=${basedir}/build/logs/jdepend.xml
30 --jdepend-chart=${basedir}/build/pdepend/dependencies.svg
31 --overview-pyramid=${basedir}/build/pdepend/overview-pyramid.svg
32 ${source_comma_sep}" />
36 <target name="phpmd" description="Generate pmd.xml using PHPMD">
37 <exec executable="phpmd">
38 <arg line="${source_comma_sep}
40 codesize,design,naming,unusedcode
41 --exclude test,build,tcpdf,php-gettext
42 --reportfile ${basedir}/build/logs/pmd.xml" />
46 <target name="phpcpd" description="Generate pmd-cpd.xml using PHPCPD">
47 <exec executable="phpcpd">
48 <arg line="--log-pmd ${basedir}/build/logs/pmd-cpd.xml
51 --exclude libraries/tcpdf
52 --exclude libraries/php-gettext
57 <target name="phploc" description="Generate phploc.csv">
58 <exec executable="phploc">
59 <arg line="--log-csv ${basedir}/build/logs/phploc.csv
62 --exclude libraries/tcpdf
63 --exclude libraries/php-gettext
68 <target name="phpcs" description="Generate checkstyle.xml using PHP_CodeSniffer excluding test, tcpdf directories">
69 <exec executable="phpcs">
71 --ignore=*/php-gettext/*,*/tcpdf/*,*/canvg/*,*/codemirror/*,*/highcharts/*,*/openlayers/*,*/jquery/*,*/build/*
73 --report-file=${basedir}/build/logs/checkstyle.xml
79 <target name="phpdoc" description="Generate API documentation using PHPDocumentor">
80 <exec executable="phpdoc">
81 <arg line="-d ${source} -t ${basedir}/build/api" />
85 <target name="phpcb" description="Aggregate tool output with PHP_CodeBrowser">
86 <exec executable="phpcb">
87 <arg line="--log ${basedir}/build/logs
89 --output ${basedir}/build/code-browser" />
93 <target name="build" depends="clean,phpunit,pdepend,phpmd,phpcpd,phpcs,phpdoc,phploc,phpcb"/>