1<!-- 2 3 [The "BSD license"] 4 5 ANTLR - Copyright (c) 2005-2010 Terence Parr 6 Maven Plugin - Copyright (c) 2009 Jim Idle 7 8 All rights reserved. 9 10 Redistribution and use in source and binary forms, with or without 11 modification, are permitted provided that the following conditions 12 are met: 13 1. Redistributions of source code must retain the above copyright 14 notice, this list of conditions and the following disclaimer. 15 2. Redistributions in binary form must reproduce the above copyright 16 notice, this list of conditions and the following disclaimer in the 17 documentation and/or other materials provided with the distribution. 18 3. The name of the author may not be used to endorse or promote products 19 derived from this software without specific prior written permission. 20 21 THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 22 IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 23 OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 24 IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 25 INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 26 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 30 THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 32 --> 33 34 35 36<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"> 37 <modelVersion>4.0.0</modelVersion> 38 <parent> 39 <groupId>org.antlr</groupId> 40 <artifactId>antlr-master</artifactId> 41 <version>3.5.3</version> 42 </parent> 43 <artifactId>antlr3-maven-plugin</artifactId> 44 <packaging>maven-plugin</packaging> 45 <name>ANTLR 3 Maven plugin</name> 46 47 <properties> 48 <mavenVersion>3.8.4</mavenVersion> 49 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 50 </properties> 51 52 <!-- 53 Where does our actual project live on the interwebs. 54 --> 55 <url>http://antlr.org</url> 56 57 <description> 58This is the brand new, re-written from scratch plugin for ANTLR v3. 59 60Previous valiant efforts all suffered from being unable to modify the ANTLR Tool 61itself to provide support not just for Maven oriented things but any other tool 62that might wish to invoke ANTLR without resorting to the command line interface. 63 64Rather than try to shoe-horn new code into the existing Mojo (in fact I think that 65by incorporating a patch supplied by someone I ended up with tow versions of the 66Mojo, I elected to rewrite everything from scratch, including the documentation, so 67that we might end up with a perfect Mojo that can do everything that ANTLR v3 supports 68such as imported grammar processing, proper support for library directories and 69locating token files from generated sources, and so on. 70 71In the end I decided to also change the the ANTLR Tool.java code so that it 72would be the provider of all the things that a build tool needs, rather than 73delegating things to 5 different tools. So, things like dependencies, dependency 74sorting, option tracking, generating sources and so on are all folded back 75in to ANTLR's Tool.java code, where they belong, and they now provide a 76public interface to anyone that might want to interface with them. 77 78One other goal of this rewrite was to completely document the whole thing 79to death. Hence even this pom has more comments than funcitonal elements, 80in case I get run over by a bus or fall off a cliff while skiing. 81 82Jim Idle - March 2009 83 </description> 84 85 <developers> 86 <developer> 87 <name>Jim Idle</name> 88 <url>http://www.temporal-wave.com</url> 89 <roles> 90 <role>Originator, version 3.1.3</role> 91 </roles> 92 </developer> 93 94 <developer> 95 <name>Terence Parr</name> 96 <url>http://antlr.org/wiki/display/~admin/Home</url> 97 <roles> 98 <role>Project lead - ANTLR</role> 99 </roles> 100 </developer> 101 102 <developer> 103 <name>David Holroyd</name> 104 <url>http://david.holroyd.me.uk/</url> 105 <roles> 106 <role>Originator - prior version</role> 107 </roles> 108 </developer> 109 110 <developer> 111 <name>Kenny MacDermid</name> 112 <url>mailto:kenny "at" kmdconsulting.ca</url> 113 <roles> 114 <role>Contributor - prior versions</role> 115 </roles> 116 </developer> 117 118 </developers> 119 120 <!-- ============================================================================= --> 121 122 <!-- 123 124 What are we depedent on for the Mojos to execute? We need the 125 plugin API itself and of course we need the ANTLR Tool and runtime 126 and any of their dependencies, which we inherit. The Tool itself provides 127 us with all the dependencies, so we need only name it here. 128 --> 129 <dependencies> 130 131 <!-- 132 The things we need to build the target language recognizer 133 --> 134 <!-- The things we need to build the target language recognizer --> 135 <dependency> 136 <groupId>org.apache.maven</groupId> 137 <artifactId>maven-plugin-api</artifactId> 138 <version>3.8.4</version> 139 <scope>provided</scope> 140 </dependency> 141 <dependency> 142 <groupId>org.codehaus.plexus</groupId> 143 <artifactId>plexus-compiler-api</artifactId> 144 <version>2.9.0</version> 145 </dependency> 146 <dependency> 147 <groupId>org.sonatype.plexus</groupId> 148 <artifactId>plexus-build-api</artifactId> 149 <version>0.0.7</version> 150 </dependency> 151 <!-- The version of ANTLR tool that this version of the plugin controls. 152 We have decided that this should be in lockstep with ANTLR itself, other 153 than -1 -2 -3 etc patch releases. --> 154 <dependency> 155 <groupId>org.antlr</groupId> 156 <artifactId>antlr</artifactId> 157 <version>3.5.3</version> 158 </dependency> 159 <!-- Testing requirements... --> 160 <dependency> 161 <groupId>junit</groupId> 162 <artifactId>junit</artifactId> 163 <version>4.13.2</version> 164 <scope>test</scope> 165 </dependency> 166 <dependency> 167 <groupId>org.apache.maven.plugin-tools</groupId> 168 <artifactId>maven-plugin-annotations</artifactId> 169 <version>3.6.2</version> 170 <scope>provided</scope> 171 </dependency> 172 <dependency> 173 <groupId>io.takari.maven.plugins</groupId> 174 <artifactId>takari-plugin-testing</artifactId> 175 <version>3.0.0</version> 176 <scope>test</scope> 177 </dependency> 178 <dependency> 179 <groupId>org.apache.maven</groupId> 180 <artifactId>maven-core</artifactId> 181 <version>3.8.4</version> 182 <scope>provided</scope> 183 </dependency> 184 <dependency> 185 <groupId>org.apache.maven</groupId> 186 <artifactId>maven-compat</artifactId> 187 <version>3.8.4</version> 188 <scope>test</scope> 189 </dependency> 190 <dependency> 191 <groupId>org.codehaus.plexus</groupId> 192 <artifactId>plexus-utils</artifactId> 193 <version>3.4.1</version> 194 <scope>provided</scope> 195 </dependency> 196 <dependency> 197 <groupId>org.slf4j</groupId> 198 <artifactId>slf4j-api</artifactId> 199 <version>1.7.32</version> 200 </dependency> 201 <dependency> 202 <groupId>org.slf4j</groupId> 203 <artifactId>slf4j-simple</artifactId> 204 <version>1.7.32</version> 205 </dependency> 206 <!-- 207 The version of ANTLR tool that this version of the plugin controls. 208 We have decided that this should be in lockstep with ANTLR itself, other 209 than -1 -2 -3 etc patch releases. 210 --> 211 <dependency> 212 <groupId>org.antlr</groupId> 213 <artifactId>antlr</artifactId> 214 <version>${project.version}</version> 215 </dependency> 216 217 <dependency> 218 <groupId>org.apache.maven.shared</groupId> 219 <artifactId>maven-plugin-testing-harness</artifactId> 220 <version>1.1</version> 221 <scope>test</scope> 222 </dependency> 223 224 </dependencies> 225 226 <build> 227 228 <plugins> 229 <plugin> 230 <groupId>org.apache.maven.plugins</groupId> 231 <artifactId>maven-site-plugin</artifactId> 232 <version>3.3</version> 233 </plugin> 234 235 <plugin> 236 <groupId>org.apache.maven.plugins</groupId> 237 <artifactId>maven-project-info-reports-plugin</artifactId> 238 <version>2.7</version> 239 <configuration> 240 <dependencyLocationsEnabled>false</dependencyLocationsEnabled> 241 </configuration> 242 </plugin> 243 244 </plugins> 245 246 </build> 247 248 <reporting> 249 <plugins> 250 <plugin> 251 <groupId>org.apache.maven.plugins</groupId> 252 <artifactId>maven-javadoc-plugin</artifactId> 253 <version>3.3.1</version> 254 <configuration> 255 <failOnError>false</failOnError> 256 <quiet>true</quiet> 257 </configuration> 258 </plugin> 259 <plugin> 260 <groupId>org.apache.maven.plugins</groupId> 261 <artifactId>maven-plugin-plugin</artifactId> 262 <version>3.2</version> 263 </plugin> 264 </plugins> 265 </reporting> 266</project> 267