<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.skills</groupId>
	<artifactId>org.eclipse.skills.releng</artifactId>
	<version>0.1.0-SNAPSHOT</version>
	<packaging>pom</packaging>

	<prerequisites>
		<!-- Maven 3.1.0 is the earliest version using Eclipse Aether, Maven 3.0.x 
			uses the incompatible predecessor Sonatype Aether -->
		<maven>3.1</maven>
	</prerequisites>

	<properties>
		<!-- used plugin versions -->
		<tycho.version>1.5.0</tycho.version>
		<tycho.extras.version>${tycho.version}</tycho.extras.version>
		<maven.compiler.version>3.6.1</maven.compiler.version>
		<maven.javadoc.version>2.9.1</maven.javadoc.version>
		<jacoco.version>0.7.9</jacoco.version>
		<eclipse.jarsigner.version>1.1.3</eclipse.jarsigner.version>
		<maven.buildhelper.version>1.9.1</maven.buildhelper.version>

		<!-- build parameters -->
		<compiler.compliance>1.8</compiler.compliance>
		<jacoco.report.path>../../coverage-report/jacoco.exec</jacoco.report.path>

		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	</properties>


	<pluginRepositories>
		<pluginRepository>
			<id>cbi</id>
			<url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
		</pluginRepository>
		<pluginRepository>
			<id>nexus</id>
			<url>https://repo.eclipse.org/content/repositories/maven_central/</url>
		</pluginRepository>
	</pluginRepositories>

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

			<!-- set target platform for build -->
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>target-platform-configuration</artifactId>
				<version>${tycho.version}</version>
				<configuration>
					<target>
						<artifact>
							<groupId>org.eclipse.skills</groupId>
							<artifactId>org.eclipse.skills.releng.target</artifactId>
							<version>0.1.0-SNAPSHOT</version>
						</artifact>
					</target>

					<resolver>p2</resolver>
					<environments>
						<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>linux</os>
							<ws>gtk</ws>
							<arch>aarch64</arch>
						</environment>
						<environment>
							<os>macosx</os>
							<ws>cocoa</ws>
							<arch>x86_64</arch>
						</environment>
					</environments>
				</configuration>
			</plugin>

			<!-- set compiler options -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>${maven.compiler.version}</version>
				<configuration>
					<source>${compiler.compliance}</source>
					<target>${compiler.compliance}</target>
				</configuration>
			</plugin>

			<!-- enable pom version updates: to update execute goal "tycho.versions:update-pom" -->
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-versions-plugin</artifactId>
				<version>${tycho.version}</version>
			</plugin>

			<!-- timestamps based on the latest git commit -->
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-packaging-plugin</artifactId>
				<version>${tycho.version}</version>
				<dependencies>
					<dependency>
						<groupId>org.eclipse.tycho.extras</groupId>
						<artifactId>tycho-buildtimestamp-jgit</artifactId>
						<version>${tycho.extras.version}</version>
					</dependency>
				</dependencies>
				<configuration>
					<timestampProvider>jgit</timestampProvider>
					<jgit.dirtyWorkingTree>ignore</jgit.dirtyWorkingTree>
					<jgit.ignore>
						pom.xml
					</jgit.ignore>
					<format>${build-prefix}yyyyMMddHHmm</format>
				</configuration>
			</plugin>

			<!-- enable source feature generation -->
			<plugin>
				<groupId>org.eclipse.tycho.extras</groupId>
				<artifactId>tycho-source-feature-plugin</artifactId>
				<version>${tycho.extras.version}</version>

				<executions>
					<execution>
						<id>source-feature</id>
						<phase>package</phase>
						<goals>
							<goal>source-feature</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-source-plugin</artifactId>
				<version>${tycho.version}</version>

				<executions>
					<execution>
						<id>plugin-source</id>
						<goals>
							<goal>plugin-source</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-p2-plugin</artifactId>
				<version>${tycho.version}</version>
				<executions>
					<execution>
						<id>attached-p2-metadata</id>
						<phase>package</phase>
						<goals>
							<goal>p2-metadata</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

	<modules>

		<!-- plugins -->
		<module>../../plugins/org.eclipse.skills</module>
		<module>../../plugins/org.eclipse.skills.dependencies</module>
		<module>../../plugins/org.eclipse.skills.ui.questeditor</module>

		<!-- features -->
		<module>../../features/org.eclipse.skills.feature</module>
		<module>../../features/org.eclipse.skills.sdk.feature</module>

		<!-- tests -->
		<module>../../tests/org.eclipse.skills.test</module>
		<module>../../tests/org.eclipse.skills.dependencies.test</module>

		<!-- releng -->
		<module>../org.eclipse.skills.releng.target</module>
		<module>../org.eclipse.skills.releng.p2</module>

	</modules>


	<profiles>
		<profile>
			<id>local</id>
		</profile>

		<profile>
			<!-- by default set build qualifier to "I" -->
			<activation>
				<activeByDefault>true</activeByDefault>
				<property>
					<name>!build-prefix</name>
				</property>
			</activation>

			<properties>
				<build-prefix>'I'</build-prefix>
			</properties>
		</profile>

		<profile>
			<id>sign</id>

			<build>
				<plugins>
					<!-- enable jar signing -->
					<plugin>
						<groupId>org.eclipse.cbi.maven.plugins</groupId>
						<artifactId>eclipse-jarsigner-plugin</artifactId>
						<version>${eclipse.jarsigner.version}</version>
						<executions>
							<execution>
								<id>sign</id>
								<goals>
									<goal>sign</goal>
								</goals>
								<phase>verify</phase>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>
</project>  
