forked from phoedos/pmd
Move velocity into own sub-module
This commit is contained in:
178
pmd-vm/pom.xml
Normal file
178
pmd-vm/pom.xml
Normal file
@ -0,0 +1,178 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<artifactId>pmd-vm</artifactId>
|
||||
<name>PMD Velocity</name>
|
||||
|
||||
<parent>
|
||||
<groupId>net.sourceforge.pmd</groupId>
|
||||
<artifactId>pmd-aggregate</artifactId>
|
||||
<version>5.1.4-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-resources-plugin</artifactId>
|
||||
<configuration>
|
||||
<useDefaultDelimiters>false</useDefaultDelimiters>
|
||||
<delimiters>
|
||||
<delimiter>${*}</delimiter>
|
||||
</delimiters>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<inherited>true</inherited>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>generate-sources</id>
|
||||
<phase>generate-sources</phase>
|
||||
<configuration>
|
||||
<target>
|
||||
<ant antfile="src/main/ant/alljavacc.xml">
|
||||
<property name="target" value="${project.build.directory}/generated-sources/javacc" />
|
||||
<property name="javacc.jar" value="${settings.localRepository}/net/java/dev/javacc/javacc/${javacc.version}/javacc-${javacc.version}.jar" />
|
||||
</ant>
|
||||
</target>
|
||||
</configuration>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>add-javacc-generated-sources</id>
|
||||
<goals>
|
||||
<goal>add-source</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<sources>
|
||||
<source>${project.build.directory}/generated-sources/javacc</source>
|
||||
</sources>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<!-- As Clover can be quite an hassle, know that you can skip
|
||||
it by using the following option when running mvn: $ mvn clean -Dmaven.clover.skip=true
|
||||
site -->
|
||||
<plugin>
|
||||
<groupId>com.atlassian.maven.plugins</groupId>
|
||||
<artifactId>maven-clover2-plugin</artifactId>
|
||||
<configuration>
|
||||
<jdk>${java.version}</jdk>
|
||||
<licenseLocation>${basedir}/../pmd/licences/clover2.license</licenseLocation>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>pre-site</phase>
|
||||
<goals>
|
||||
<goal>instrument</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>net.sourceforge.pmd</groupId>
|
||||
<artifactId>pmd</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.sourceforge.pmd</groupId>
|
||||
<artifactId>pmd-test</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.ant</groupId>
|
||||
<artifactId>ant</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.ant</groupId>
|
||||
<artifactId>ant-testutil</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>jaxen</groupId>
|
||||
<artifactId>jaxen</artifactId>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<artifactId>xercesImpl</artifactId>
|
||||
<groupId>xerces</groupId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<artifactId>xalan</artifactId>
|
||||
<groupId>xalan</groupId>
|
||||
</exclusion>
|
||||
<exclusion>
|
||||
<artifactId>icu4j</artifactId>
|
||||
<groupId>com.ibm.icu</groupId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.beust</groupId>
|
||||
<artifactId>jcommander</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.ow2.asm</groupId>
|
||||
<artifactId>asm</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.sourceforge.saxon</groupId>
|
||||
<artifactId>saxon</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.sourceforge.saxon</groupId>
|
||||
<artifactId>saxon</artifactId>
|
||||
<classifier>dom</classifier>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>xerces</groupId>
|
||||
<artifactId>xercesImpl</artifactId>
|
||||
<type>jar</type>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.java.dev.javacc</groupId>
|
||||
<artifactId>javacc</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-io</groupId>
|
||||
<artifactId>commons-io</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mockito</groupId>
|
||||
<artifactId>mockito-all</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-lang3</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
77
pmd-vm/src/main/ant/alljavacc.xml
Normal file
77
pmd-vm/src/main/ant/alljavacc.xml
Normal file
@ -0,0 +1,77 @@
|
||||
<project name="pmd" default="alljavacc" basedir="../../">
|
||||
|
||||
<property name="javacc-home.path" value="target/lib" />
|
||||
|
||||
<target name="alljavacc"
|
||||
description="Generates all JavaCC aspects within PMD"
|
||||
depends="checkUpToDate,init,vmjjtree,cleanup" />
|
||||
|
||||
<target name="checkUpToDate">
|
||||
<uptodate property="javaccBuildNotRequired" targetfile="${target}/last-generated-timestamp">
|
||||
<srcfiles dir="etc/grammar" includes="*.jj*"/>
|
||||
</uptodate>
|
||||
<echo message="up to date check: javaccBuildNotRequired=${javaccBuildNotRequired}"/>
|
||||
</target>
|
||||
|
||||
<target name="init" unless="javaccBuildNotRequired">
|
||||
<mkdir dir="${javacc-home.path}" />
|
||||
<copy file="${javacc.jar}" tofile="${javacc-home.path}/javacc.jar" />
|
||||
|
||||
<mkdir dir="${target}"/>
|
||||
<touch file="${target}/last-generated-timestamp"/>
|
||||
</target>
|
||||
|
||||
<target name="cleanup">
|
||||
<delete dir="${javacc-home.path}" />
|
||||
</target>
|
||||
|
||||
<target name="vmjjtree" description="Generates the VM parser and AST source files" unless="javaccBuildNotRequired">
|
||||
<delete dir="${target}/net/sourceforge/pmd/lang/vm/ast/" />
|
||||
<mkdir dir="${target}/net/sourceforge/pmd/lang/vm/ast/" />
|
||||
<jjtree target="etc/grammar/VmParser.jjt"
|
||||
outputdirectory="${target}/net/sourceforge/pmd/lang/vm/ast/"
|
||||
javacchome="${javacc-home.path}" />
|
||||
<!-- Ensure generated using CharStream interface -->
|
||||
<javacc static="false"
|
||||
usercharstream="true"
|
||||
unicodeinput="true"
|
||||
javaunicodeescape="false"
|
||||
target="${target}/net/sourceforge/pmd/lang/vm/ast/VmParser.jj"
|
||||
outputdirectory="${target}/net/sourceforge/pmd/lang/vm/ast"
|
||||
javacchome="${javacc-home.path}" />
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/Node.java" />
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/SimpleNode.java" />
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/CharStream.java" />
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/TokenMgrError.java" />
|
||||
|
||||
<replace file="${target}/net/sourceforge/pmd/lang/vm/ast/VmParserTokenManager.java"
|
||||
token="class VmParserTokenManager"
|
||||
value="class VmParserTokenManager extends net.sourceforge.pmd.lang.ast.AbstractTokenManager" />
|
||||
<replace file="${target}/net/sourceforge/pmd/lang/vm/ast/VmParser.java"
|
||||
token="throw new Error"
|
||||
value="throw new RuntimeException" />
|
||||
<replace file="${target}/net/sourceforge/pmd/lang/vm/ast/ParseException.java"
|
||||
token="extends Exception"
|
||||
value="extends net.sourceforge.pmd.lang.ast.ParseException" />
|
||||
<replace file="${target}/net/sourceforge/pmd/lang/vm/ast/VmParserVisitor.java"
|
||||
token="SimpleNode"
|
||||
value="VmNode" />
|
||||
<replace file="${target}/net/sourceforge/pmd/lang/vm/ast/JJTVmParserState.java">
|
||||
<replacetoken>public class</replacetoken>
|
||||
<replacevalue><![CDATA[import net.sourceforge.pmd.lang.ast.Node;
|
||||
|
||||
public class]]></replacevalue>
|
||||
</replace>
|
||||
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/ASTAddNode.java"/>
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/ASTDirective.java"/>
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/ASTDivNode.java"/>
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/ASTEscape.java"/>
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/ASTMethod.java"/>
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/ASTModNode.java"/>
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/ASTMulNode.java"/>
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/ASTReference.java"/>
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/ASTStringLiteral.java"/>
|
||||
<delete file="${target}/net/sourceforge/pmd/lang/vm/ast/ASTSubtractNode.java"/>
|
||||
</target>
|
||||
</project>
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user