<?xml version="1.0"?>

<!--
  ~ /*
  ~ Copyright (c) 2014 by Malte Isberner (https://github.com/misberner).
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the License.
  ~ You may obtain a copy of the License at
  ~
  ~     http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS,
  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License.
  -->
<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">
	<modelVersion>4.0.0</modelVersion>

	<parent>
		<groupId>org.sonatype.oss</groupId>
		<artifactId>oss-parent</artifactId>
		<version>7</version>
	</parent>

	<groupId>com.github.misberner.duzzt</groupId>
	<artifactId>duzzt-parent</artifactId>
	<version>0.1.0</version>
	<packaging>pom</packaging>


	<name>Duzzt</name>
	<description>
		An annotation-based embedded DSL generator.
	</description>
	<url>https://github.com/misberner/duzzt</url>
	<inceptionYear>2013</inceptionYear>

	<licenses>
		<license>
			<name>The Apache Software License, Version 2.0</name>
			<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
		</license>
	</licenses>


	<developers>
		<developer>
			<id>misberner</id>
			<name>Malte Isberner</name>
			<email>malte.isberner@gmail.com</email>
			<properties>
				<picUrl>
					http://www.gravatar.com/avatar/c44dc4164f1a9a597ec0c24425d1b89d.png
				</picUrl>
			</properties>
		</developer>
	</developers>

	<issueManagement>
		<url>https://github.com/misberner/duzzt/issues</url>
		<system>GitHub Issues</system>
	</issueManagement>

	<!--  =============================== SCM =======================  -->
	<scm>
		<connection>scm:git:git@github.com:misberner/duzzt.git</connection>
		<developerConnection>scm:git:git@github.com:misberner/duzzt.git</developerConnection>
		<url>https://github.com/misberner/duzzt/tree/master</url>
	  <tag>duzzt-0.1.0</tag>
  </scm>

	<properties>
		<compiler-plugin.version>3.1</compiler-plugin.version>
		<deploy-plugin.version>2.8.1</deploy-plugin.version>
		<javacc-plugin.version>2.6</javacc-plugin.version>
		<ap-commons.version>0.0.2</ap-commons.version>
		<stringtemplate.version>4.0.7</stringtemplate.version>
		<brics-automaton.version>1.11-8</brics-automaton.version>
	</properties>

	<build>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>${compiler-plugin.version}</version>
					<configuration>
						<source>1.7</source>
						<target>1.7</target>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-deploy-plugin</artifactId>
					<version>${deploy-plugin.version}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-release-plugin</artifactId>
					<version>2.5.3</version>
					<configuration>
						<!-- Perform an install into the local repository, otherwise the javadoc plugin and archetype integration tests will fail -->
						<preparationGoals>clean install</preparationGoals>
						<tagNameFormat>duzzt-@{version}</tagNameFormat>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>javacc-maven-plugin</artifactId>
					<version>${javacc-plugin.version}</version>
					<executions>
						<execution>
							<id>javacc</id>
							<goals>
								<goal>javacc</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-javadoc-plugin</artifactId>
					<version>3.0.1</version>
					<configuration>
						<additionalOptions>${javadoc.opts}</additionalOptions>
						<additionalparam>${javadoc.opts}</additionalparam>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

	<reporting>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>3.0.1</version>
				<configuration>
					<additionalOptions>${javadoc.opts}</additionalOptions>
					<additionalparam>${javadoc.opts}</additionalparam>
				</configuration>
				<reportSets>
					<reportSet>
						<id>default</id>
						<reports>
							<report>javadoc</report>
							<report>test-javadoc</report>
						</reports>
					</reportSet>
					<reportSet>
						<id>aggregate</id>
						<reports>
							<report>aggregate</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>
		</plugins>
	</reporting>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.antlr</groupId>
				<artifactId>ST4</artifactId>
				<version>${stringtemplate.version}</version>
			</dependency>
			<dependency> 
				<groupId>dk.brics.automaton</groupId>
				<artifactId>automaton</artifactId>
				<version>${brics-automaton.version}</version>
			</dependency>

			<dependency>
				<groupId>com.github.misberner.ap-commons</groupId>
				<artifactId>ap-commons</artifactId>
				<version>${ap-commons.version}</version>
			</dependency>
			
			<dependency> 
				<groupId>com.github.misberner.duzzt</groupId>
				<artifactId>duzzt-annotations</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>	
				<groupId>com.github.misberner.duzzt</groupId>
				<artifactId>duzzt-processor</artifactId>
				<version>${project.version}</version>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<distributionManagement>
		<!-- Dummy - this will NOT actually be used, but is required for mvn site:stage -->
		<!-- Use build-tools/deploy-site.sh for site deployment on GitHub pages -->
		<site>
			<id>local</id>
			<url>file://${user.home}/maven-sites/duzzt-site</url>
		</site>
	</distributionManagement>
	

	<modules> 
		<module>annotations</module>
		<module>processor</module>
		<module>examples</module>
	</modules>

	<!-- Disable strict javadoc linting when using Java >= 8. -->
	<profiles>
		<profile>
			<id>doclint-java8-disable</id>
			<activation>
				<jdk>[1.8,)</jdk>
			</activation>
			<properties>
				<javadoc.opts>-Xdoclint:none</javadoc.opts>
			</properties>
		</profile>
	</profiles>

</project>
