<project>
	<modelVersion>4.0.0</modelVersion>
	<groupId>org.eclipse.stem.tycho</groupId>
	<artifactId>org.eclipse.stem.tycho.configuration</artifactId>
	<version>1.0.0-SNAPSHOT</version>
	<packaging>pom</packaging>
	<properties>
		<tycho.version>2.2.0</tycho.version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<eclipse-repo.url>http://download.eclipse.org/releases/2021-03/202102261000/
		</eclipse-repo.url>
	</properties>
	<repositories>
		<repository>
			<id>eclipse-release</id>
			<url>${eclipse-repo.url}</url>
			<layout>p2</layout>
		</repository>
		<repository>
			<id>BIRT</id>
			<url>http://download.eclipse.org/releases/2019-09/</url>
			<layout>p2</layout>
		</repository>
		<repository>
			<id>Utils</id>
			<url>https://download.eclipse.org/tools/orbit/downloads/drops2/S20210216215844/repository/</url>
			<layout>p2</layout>
		</repository>
		<repository>
			<id>STEMData</id>
			<url>http://download.eclipse.org/stem/update-site/data/</url>
			<layout>p2</layout>
		</repository>
		<repository>
      		<id>justj</id>
      		<url>https://download.eclipse.org/justj/jres/11/updates/release/latest/</url>
      		<layout>p2</layout>
 		</repository>
	</repositories>
	
	<pluginRepositories>
		<pluginRepository>
			<id>tycho-snapshots</id>
			<url>https://repo.eclipse.org/content/repositories/tycho-snapshots/</url>
		</pluginRepository>
	</pluginRepositories>
	
	<build>
		<!-- To use the plugin goals in your POM or parent POM -->
		<plugins>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-p2-repository-plugin</artifactId>
				<version>2.2.0</version>
			</plugin>
			
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-maven-plugin</artifactId>
				<version>${tycho.version}</version>
				<extensions>true</extensions>
			</plugin>
			<!--Enable the replacement of the SNAPSHOT version in the final product 
				configuration -->
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-packaging-plugin</artifactId>
				<version>${tycho.version}</version>
				<executions>
					<execution>
						<phase>package</phase>
						<id>package-feature</id>
						<configuration>
							<finalName>${project.artifactId}_${unqualifiedVersion}.${buildQualifier}
							</finalName>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>target-platform-configuration</artifactId>
				<version>${tycho.version}</version>
				<configuration>
					<environments>
						<!-- 
						<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>linux</os>
							<ws>gtk</ws>
							<arch>ppc64le</arch>
						</environment>
						<!--   
						<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>macosx</os>
							<ws>cocoa</ws>
							<arch>x86_64</arch>
						</environment>
					</environments>
					<!--workaround bug 532302: set EE to JavASE-11 to make sure we resolve 
						Import-Package: javax.annoation against bundle javax.annotation (as opposed 
						to system package from bundle's BREE JavaSE-1.8) -->
					<executionEnvironment>JavaSE-11</executionEnvironment>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>