<?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.papyrus.sysml</groupId>
	<artifactId>org.eclipse.papyrus.sysml16.parent</artifactId>
	<version>2.0.0-SNAPSHOT</version>
	<packaging>pom</packaging>
	<name>SysML</name>
	<description>A Papyrus DSML for the SysML 1.6 OMG norm</description>
	<url>https://eclipse.org/papyrus/components/${component.shortname}/</url>
	<inceptionYear>2018</inceptionYear>

	<modules>
		<module>plugins</module>
		<module>tests</module>
		<module>features</module>
		<module>releng</module>
	</modules>

	<properties>
		<component.shortname>sysml16</component.shortname>
		<component.hudson.tabname>Sysml</component.hudson.tabname>
		<component.bugzilla.name>SysML</component.bugzilla.name>
		<component.rcp.name>org.eclipse.papyrus.sysml16.rcp</component.rcp.name>
		<component.servicetype>org.eclipse.papyrus.sysml16.service.types</component.servicetype>
		<tycho.scmUrl>${project.scm.connection}</tycho.scmUrl>

		<!-- platform specific properties -->
		<eclipse.targetrelease>2022-03</eclipse.targetrelease>
		<target.version>2.0.0-SNAPSHOT</target.version> 
		<target.groupId>org.eclipse.papyrus.sysml</target.groupId>
		<target.artifactId>org.eclipse.papyrus.sysml16.targetplatform</target.artifactId>

		<tycho.version>2.2.0</tycho.version>
		<tychoExtras.version>2.2.0</tychoExtras.version>
		<xtext.version>2.23.0</xtext.version>
		<maven.resources.version>3.2.0</maven.resources.version>
		<maven.clean.version>3.1.0</maven.clean.version>
		<mojo.execmaven.version>3.0.0</mojo.execmaven.version>
		<findbugs.version>3.0.5</findbugs.version>
		<maven.compiler.version>3.8.1</maven.compiler.version>
		<!-- https://repo.eclipse.org/content/repositories/cbi-releases/ -->
		<jarSigner.version>1.3.1</jarSigner.version>
		<!-- https://repository.jboss.org/ -->
		<jboss.utils.version>1.7.0</jboss.utils.version>
		<java.source.version>11</java.source.version>
		<java.target.version>11</java.target.version>
		
		<!-- Timestamp used in various places, e.g. the about dialog (see about.mappings) -->
		<eclipse.simultaneous.release.build>${maven.build.timestamp}</eclipse.simultaneous.release.build>
		<!-- Human readable name of the release, e.g. used in the about dialog 
			(see about.mappings)  -->
		<eclipse.simultaneous.release.name>2022-03 (4.23)</eclipse.simultaneous.release.name> 
	</properties>

	<ciManagement>
		<system>Hudson</system>
		<url>https://hudson.eclipse.org/papyrus/view/${component.hudson.tabname}/</url>
	</ciManagement>
	<issueManagement>
		<url>https://bugs.eclipse.org/bugs/buglist.cgi?product=Papyrus&amp;component=${component.bugzilla.name}</url>
		<system>Bugzilla</system>
	</issueManagement>

	<developers>
		<developer>
			<name>Nicolas FAUVRGUE</name>
			<organization>CEA Tech LIST</organization>
			<organizationUrl>http://www-list.cea.fr/</organizationUrl>
			<id>nfauvergue</id>
		</developer>
	</developers>

	<licenses>
		<license>
			<name>Eclipse Public License 2.0</name>
			<url>https://www.eclipse.org/legal/epl-2.0/</url>
			<distribution>repo</distribution>
		</license>
	</licenses>

	<scm>
		<url>https://git.eclipse.org/c/papyrus/org.eclipse.papyrus-${component.shortname}.git</url>
		<connection>scm:git:git://git.eclipse.org/gitroot/papyrus/org.eclipse.papyrus-${component.shortname}.git</connection>
	</scm>


	<pluginRepositories>
		<!-- https://repo.maven.apache.org/maven2/ is being fetched by default -->
		<pluginRepository>
			<id>tycho-snapshots</id>
			<url>https://repo.eclipse.org/content/repositories/tycho-snapshots/</url>
		</pluginRepository>
		<pluginRepository>
			<id>org.eclipse.cbi.maven.plugins</id>
			<name>Eclipse CBI</name>
			<url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
		</pluginRepository>
		<pluginRepository>
			<id>org.jboss.tools.tycho-plugins</id>
			<url>https://repository.jboss.org/</url>
		</pluginRepository>
	</pluginRepositories>

	<repositories>
		<repository>
			<id>license-feature</id>
			<url>https://download.eclipse.org/cbi/updates/license/</url>
			<layout>p2</layout>
		</repository>
	</repositories>

	<build>
		<outputDirectory>bin</outputDirectory>
		<pluginManagement>
			<!-- redistributed plugin configurations -->
			<plugins>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>${maven.compiler.version}</version>
					<configuration>
						<source>${java.source.version}</source>
						<target>${java.target.version}</target>
						<compilerArgs>
							<main.argLine>-Xms512m -Xmx2048m -XX:SoftRefLRUPolicyMSPerMB=100</main.argLine>
						</compilerArgs>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-resources-plugin</artifactId>
					<version>${maven.resources.version}</version>
					<configuration>
						<encoding>UTF-8</encoding>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-clean-plugin</artifactId>
					<version>${maven.clean.version}</version>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>exec-maven-plugin</artifactId>
					<version>${mojo.execmaven.version}</version>
				</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-p2-repository-plugin</artifactId>
					<version>${tycho.version}</version>
				</plugin>
				<plugin>
					<groupId>org.eclipse.tycho</groupId>
					<artifactId>tycho-compiler-plugin</artifactId>
					<version>${tycho.version}</version>
					<configuration>
						<source>${java.source.version}</source>
						<target>${java.target.version}</target>
						<optimize>true</optimize>
						<showWarnings>true</showWarnings>
						<!-- Tycho build using the project's JDT settings. -->
						<useProjectSettings>true</useProjectSettings>
					</configuration>
				</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_64</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>
						<resolveWithExecutionEnvironmentConstraints>false</resolveWithExecutionEnvironmentConstraints>
						<target>
							<artifact>
								<groupId>${target.groupId}</groupId>
								<artifactId>${target.artifactId}</artifactId>
								<version>${target.version}</version>
							</artifact>
						</target>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>

		<plugins>
			<!-- local plugins -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-compiler-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-p2-repository-plugin</artifactId>
			</plugin>

			<!-- Sources -->
			<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.extras</groupId>
				<artifactId>tycho-source-feature-plugin</artifactId>
				<version>${tychoExtras.version}</version>
				<executions>
					<execution>
						<id>source-feature</id>
						<phase>package</phase>
						<goals>
							<goal>source-feature</goal>
						</goals>
						<configuration>
							<excludes>
								<plugin id="${component.rcp.name}" />
							</excludes>
						</configuration>
					</execution>
				</executions>
			</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>${tychoExtras.version}</version>
					</dependency>
				</dependencies>
			</plugin>
		</plugins>
	</build>

	<!-- No profile: Don't produce any artifact (update site). Used by Gerrit 
		findBugs: produce analysis reports. Activation: explicit ("Profiles") packAndSign: 
		produce a stable update site (Packed & signed). Used for releases (+ milestones) 
		only. Activation: SIGN=true pack: produce a simple update site (Packed). 
		Used for nightly or feature branch builds. Activation: SIGN=false -->
	<profiles>
		<profile>
			<id>defaultProfile</id>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
			<build>
				<plugins>
					<plugin>
						<groupId>org.eclipse.tycho</groupId>
						<artifactId>tycho-p2-plugin</artifactId>
						<version>${tycho.version}</version>
						<executions>
							<execution>
								<id>attach-p2-metadata</id>
								<phase>package</phase>
								<goals>
									<goal>p2-metadata</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>

		<!-- Stable release profile. Takes +30min. Eclipse servers only -->
		<profile>
			<id>sign</id>
			<activation>
				<property>
					<name>SIGN</name>
					<value>true</value>
				</property>
			</activation>
			<!-- Pack200 -->
			<build>
				<plugins>
					<plugin>
						<groupId>org.eclipse.cbi.maven.plugins</groupId>
						<artifactId>eclipse-jarsigner-plugin</artifactId>
						<version>${jarSigner.version}</version>
						<executions>
							<execution>
								<id>sign</id>
								<goals>
									<goal>sign</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.eclipse.tycho</groupId>
						<artifactId>tycho-p2-plugin</artifactId>
						<version>${tycho.version}</version>
						<executions>
							<execution>
								<id>attach-p2-metadata</id>
								<phase>package</phase>
								<goals>
									<goal>p2-metadata</goal>
								</goals>
							</execution>
						</executions>
						<configuration>
							<defaultP2Metadata>false</defaultP2Metadata>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>

</project>