<?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>
	<groupId>org.eclipse.ogee</groupId>
	<artifactId>org.eclipse.ogee.parent</artifactId>
	<version>0.6.0-SNAPSHOT</version>
	<packaging>pom</packaging>
	<description>Ogee Parent</description>
	<name>org.eclipse.ogee.parent</name>

	<properties>
		<tycho-version>0.19.0</tycho-version>
		<tycho-extras-version>${tycho-version}</tycho-extras-version>
		<tycho-groupid>org.eclipse.tycho</tycho-groupid>
		<javadoc-version>2.9.1</javadoc-version>
		<tycho.compiler.useJDK>SYSTEM</tycho.compiler.useJDK>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<tycho.scmUrl>scm:git:ssh://git.eclipse.org/gitroot/ogee/org.eclipse.ogee.git</tycho.scmUrl>
	</properties>

	<scm>
		<connection>${tycho.scmUrl}</connection>
		<developerConnection>${tycho.scmUrl}</developerConnection>
	</scm>

	<!--************************************************************************** -->
	<!--* POM SECTION: Modules Settings -->
	<!--************************************************************************** -->
	<modules>
		<!--************************************************************************** -->
		<!-- Dev Modules -->
		<!--************************************************************************** -->
		<module>../org.eclipse.ogee.target</module>
		<module>../org.eclipse.ogee.client</module>
		<module>../org.eclipse.ogee.utils</module>
		<module>../org.eclipse.ogee.help</module>
		<module>../org.eclipse.ogee.import</module>
		<module>../org.eclipse.ogee.model</module>
		<module>../org.eclipse.ogee.model.edit</module>
		<module>../org.eclipse.ogee.model.api</module>
		<module>../org.eclipse.ogee.model.validation</module>
		<module>../org.eclipse.ogee.navigation</module>
		<module>../org.eclipse.ogee.navigation.tree</module>
		<module>../org.eclipse.ogee.export</module>
		<module>../org.eclipse.ogee.export.odatav2</module>
		<module>../org.eclipse.ogee.designer</module>
		<module>../org.eclipse.ogee.property.editor</module>
		<module>../org.eclipse.ogee.core</module>
		<module>../org.eclipse.ogee.component.exploration</module>
		<module>../org.eclipse.ogee.patterns</module>
		<module>../org.eclipse.ogee.exploration.tree</module>
		<module>../org.eclipse.ogee.feature</module>
		<module>../org.eclipse.ogee.updatesite</module>
	</modules>

	<dependencies>
		<dependency>
			<groupId>commons-collections</groupId>
			<artifactId>commons-collections</artifactId>
			<version>3.2.1</version>
		</dependency>
		<dependency>
			<groupId>commons-lang</groupId>
			<artifactId>commons-lang</artifactId>
			<version>2.4</version>
		</dependency>
	</dependencies>


	<build>
		<!--Indication for sonar to find the src directories -->
		<sourceDirectory>${basedir}/src</sourceDirectory>

		<plugins>

			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-compiler-plugin</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<showWarnings>false</showWarnings>
					<source>1.6</source>
					<target>1.6</target>
					<useJDK>${tycho.compiler.useJDK}</useJDK>
					<encoding>UTF-8</encoding>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-maven-plugin</artifactId>
				<version>${tycho-version}</version>
				<extensions>true</extensions>
			</plugin>

			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-packaging-plugin</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<sourceReferences>
						<generate>true</generate>
					</sourceReferences>
				</configuration>
				<dependencies>
					<dependency>
						<groupId>org.eclipse.tycho.extras</groupId>
						<artifactId>tycho-sourceref-jgit</artifactId>
						<version>${tycho-extras-version}</version>
					</dependency>
				</dependencies>
			</plugin>

			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>target-platform-configuration</artifactId>
				<!-- <version>${ldi.tycho-parent.tycho-version}</version> -->
				<version>${tycho-version}</version>
				<configuration>
					<target>
						<artifact>
							<groupId>${project.groupId}</groupId>
							<artifactId>org.eclipse.ogee.target</artifactId>
							<version>${project.version}</version>
							<classifier>org.eclipse.ogee</classifier>
						</artifact>
					</target>
					<resolver>p2</resolver>
					<pomDependencies>consider</pomDependencies>
					<ignoreTychoRepositories>true</ignoreTychoRepositories>
					<environments>
						<environment>
							<os>win32</os>
							<ws>win32</ws>
							<arch>x86</arch>
						</environment>
						<environment>
							<os>win32</os>
							<ws>win32</ws>
							<arch>x86_64</arch>
						</environment>
						<environment>
							<os>linux</os>
							<ws>gtk</ws>
							<arch>x86_64</arch>
						</environment>
						<environment>
							<os>macosx</os>
							<ws>cocoa</ws>
							<arch>x86_64</arch>
						</environment>
					</environments>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-surefire-plugin</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<!-- timeout in seconds -->
					<surefire.timeout>600</surefire.timeout>
					<forkedProcessTimeoutInSeconds>600</forkedProcessTimeoutInSeconds>
					<useUIHarness>true</useUIHarness>
					<useUIThread>true</useUIThread>
					<includes>
						<include>**/*test*.class</include>
						<include>**/*Test*.class</include>
					</includes>
				</configuration>
			</plugin>

		</plugins>
	</build>

	<reporting>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>findbugs-maven-plugin</artifactId>
				<version>2.5.2</version>
				<configuration>
					<excludeFilterFile>findbugs-exclude.xml</excludeFilterFile>
				</configuration>
			</plugin>
		</plugins>
	</reporting>

	<distributionManagement>
		<repository>
			<id>repo.eclipse.org</id>
			<name>Project Repository - Releases</name>
			<url>https://repo.eclipse.org/content/repositories/ogee-releases/</url>
		</repository>
		<snapshotRepository>
			<id>repo.eclipse.org</id>
			<name>Project Repository - Snapshots</name>
			<url>https://repo.eclipse.org/content/repositories/ogee-snapshots/</url>
		</snapshotRepository>
	</distributionManagement>

	<!-- <profiles> <profile> <id>release.build</id> <activation> <property> 
		<name>ldi.releaseBuild</name> </property> </activation> <properties> <maven.test.skip>true</maven.test.skip> 
		</properties> </profile> </profiles> -->

	<pluginRepositories>
		<pluginRepository>
			<id>cbi</id>
			<url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
			<releases>
				<enabled>true</enabled>
			</releases>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</pluginRepository>
	</pluginRepositories>

	<profiles>
		<profile>
			<id>eclipse-sign</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.eclipse.cbi.maven.plugins</groupId>
						<artifactId>eclipse-jarsigner-plugin</artifactId>
						<version>1.0.4</version>
						<executions>
							<execution>
								<id>sign</id>
								<goals>
									<goal>sign</goal>
								</goals>
								<phase>verify</phase>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>

</project>