134 lines
4.8 KiB
XML
134 lines
4.8 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<project name="phpMyAdmin" default="build" basedir=".">
|
|
<property name="source" value="."/>
|
|
<property name="source_comma_sep" value="."/>
|
|
|
|
<target name="clean" description="Clean up and create artifact directories">
|
|
<delete dir="${basedir}/build/api"/>
|
|
<delete dir="${basedir}/build/code-browser"/>
|
|
<delete dir="${basedir}/build/coverage"/>
|
|
<delete dir="${basedir}/build/logs"/>
|
|
<delete dir="${basedir}/build/pdepend"/>
|
|
|
|
<mkdir dir="${basedir}/build/api"/>
|
|
<mkdir dir="${basedir}/build/code-browser"/>
|
|
<mkdir dir="${basedir}/build/coverage"/>
|
|
<mkdir dir="${basedir}/build/logs"/>
|
|
<mkdir dir="${basedir}/build/pdepend"/>
|
|
</target>
|
|
|
|
<target name="phpunit" description="Run unit tests using PHPUnit and generates junit.xml and clover.xml">
|
|
<exec executable="phpunit" failonerror="true">
|
|
<arg line="--configuration phpunit.xml.dist"/>
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="phpunit-nocoverage" description="Run unit tests using PHPUnit and generates junit.xml">
|
|
<exec executable="phpunit" failonerror="true">
|
|
<arg line="--configuration phpunit.xml.nocoverage"/>
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="pdepend" description="Generate jdepend.xml and software metrics charts using PHP_Depend">
|
|
<exec executable="pdepend">
|
|
<arg line="'--jdepend-xml=${basedir}/build/logs/jdepend.xml'
|
|
'--jdepend-chart=${basedir}/build/pdepend/dependencies.svg'
|
|
'--overview-pyramid=${basedir}/build/pdepend/overview-pyramid.svg'
|
|
${source_comma_sep}" />
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="phpmd" description="Generate pmd.xml using PHPMD">
|
|
<exec executable="phpmd">
|
|
<arg line="${source_comma_sep}
|
|
xml
|
|
codesize,design,naming,unusedcode
|
|
--exclude test,build,tcpdf,php-gettext,bfShapeFiles,PMAStandard,phpseclib,recaptchalib.php,swekey.php
|
|
--reportfile '${basedir}/build/logs/pmd.xml'" />
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="phpcpd" description="Generate pmd-cpd.xml using PHPCPD">
|
|
<exec executable="phpcpd">
|
|
<arg line="--log-pmd '${basedir}/build/logs/pmd-cpd.xml'
|
|
--exclude test
|
|
--exclude PMAStandard
|
|
--exclude build
|
|
--exclude libraries/tcpdf
|
|
--exclude libraries/php-gettext
|
|
--exclude libraries/bfShapeFiles
|
|
--exclude libraries/phpseclib
|
|
--exclude libraries/plugins/auth/recaptchalib.php
|
|
--exclude libraries/plugins/auth/swekey/swekey.php
|
|
${source}" />
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="phploc" description="Generate phploc.csv">
|
|
<exec executable="phploc">
|
|
<arg line="--log-csv '${basedir}/build/logs/phploc.csv'
|
|
--exclude test
|
|
--exclude PMAStandard
|
|
--exclude build
|
|
--exclude libraries/tcpdf
|
|
--exclude libraries/php-gettext
|
|
--exclude libraries/bfShapeFiles
|
|
--exclude libraries/phpseclib
|
|
--exclude libraries/plugins/auth/recaptchalib.php
|
|
--exclude libraries/plugins/auth/swekey/swekey.php
|
|
${source}" />
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="phpcs" description="Generate checkstyle.xml using PHP_CodeSniffer excluding test, tcpdf directories">
|
|
<exec executable="phpcs">
|
|
<arg line="
|
|
--ignore=*/php-gettext/*,*/tcpdf/*,*/canvg/*,*/codemirror/*,*/openlayers/*,*/jquery/*,*/jqplot/*,*/build/*,*/bfShapeFiles/*,*/PMAStandard/*,*/phpseclib/*,*/recaptchalib.php,*/swekey.php
|
|
--report=checkstyle
|
|
--extensions=php
|
|
--report-file='${basedir}/build/logs/checkstyle.xml'
|
|
--standard=PMAStandard
|
|
${source}" />
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="phpdoc" description="Generate API documentation using PHPDocumentor">
|
|
<exec executable="phpdoc">
|
|
<arg line="-d ${source} -t '${basedir}/build/api'" />
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="phpcb" description="Aggregate tool output with PHP_CodeBrowser">
|
|
<exec executable="phpcb">
|
|
<arg line="--log '${basedir}/build/logs'
|
|
--source '${source}'
|
|
--output '${basedir}/build/code-browser'" />
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="jshint" description="Javascript checks">
|
|
<apply executable="jshint" output="${basedir}/build/logs/jslint.xml" parallel="true">
|
|
<arg line="--config ./.jshintrc --jslint-reporter" />
|
|
<fileset dir="${basedir}">
|
|
<include name="js/pmd/*.js" />
|
|
<include name="js/*.js" />
|
|
<include name="setup/*.js" />
|
|
</fileset>
|
|
</apply>
|
|
</target>
|
|
|
|
<target name="lint" description="Perform syntax check of sourcecode files">
|
|
<apply executable="php" failonerror="true">
|
|
<arg value="-l" />
|
|
|
|
<fileset dir="${basedir}">
|
|
<include name="**/*.php" />
|
|
<modified />
|
|
</fileset>
|
|
</apply>
|
|
</target>
|
|
|
|
<target name="build" depends="clean,phpunit,pdepend,phpmd,phpcpd,phpcs,phpdoc,phploc,phpcb,lint,jshint"/>
|
|
</project>
|