<?xml version="1.0" encoding="UTF-8" standalone="no"?><!--
	Copyright (c) 2016 Chalmers | University of Gothenburg, rt-labs and others.
	All rights reserved. This program and the accompanying materials
	are made available under the terms of the Eclipse Public License v1.0
	which accompanies this distribution, and is available at
	http://www.eclipse.org/legal/epl-v10.html

	Contributors:
		Chalmers | University of Gothenburg and rt-labs - initial API and implementation and/or initial documentation
--><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.capra</groupId>
	<artifactId>parent</artifactId>
	<version>0.7.0-SNAPSHOT</version>
	<packaging>pom</packaging>
    <name>Capra</name>

	<modules>
		<module>bundles/org.eclipse.capra.core</module>
		<module>bundles/org.eclipse.capra.documentation</module>
		<module>bundles/org.eclipse.capra.generic.persistence</module>
		<module>bundles/org.eclipse.capra.generic.priority</module>
		<module>bundles/org.eclipse.capra.generic.tracemodels</module>
		<module>bundles/org.eclipse.capra.generic.artifactmodel</module>
		<module>bundles/org.eclipse.capra.handler.cdt</module>
		<module>bundles/org.eclipse.capra.handler.emf</module>
		<module>bundles/org.eclipse.capra.handler.file</module>
		<module>bundles/org.eclipse.capra.handler.gef</module>
		<module>bundles/org.eclipse.capra.handler.jdt</module>
		<module>bundles/org.eclipse.capra.handler.hudson</module>
		<module>bundles/org.eclipse.capra.handler.office</module>
		<module>bundles/org.eclipse.capra.handler.reqIf</module>
		<module>bundles/org.eclipse.capra.handler.marker</module>
		<module>bundles/org.eclipse.capra.handler.mylyn</module>
		<module>bundles/org.eclipse.capra.handler.papyrus</module>
		<module>bundles/org.eclipse.capra.handler.php</module>
		<module>bundles/org.eclipse.capra.handler.uml</module>
		<module>bundles/org.eclipse.capra.ui</module>
		<module>bundles/org.eclipse.capra.ui.notification</module>
		<module>bundles/org.eclipse.capra.ui.plantuml</module>
		<module>bundles/org.eclipse.capra.ui.cdt</module>
		<module>bundles/org.eclipse.capra.ui.jdt</module>
		<module>bundles/org.eclipse.capra.ui.office</module>
		<module>bundles/org.eclipse.capra.ui.drive</module>
		<module>bundles/org.eclipse.capra.ui.zest</module>
		<module>bundles/org.eclipse.capra.ui.reqif</module>
		
		<!-- Tests -->
		<module>tests/org.eclipse.capra.testsuite</module>
		<module>tests/org.eclipse.capra.handler.cdt.tests</module>
		<module>tests/org.eclipse.capra.handler.jdt.tests</module>
		<module>tests/org.eclipse.capra.handler.uml.tests</module>
        
		
		<!-- Features -->
		<module>features/org.eclipse.capra.feature</module>
		<module>features/org.eclipse.capra.core.feature</module>
		<module>features/org.eclipse.capra.generic.feature</module>
		<module>features/org.eclipse.capra.handler.cdt.feature</module>
		<module>features/org.eclipse.capra.handler.hudson.feature</module>
		<module>features/org.eclipse.capra.handler.office.feature</module>
		<module>features/org.eclipse.capra.handler.jdt.feature</module>
		<module>features/org.eclipse.capra.handler.reqIf.feature</module>
		<module>features/org.eclipse.capra.handler.papyrus.feature</module>
		<module>features/org.eclipse.capra.handler.php.feature</module>
		<module>features/org.eclipse.capra.ui.feature</module>
		<module>features/org.eclipse.capra.ui.plantuml.feature</module>
		<module>features/org.eclipse.capra.ui.zest.feature</module>
		
		<!-- Releng -->
		<module>releng/org.eclipse.capra.releng.target</module>
		<module>releng/org.eclipse.capra.releng.p2</module>
		
	</modules>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<tycho-version>1.3.0</tycho-version>
		<org.jboss.tools.tycho-plugins.version>1.3.0</org.jboss.tools.tycho-plugins.version>
	</properties>

	<profiles>
		<profile>
			<id>macosx-jvm-flags</id>
			<activation>
				<os>
					<family>mac</family>
				</os>
			</activation>
			<properties>
				<os-jvm-flags>-XstartOnFirstThread</os-jvm-flags>
			</properties>
		</profile>
	</profiles>

	<repositories>
		<repository>
			<id>license-feature</id>
			<url>http://download.eclipse.org/cbi/updates/license/</url>
			<layout>p2</layout>
		</repository>
		<repository>
			<id>jboss</id>
			<url>https://repository.jboss.org/nexus/content/repositories/public/</url>
			<layout>default</layout>
		</repository>
	</repositories>
	
	 <scm>
       <connection>scm:git:https://git.eclipse.org/r/capra/org.eclipse.capra.git</connection>
       <developerConnection>scm:git:https://git.eclipse.org/r/capra/org.eclipse.capra.git</developerConnection>
       <tag>HEAD</tag>
   </scm>

	<build>
		<plugins>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-maven-plugin</artifactId>
				<version>${tycho-version}</version>
				<extensions>true</extensions>
			</plugin>

			<!-- Only required if tests need UI -->
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-surefire-plugin</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<useUIHarness>true</useUIHarness>
					<useUIThread>true</useUIThread>
					<argLine>${os-jvm-flags}</argLine>
					<dependencies>
						<dependency>
							<type>eclipse-plugin</type>
							<artifactId>org.eclipse.equinox.event</artifactId>
							<version>0.0.0</version>
						</dependency>
					</dependencies>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>target-platform-configuration</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<target>
						<artifact>
							<groupId>org.eclipse.capra</groupId>
							<artifactId>org.eclipse.capra.releng.target</artifactId>
							<version>0.7.0-SNAPSHOT</version>
						</artifact>
					</target>
					<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</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>com.itemis.maven.plugins</groupId>
				<artifactId>unleash-maven-plugin</artifactId>
				<version>2.9.3</version>
				<dependencies>
					<dependency>
						<groupId>com.itemis.maven.plugins</groupId>
						<artifactId>unleash-scm-provider-git</artifactId>
						<version>2.2.0</version>
					</dependency>
				</dependencies>
			</plugin>
		</plugins>
	</build>
</project>
