| <!-- |
| |
| [The "BSD license"] |
| |
| ANTLR - Copyright (c) 2005-2010 Terence Parr |
| Maven Plugin - Copyright (c) 2009 Jim Idle |
| |
| All rights reserved. |
| |
| Redistribution and use in source and binary forms, with or without |
| modification, are permitted provided that the following conditions |
| are met: |
| 1. Redistributions of source code must retain the above copyright |
| notice, this list of conditions and the following disclaimer. |
| 2. Redistributions in binary form must reproduce the above copyright |
| notice, this list of conditions and the following disclaimer in the |
| documentation and/or other materials provided with the distribution. |
| 3. The name of the author may not be used to endorse or promote products |
| derived from this software without specific prior written permission. |
| |
| THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR |
| IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES |
| OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. |
| IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, |
| INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT |
| NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
| THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| |
| --> |
| |
| |
| |
| <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/maven-v4_0_0.xsd"> |
| |
| |
| <!-- |
| The ANTLR Maven artifacts are now released via the Sonotype OSS |
| repository, which means that they are synced to Maven central |
| within a few minutes of hitting the release repo for Sonotype. |
| To enable this, we inherit from the Sonotype provided parent |
| pom. However, we must also configure our .m2/settings.xml to include |
| the snapshot and staging server and the sonotype password. This |
| means that only ANTLR developers can released the artifacts, but |
| anyone can build locally. |
| --> |
| <parent> |
| <groupId>org.sonatype.oss</groupId> |
| <artifactId>oss-parent</artifactId> |
| <version>7</version> |
| </parent> |
| |
| <!-- Maven model we are inheriting from |
| --> |
| <modelVersion>4.0.0</modelVersion> |
| |
| <!-- |
| |
| Now that the ANTLR project has adopted Maven with a vengence, |
| all ANTLR tools will be grouped under org.antlr and will be |
| controlled by a project member. |
| --> |
| <groupId>org.antlr</groupId> |
| |
| |
| <!-- |
| |
| This is the ANTLR plugin for ANTLR version 3.1.3 and above. It might |
| have been best to change the name of the plugin as the 3.1.2 plugins |
| behave a little differently, however for the sake of one transitional |
| phase to a much better plugin, it was decided that the name should |
| remain the same. |
| --> |
| <artifactId>antlr3-maven-plugin</artifactId> |
| <packaging>maven-plugin</packaging> |
| |
| <!-- Note that as this plugin depends on the ANTLR tool itself |
| we cannot use the paren pom to control the version number |
| and MUST update <version> in this pom manually! |
| --> |
| <version>3.4</version> |
| <name>Maven plugin for ANTLR V3.4</name> |
| <prerequisites> |
| <maven>2.0</maven> |
| </prerequisites> |
| |
| <!-- |
| Where does our actual project live on the interwebs. |
| --> |
| <url>http://antlr.org</url> |
| |
| <properties> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| </properties> |
| |
| <description> |
| |
| This is the brand new, re-written from scratch plugin for ANTLR v3. |
| |
| Previous valiant efforts all suffered from being unable to modify the ANTLR Tool |
| itself to provide support not just for Maven oriented things but any other tool |
| that might wish to invoke ANTLR without resorting to the command line interface. |
| |
| Rather than try to shoe-horn new code into the existing Mojo (in fact I think that |
| by incorporating a patch supplied by someone I ended up with tow versions of the |
| Mojo, I elected to rewrite everything from scratch, including the documentation, so |
| that we might end up with a perfect Mojo that can do everything that ANTLR v3 supports |
| such as imported grammar processing, proper support for library directories and |
| locating token files from generated sources, and so on. |
| |
| In the end I decided to also change the the ANTLR Tool.java code so that it |
| would be the provider of all the things that a build tool needs, rather than |
| delegating things to 5 different tools. So, things like dependencies, dependency |
| sorting, option tracking, generating sources and so on are all folded back |
| in to ANTLR's Tool.java code, where they belong, and they now provide a |
| public interface to anyone that might want to interface with them. |
| |
| One other goal of this rewrite was to completely document the whole thing |
| to death. Hence even this pom has more comments than funcitonal elements, |
| in case I get run over by a bus or fall off a cliff while skiing. |
| |
| Jim Idle - March 2009 |
| |
| </description> |
| |
| <profiles> |
| <profile> |
| <id>release-sign-artifacts</id> |
| <activation> |
| <property> |
| <name>deploy</name> |
| <value>true</value> |
| </property> |
| </activation> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-gpg-plugin</artifactId> |
| <version>1.3</version> |
| <executions> |
| <execution> |
| <id>sign-artifacts</id> |
| <phase>verify</phase> |
| <goals> |
| <goal>sign</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| |
| <developers> |
| |
| <developer> |
| <name>Jim Idle</name> |
| <url>http://www.temporal-wave.com</url> |
| <roles> |
| <role>Originator, version 3.1.3+</role> |
| </roles> |
| </developer> |
| |
| <developer> |
| <name>Terence Parr</name> |
| <url>http://antlr.org/wiki/display/~admin/Home</url> |
| <roles> |
| <role>Project lead - ANTLR</role> |
| </roles> |
| </developer> |
| |
| <developer> |
| <name>David Holroyd</name> |
| <url>http://david.holroyd.me.uk/</url> |
| <roles> |
| <role>Originator - prior version</role> |
| </roles> |
| </developer> |
| |
| <developer> |
| <name>Kenny MacDermid</name> |
| <url>mailto:kenny "at" kmdconsulting.ca</url> |
| <roles> |
| <role>Contributor - prior versions</role> |
| </roles> |
| </developer> |
| |
| </developers> |
| |
| <!-- Where do we track bugs for this project? |
| --> |
| <issueManagement> |
| <system>JIRA</system> |
| <url>http://antlr.org/jira/browse/ANTLR</url> |
| </issueManagement> |
| |
| <!-- Location of the license description for this project |
| --> |
| <licenses> |
| <license> |
| <distribution>repo</distribution> |
| <name>The BSD License</name> |
| <url>http://www.antlr.org/LICENSE.txt </url> |
| </license> |
| </licenses> |
| |
| <!-- Ancilliary information for completeness |
| --> |
| <inceptionYear>2009</inceptionYear> |
| |
| <mailingLists> |
| <mailingList> |
| <archive>http://antlr.markmail.org/</archive> |
| <otherArchives> |
| <otherArchive>http://www.antlr.org/pipermail/antlr-interest/</otherArchive> |
| </otherArchives> |
| <name>ANTLR Users</name> |
| <subscribe>http://www.antlr.org/mailman/listinfo/antlr-interest/</subscribe> |
| <unsubscribe>http://www.antlr.org/mailman/options/antlr-interest/</unsubscribe> |
| <post>antlr-interest@antlr.org</post> |
| </mailingList> |
| </mailingLists> |
| |
| <organization> |
| <name>ANTLR.org</name> |
| <url>http://www.antlr.org</url> |
| </organization> |
| <!-- ============================================================================= --> |
| |
| <!-- |
| |
| What are we depedent on for the Mojos to execute? We need the |
| plugin API itself and of course we need the ANTLR Tool and runtime |
| and any of their dependencies, which we inherit. The Tool itself provides |
| us with all the dependencies, so we need only name it here. |
| --> |
| <dependencies> |
| |
| <!-- |
| The things we need to build the target language recognizer |
| --> |
| <dependency> |
| <groupId>org.apache.maven</groupId> |
| <artifactId>maven-plugin-api</artifactId> |
| <version>2.0</version> |
| <scope>compile</scope> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.maven</groupId> |
| <artifactId>maven-project</artifactId> |
| <version>2.0</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.codehaus.plexus</groupId> |
| <artifactId>plexus-compiler-api</artifactId> |
| <version>1.5.3</version> |
| </dependency> |
| |
| <!-- |
| The version of ANTLR tool that this version of the plugin controls. |
| We have decided that this should be in lockstep with ANTLR itself, other |
| than -1 -2 -3 etc patch releases. |
| --> |
| <dependency> |
| <groupId>org.antlr</groupId> |
| <artifactId>antlr</artifactId> |
| <version>3.4</version> |
| </dependency> |
| |
| <!-- |
| Testing requirements... |
| --> |
| <dependency> |
| |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <version>4.8.2</version> |
| <scope>test</scope> |
| |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.maven.shared</groupId> |
| <artifactId>maven-plugin-testing-harness</artifactId> |
| <version>1.0</version> |
| <scope>test</scope> |
| </dependency> |
| |
| </dependencies> |
| |
| <build> |
| |
| <defaultGoal>install</defaultGoal> |
| |
| <plugins> |
| |
| <plugin> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>2.0.2</version> |
| <configuration> |
| <source>1.6</source> |
| <target>jsr14</target> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-site-plugin</artifactId> |
| <version>2.0</version> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-project-info-reports-plugin</artifactId> |
| <version>2.1.1</version> |
| <configuration> |
| <dependencyLocationsEnabled>false</dependencyLocationsEnabled> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-source-plugin</artifactId> |
| <version>2.1.2</version> |
| <executions> |
| <execution> |
| <id>attach-sources</id> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <version>2.8</version> |
| <executions> |
| <execution> |
| <id>attach-javadocs</id> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| |
| </plugins> |
| |
| </build> |
| |
| </project> |