blob: 6e0fcd0a58333bc9cdd317f83d48276bc493bc2d [file] [log] [blame]
<?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.papyrusrt</groupId>
<artifactId>org.eclipse.papyrusrt.parent</artifactId>
<version>0.7.2-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Papyrus RT</name>
<description>Papyrus Real Time project</description>
<url>https://eclipse.org/papyrusrt/</url>
<inceptionYear>2015</inceptionYear>
<modules>
<module>targetplatform</module>
<module>releng/core</module>
<module>releng/tooling</module>
<module>releng/profile</module>
<!-- <module>releng/codegen</module> -->
<module>releng/tests</module>
<module>releng</module>
</modules>
<properties>
<!-- plugins versions -->
<!-- use 'mvn versions:display-plugin-updates' to check for the latest -->
<tycho-version>0.25.0</tycho-version>
<tychoExtrasVersion>0.25.0</tychoExtrasVersion>
<maven-checkstyle-version>2.12.1</maven-checkstyle-version>
<findbugs.version>3.0.0</findbugs.version>
<maven-findbugs-version>3.0.0</maven-findbugs-version>
<maven-pmd-version>3.1</maven-pmd-version>
<maven-jxr-version>2.3</maven-jxr-version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- default environment overridden by profile, tycho preempts profile -->
<java.source>1.8</java.source>
<java.target>1.8</java.target>
<eclipse.targetrelease>neon.papyrusrelease</eclipse.targetrelease>
<target.version>${project.version}</target.version>
<!-- Platform properties -->
<env.ui.test>-Xms512m -Xmx2048m -XX:MaxPermSize=512M</env.ui.test>
<!-- Default test inclusion patterns (comma-separated list) -->
<test.includes.default>"**/*Test.java,**/*Tests.java,**/*TestCase.java,**/Test*.java"</test.includes.default>
<test.includes>${test.includes.default}</test.includes>
<!-- Default test exclusion patterns (comma-separated list), in case we mistakenly add "all" suites -->
<test.excludes.default>"**/*AllTests.java"</test.excludes.default>
<test.excludes>${test.excludes.default}</test.excludes>
</properties>
<distributionManagement>
<!-- <repository>
<id>repo.eclipse.org</id>
<name>Papyrus RT Repository - Releases </name>
<url>https://repo.eclipse.org/content/repositories/papyrus-rt-releases/</url>
</repository> -->
<snapshotRepository>
<id>repo.eclipse.org</id>
<name>Papyrus RT Repository - Snapshots </name>
<url>https://repo.eclipse.org/content/repositories/papyrus-rt-snapshots/</url>
<uniqueVersion>true</uniqueVersion>
</snapshotRepository>
</distributionManagement>
<organization>
<name>Eclipse foundation</name>
<url>https://www.eclipse.org/</url>
</organization>
<licenses>
<license>
<name>Eclipse Public License</name>
<url>https://www.eclipse.org/legal/epl-v10.html</url>
<distribution>repo</distribution>
</license>
</licenses>
<scm>
<url>https://git.eclipse.org/c/papyrus-rt/org.eclipse.papyrus-rt.git</url>
<connection>scm:git:git://git.eclipse.org/gitroot/papyrus-rt/org.eclipse.papyrus-rt.git</connection>
</scm>
<pluginRepositories>
<pluginRepository>
<id>org.eclipse.cbi.maven.plugins</id>
<name>Eclipse CBI</name>
<url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.10.3</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.3</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>2.18.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.4.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<version>3.0.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.5</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-compiler-plugin</artifactId>
<version>${tycho-version}</version>
</plugin>
<!-- enable tycho build extension -->
<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><!-- enable source bundle generation -->
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-source-plugin</artifactId>
<version>${tycho-version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-source-feature-plugin</artifactId>
<version>${tychoExtrasVersion}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-plugin</artifactId>
<version>${tycho-version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-versions-plugin</artifactId>
<version>${tycho-version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-director-plugin</artifactId>
<version>${tycho-version}</version>
</plugin>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco-version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-surefire-plugin</artifactId>
<version>${tycho-version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<version>${tycho-version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-pack200a-plugin</artifactId>
<version>${tychoExtrasVersion}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-pack200b-plugin</artifactId>
<version>${tychoExtrasVersion}</version>
</plugin>
<plugin>
<groupId>org.eclipse.cbi.maven.plugins</groupId>
<artifactId>eclipse-jarsigner-plugin</artifactId>
<version>1.1.2</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>${java.source}</source>
<target>${java.target}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-compiler-plugin</artifactId>
<configuration>
<source>${java.source}</source>
<target>${java.target}</target>
<optimize>true</optimize>
<showWarnings>true</showWarnings>
</configuration>
</plugin>
<!-- enable tycho build extension -->
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-maven-plugin</artifactId>
<extensions>true</extensions>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-repository-plugin</artifactId>
</plugin>
<plugin><!-- enable source bundle generation -->
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-source-plugin</artifactId>
<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>
<executions>
<execution>
<id>source-feature</id>
<phase>package</phase>
<goals>
<goal>source-feature</goal>
</goals>
<configuration>
<excludes>
<plugin id="org.eclipse.papyrusrt.rcp" />
</excludes>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-plugin</artifactId>
<executions>
<execution>
<id>attach-p2-metadata</id>
<phase>package</phase>
<goals>
<goal>p2-metadata</goal>
</goals>
</execution>
</executions>
<configuration>
<defaultP2Metadata>false</defaultP2Metadata>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-versions-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-surefire-plugin</artifactId>
<configuration>
<failIfNoTests>false</failIfNoTests>
<useUIHarness>true</useUIHarness>
<useUIThread>false</useUIThread>
<!--<showEclipseLog>true</showEclipseLog> -->
<!--<testFailureIgnore>true</testFailureIgnore> -->
<argLine>${ui.test.vmargs}</argLine>
<product>org.eclipse.sdk.ide</product>
<includes>${test.includes}</includes>
<excludes>${test.excludes}</excludes>
<bundleStartLevel>
<bundle>
<id>org.eclipse.equinox.launcher</id>
<level>4</level>
<autoStart>true</autoStart>
</bundle>
</bundleStartLevel>
<dependencies>
<dependency>
<type>p2-installable-unit</type>
<artifactId>org.eclipse.equinox.ds</artifactId>
</dependency>
<dependency>
<type>p2-installable-unit</type>
<artifactId>org.eclipse.equinox.event</artifactId>
</dependency>
<dependency>
<type>p2-installable-unit</type>
<artifactId>org.eclipse.papyrus.sdk.feature.feature.group</artifactId>
</dependency>
</dependencies>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<configuration>
<includePackedArtifacts>true</includePackedArtifacts>
<targetDefinitionIncludeSource>honor</targetDefinitionIncludeSource>
<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>macosx</os>
<ws>cocoa</ws>
<arch>x86_64</arch>
</environment>-->
</environments>
<target>
<artifact>
<groupId>org.eclipse.papyrusrt</groupId>
<artifactId>org.eclipse.papyrusrt.targetplatform.${eclipse.targetrelease}</artifactId>
<version>${target.version}</version>
</artifact>
</target>
</configuration>
</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>
<!-- use this profile if you need to launch sonar or other quality-related
plugins on the built artifacts. -->
<profile>
<id>quality</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${maven-checkstyle-version}</version>
<executions>
<execution>
<id>checkstyle</id>
<phase>verify</phase>
<goals>
<goal>checkstyle</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>${maven-findbugs-version}</version>
<configuration>
<xmlOutput>true</xmlOutput>
<failOnError>false</failOnError>
</configuration>
<executions>
<execution>
<id>findbugs</id>
<phase>verify</phase>
<goals>
<goal>findbugs</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>${maven-pmd-version}</version>
<executions>
<execution>
<id>pmd-cpd</id>
<phase>verify</phase>
<goals>
<goal>pmd</goal>
<goal>cpd</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-surefire-plugin</artifactId>
<version>${tycho-version}</version>
<configuration>
<failIfNoTests>false</failIfNoTests>
<useUIHarness>true</useUIHarness>
<useUIThread>false</useUIThread>
<!--<showEclipseLog>true</showEclipseLog> -->
<!--<testFailureIgnore>true</testFailureIgnore> -->
<argLine>${ui.test.vmargs} ${tycho.testArgLine}</argLine>
<product>org.eclipse.sdk.ide</product>
<includes>${test.includes}</includes>
<excludes>${test.excludes}</excludes>
<bundleStartLevel>
<bundle>
<id>org.eclipse.equinox.launcher</id>
<level>4</level>
<autoStart>true</autoStart>
</bundle>
</bundleStartLevel>
<dependencies>
<dependency>
<type>p2-installable-unit</type>
<artifactId>org.eclipse.equinox.ds</artifactId>
</dependency>
<dependency>
<type>p2-installable-unit</type>
<artifactId>org.eclipse.equinox.event</artifactId>
</dependency>
<dependency>
<type>p2-installable-unit</type>
<artifactId>org.eclipse.papyrus.sdk.feature.feature.group</artifactId>
</dependency>
</dependencies>
</configuration>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId>
</plugin>
</plugins>
</reporting>
</profile>
<profile>
<id>defaultProfile</id>
<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>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>findBugs</id> <!-- Analysis profile. Takes more time -->
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>${findbugs.version}</version>
<configuration>
<findbugsXmlOutput>true</findbugsXmlOutput>
<failOnError>false</failOnError>
<maxHeap>1024</maxHeap>
</configuration>
<executions>
<execution>
<goals>
<goal>check</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>
</plugin>
</plugins>
</build>
</profile>
<!-- Profiles to manage the target eclipse platform environment -->
<profile>
<id>neon</id>
<activation>
<property>
<name>eclipse.release</name>
<value>neon</value>
</property>
</activation>
<properties>
<java.source>1.8</java.source>
<java.target>1.8</java.target>
<eclipse.targetrelease>neon.papyrusrelease</eclipse.targetrelease>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>enforce-java</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireJavaVersion>
<version>1.8.0</version>
</requireJavaVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>packAndSign</id> <!-- Stable release profile. Takes more time. Eclipse servers only -->
<!-- Pack200 -->
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-pack200a-plugin</artifactId>
<version>${tychoExtrasVersion}</version>
<executions>
<execution>
<id>pack200-normalize</id>
<goals>
<goal>normalize</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.cbi.maven.plugins</groupId>
<artifactId>eclipse-jarsigner-plugin</artifactId>
<version>1.0.5</version>
<executions>
<execution>
<id>sign</id>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-pack200b-plugin</artifactId>
<version>${tychoExtrasVersion}</version>
<executions>
<execution>
<id>pack200-pack</id>
<goals>
<goal>pack</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>
<activation>
<property>
<name>SIGN</name>
<value>true</value>
</property>
</activation>
</profile>
<profile>
<id>pack</id> <!-- Nightly profile. Artifacts can be consumed (packed), but are not signed -->
<build>
<plugins>
<!-- Pack200 -->
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-pack200b-plugin</artifactId>
<version>${tychoExtrasVersion}</version>
<executions>
<execution>
<id>pack200-pack</id>
<goals>
<goal>pack</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>
<activation>
<property>
<name>SIGN</name>
<value>false</value>
</property>
</activation>
</profile>
</profiles>
</project>