<?xml version="1.0" encoding="UTF-8"?>
<!--
	Modelio parent POM
 -->
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<modelVersion>4.0.0</modelVersion>

	<groupId>org.modelio</groupId>
	<artifactId>modelio-parent</artifactId>
	<version>6.2.0</version>
	<packaging>pom</packaging>

	<properties>
		<!-- <modelio.ws.path>${project.basedir}/${project.parent.relativePath}</modelio.ws.path> -->
		<modelio.ws.path>${env.ECLIPSE_WS}</modelio.ws.path>

		<!-- Compilation settings -->
		<maven.compiler.source>21</maven.compiler.source>
		<maven.compiler.target>21</maven.compiler.target>
		<tycho-groupid>org.eclipse.tycho</tycho-groupid>
		<tycho-version>4.0.13</tycho-version>
		<properties-maven-plugin-version>1.2.1</properties-maven-plugin-version>
		<tycho.compiler.source>21</tycho.compiler.source>
		<tycho.compiler.target>21</tycho.compiler.target>
		<javadesigner.annotation.version>2.2.0</javadesigner.annotation.version>

		<!-- Modelio version settings -->
		<modelio.rootFolder>Modelio 6.2</modelio.rootFolder>
		<modelio.version>6.2.0-SNAPSHOT</modelio.version>
		<newVersion>6.2.0</newVersion>

	</properties>

	<repositories>

		<!-- Eclipse RCP platform -->
		<repository>
			<id>rcp-eclipse</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/rcp-eclipse/eclipse</url>
		</repository>
		<repository>
			<id>rcp-eclipse-fr</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/rcp-eclipse/eclipse-fr</url>
		</repository>

		<!-- Third-party Libraries re-packaged by Modeliosoft or Modeliosoft libraries -->
		<repository>
			<id>jaxb</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/javax/jaxb</url>
		</repository>
		<repository>
			<id>jackson</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/jackson/integ</url>
		</repository>
		<repository>
			<id>astyle</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/modelio-integ/org.astyle/astyle</url>
		</repository>
		<repository>
			<id>tika</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/modelio-integ/apache/tika</url>
		</repository>
		<repository>
			<id>jena</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/modelio-integ/apache/jena</url>
		</repository>
		<repository>
			<id>xerces</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/modelio-integ/apache/xerces</url>
		</repository>
		<repository>
			<id>oauth</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/modelio-integ/oauth/oauth</url>
		</repository>
		<repository>
			<id>praticalxml</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/modelio-integ/sf-practicalxml/praticalxml</url>
		</repository>
		<repository>
			<id>jdbm</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/modelio-integ/org.jdbm/jdbm</url>
		</repository>

		<!-- Third-party libraries  -->
		<repository>
			<id>logback</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/ch.qos/logback</url>
		</repository>
		<repository>
			<id>commons-compress</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/apache/commons-compress</url>
		</repository>
		<repository>
			<id>commons-lang</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/apache/commons-lang</url>
		</repository>
		<repository>
			<id>freemarker</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/apache/freemarker</url>
		</repository>
		<repository>
			<id>nebula-nattable</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/org.eclipse/nebula-nattable</url>
		</repository>
		<repository>
			<id>nebula</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/org.eclipse/nebula</url>
		</repository>
		<repository>
			<id>gef-draw2d</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/org.eclipse/gef-classic-S202409301913</url>
		</repository>
		<repository>
			<id>uml2</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/org.eclipse/uml2</url>
		</repository>
		<repository>
			<id>emf</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/org.eclipse/emf</url>
		</repository>
		<repository>
			<id>svnkit</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/tmatesoft/svnkit-1.10.10</url>
		</repository>

		<!-- SWT -->
		<repository>
			<id>swt</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/org.eclipse/swt</url>
		</repository>

		<!-- ELK lib -->
		<repository>
			<id>ELK</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/elk</url>
		</repository>
		<repository>
			<id>guava</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/guava</url>
		</repository>
		<repository>
			<id>xtext</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/xtext</url>
		</repository>

		<!-- HttpClient version 4.4  -->
		<repository>
			<id>httpclient</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/rcp-target/apache/httpclient</url>
		</repository>

		<!-- JRE  -->
		<repository>
			<id>openjdk-jre</id>
			<layout>p2</layout>
			<url>file://${modelio.ws.path}/dev-platform/pack-resources/openjdk-jre</url>
		</repository>

	</repositories>

	<build>
		<plugins>

			<plugin>
				<groupId>${tycho-groupid}</groupId>
				<artifactId>tycho-maven-plugin</artifactId>
				<version>${tycho-version}</version>
				<extensions>true</extensions>
				<configuration>
					<resolver>p2</resolver>
				</configuration>
			</plugin>

			<plugin>
				<groupId>${tycho-groupid}</groupId>
				<artifactId>tycho-compiler-plugin</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<useProjectSettings>true</useProjectSettings>
					<extraClasspathElements>
						<extraClasspathElement>
							<groupId>org.modelio</groupId>
							<artifactId>javadesigner</artifactId>
							<version>${javadesigner.annotation.version}</version>
						</extraClasspathElement>
					</extraClasspathElements>
				</configuration>
			</plugin>

			<plugin>
				<groupId>${tycho-groupid}</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>${tycho-groupid}</groupId>
				<artifactId>target-platform-configuration</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<environments>
						<environment>
							<os>linux</os> <ws>gtk</ws> <arch>x86_64</arch>
						</environment>
						<environment>
							<os>win32</os> <ws>win32</ws> <arch>x86_64</arch>
						</environment>
					</environments>
					<target>
						<artifact>
							<groupId>org.modelio</groupId>
							<artifactId>rcp</artifactId>
							<version>6.2.0</version>
						</artifact>
					</target>
				</configuration>
			</plugin>

			<plugin>
				<groupId>${tycho-groupid}</groupId>
				<artifactId>tycho-packaging-plugin</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<strictVersions>false</strictVersions>
					<strictBinIncludes>false</strictBinIncludes>
					<archive>
						<!-- don't create the maven directory (descriptor files) in META-INF -->
						<addMavenDescriptor>false</addMavenDescriptor>
					</archive>
				</configuration>
			</plugin>

		</plugins>

		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>${tycho-groupid}</groupId>
					<artifactId>tycho-maven-plugin</artifactId>
					<version>${tycho-version}</version>
					<extensions>true</extensions>
					<configuration>
						<resolver>p2</resolver>
					</configuration>
				</plugin>
				<plugin>
					<groupId>${tycho-groupid}</groupId>
					<artifactId>tycho-compiler-plugin</artifactId>
					<version>${tycho-version}</version>
					<configuration>
					    <useJDK>BREE</useJDK>
						<encoding>UTF-8</encoding>
						<useProjectSettings>true</useProjectSettings>
						<optimize>false</optimize>
						<showWarnings>true</showWarnings>
						<verbose>false</verbose>
					</configuration>
				</plugin>
				<plugin>
					<groupId>${tycho-groupid}</groupId>
					<artifactId>tycho-surefire-plugin</artifactId>
					<version>${tycho-version}</version>
					<configuration>
						<enableAssertions>true</enableAssertions>
					</configuration>
				</plugin>
				<plugin>
					<groupId>${tycho-groupid}</groupId>
					<artifactId>tycho-source-plugin</artifactId>
					<version>${tycho-version}</version>
					<executions>
						<execution>
							<id>attach-source</id>
							<phase>process-classes</phase>
							<goals>
								<goal>plugin-source</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.eclipse.tycho.extras</groupId>
					<artifactId>target-platform-validation-plugin</artifactId>
					<version>${tycho-version}</version>
					<configuration>
						<checkProvisioning>true</checkProvisioning>
						<checkDependencies>true</checkDependencies>
						<targetFiles>
							<targetFile>rcp.target</targetFile>
						</targetFiles>
					</configuration>
				</plugin>

				<plugin>
					<groupId>${tycho-groupid}</groupId>
					<artifactId>target-platform-configuration</artifactId>
					<version>${tycho-version}</version>
					<configuration>
						<environments>
							<environment>
								<os>linux</os>
								<ws>gtk</ws>
								<arch>x86_64</arch>
							</environment>
							<environment>
								<os>win32</os>
								<ws>win32</ws>
								<arch>x86_64</arch>
							</environment>
						</environments>
					</configuration>
				</plugin>

			</plugins>
		</pluginManagement>

	</build>

	<profiles>

		<profile>
			<id>ci</id>
			<properties>
				<maven.test.skip>true</maven.test.skip>
			</properties>
		</profile>

		<profile>
			<id>realtimebuild</id>
			<properties>
				<maven.test.skip>true</maven.test.skip>
			</properties>
		</profile>

		<profile>
			<!-- the setversion profile is used to set the version for all plugins, features and products -->
			<id>setversion</id>
			<properties>
				<maven.test.skip>true</maven.test.skip>
			</properties>
			<build>
				<plugins>
					<plugin>
						<groupId>org.codehaus.mojo</groupId>
						<artifactId>properties-maven-plugin</artifactId>
						<version>${properties-maven-plugin-version}</version>
					</plugin>
					<plugin>
						<groupId>${tycho-groupid}</groupId>
						<artifactId>tycho-versions-plugin</artifactId>
						<version>${tycho-version}</version>
					</plugin>
				</plugins>
				<pluginManagement>
					<plugins>
						<plugin>
							<groupId>org.codehaus.mojo</groupId>
							<artifactId>properties-maven-plugin</artifactId>
							<version>${properties-maven-plugin-version}</version>
							<executions>
								<execution>
									<phase>validate</phase>
									<goals>
										<goal>read-project-properties</goal>
									</goals>
								<configuration>
									<quiet>true</quiet>
									<files>
										<file>${project.basedir}/pom_version.properties</file>
									</files>
								</configuration>
								</execution>
							</executions>
						</plugin>
						<plugin>
							<groupId>${tycho-groupid}</groupId>
							<artifactId>tycho-versions-plugin</artifactId>
							<version>${tycho-version}</version>
							<executions>
								<execution>
									<id>versions</id>
									<phase>initialize</phase>
									<goals>
										<goal>set-version</goal>
									</goals>
								</execution>
							</executions>
						</plugin>
						<plugin>
							<groupId>${tycho-groupid}</groupId>
							<artifactId>tycho-p2-director-plugin</artifactId>
							<version>${tycho-version}</version>
							<executions>
								<execution>
									<id>versions</id>
									<phase>initialize</phase>
									<goals>
											<goal>director</goal>
									</goals>
									<configuration>
										<verifyOnly>true</verifyOnly>
									</configuration>
								</execution>
							</executions>
						</plugin>
					</plugins>
				</pluginManagement>
			</build>
		</profile>

		<profile>
			<!-- the debug profile displays some additional information -->
			<!--  - Display properties values -->
			<id>debug</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-antrun-plugin</artifactId>
						<version>1.7</version>
						<executions>
							<execution>
								<phase>validate</phase>
								<goals>
									<goal>run</goal>
								</goals>
								<configuration>
									<tasks>
										<echoproperties />
									</tasks>
								</configuration>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>

		<profile>
			<!-- The tests profile enable the Maven tests (surefire, etc.) -->
			<id>tests</id>
			<properties>
				<maven.test.skip>false</maven.test.skip>
			</properties>
		</profile>

	</profiles>

</project>
