blob: f7bb1cf57e64be82e5530b86ed4c7321b95fb298 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2012, 2013 Eclipse Foundation and others.
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Distribution License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/org/documents/edl-v10.php
Contributors:
Igor Fedorenko - initial implementation
-->
<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</groupId>
<artifactId>eclipse-platform-parent</artifactId>
<version>4.3.0-SNAPSHOT</version>
<packaging>pom</packaging>
<prerequisites>
<maven>3.0.5</maven>
</prerequisites>
<properties>
<maven.test.skip>true</maven.test.skip>
<maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format>
<buildTimestamp>${maven.build.timestamp}</buildTimestamp>
<buildType>I</buildType>
<buildId>${buildType}${buildTimestamp}</buildId>
<tycho.version>0.20.0</tycho.version>
<tycho-extras.version>0.20.0</tycho-extras.version>
<cbi-plugins.version>1.0.4</cbi-plugins.version>
<!--
The tycho-eclipserun-plugin will create its instance of Eclipse from this
'eclipiserun-repo' repository, such as for computing .api-descriptions.
-->
<eclipserun-repo>http://download.eclipse.org/eclipse/updates/4.3/R-4.3.2-201402211700/</eclipserun-repo>
<comparator.repo>http://download.eclipse.org/eclipse/updates/4.3/R-4.3.2-201402211700/</comparator.repo>
<!--
NOTE: this EMF URL must "match" exactly what is in the eclipse-sdk-prereqs.target file.
We use it (the EMF repo) not only for resolving pre-reqs during the build, but also in 'repository' POM for mirroring
a copy of the EMF features into our own repository. This is required since we merely "require" EMF (not "include" it).
And, of course, in the PDE target file, the URL is expected to be the actual URL, not a variable.
-->
<emf-repo.url>http://download.eclipse.org/modeling/emf/emf/updates/2.9.x/base/R201312120545/</emf-repo.url>
<!-- for released versions of Tycho
<tycho-repo.url>https://oss.sonatype.org/content/repositories/public/</tycho-repo.url>
-->
<!-- for staged version 0.20.0 -->
<tycho-repo.url>https://oss.sonatype.org/content/repositories/orgeclipsetycho-1007/</tycho-repo.url>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<cbi-jdt-repo.url>http://build.eclipse.org/eclipse/jdtx/</cbi-jdt-repo.url>
<cbi-jdt-version>3.9.2.v20140316-0144</cbi-jdt-version>
<eclipse-repo.url>https://repo.eclipse.org/content/repositories/releases/</eclipse-repo.url>
<!-- this eclipse-p2-repo.url is specifically for the build individual bundles profile. -->
<eclipse-p2-repo.url>http://download.eclipse.org/eclipse/updates/4.3-M-builds</eclipse-p2-repo.url>
<!--
Production bundles are produced by ignoring the compiler warnings specified
by ${code.ignoredWarnings} (see further down).
Good citizens don't override those default settings for their production bundles.
-->
<code.ignoredWarnings>-warn:-deprecation,raw,unchecked</code.ignoredWarnings>
<!--
Test bundles may override the list of ignored warnings by setting the <code.ignoredWarnings> property to ${tests.ignoredWarnings}:
<properties>
<code.ignoredWarnings>${tests.ignoredWarnings}</code.ignoredWarnings>
</properties>
Good citizens use those default settings for their test bundles.
-->
<tests.ignoredWarnings>-warn:-deprecation,raw,unchecked</tests.ignoredWarnings>
<!--
Valid options: error, warning, and ignore
jgit.dirtyWorkingTree checking was added as of Tycho 0.19.0
see: https://bugs.eclipse.org/419030
-->
<jgit.dirtyWorkingTree>ignore</jgit.dirtyWorkingTree>
</properties>
<distributionManagement>
<repository>
<id>repo.eclipse.org</id>
<name>Eclipse Repository - Releases</name>
<url>https://repo.eclipse.org/content/repositories/eclipse-releases/</url>
</repository>
<snapshotRepository>
<id>repo.eclipse.org</id>
<name>Eclipse Repository - Snapshots</name>
<url>https://repo.eclipse.org/content/repositories/eclipse-snapshots/</url>
</snapshotRepository>
</distributionManagement>
<pluginRepositories>
<pluginRepository>
<id>tycho-staged</id>
<url>${tycho-repo.url}</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>cbi-jdt</id>
<url>${cbi-jdt-repo.url}</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>eclipse</id>
<url>${eclipse-repo.url}</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-maven-plugin</artifactId>
<version>${tycho.version}</version>
<extensions>true</extensions>
</plugin>
<plugin>
<groupId>org.eclipse.cbi.maven.plugins</groupId>
<artifactId>eclipse-cbi-plugin</artifactId>
<version>${cbi-plugins.version}</version>
<executions>
<execution>
<goals>
<goal>generate-api-build-xml</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<configuration>
<target>
<artifact>
<groupId>org.eclipse</groupId>
<artifactId>eclipse-sdk-prereqs</artifactId>
<version>4.3.0-SNAPSHOT</version>
</artifact>
</target>
<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>ppc</arch>
</environment>
<environment>
<os>linux</os>
<ws>gtk</ws>
<arch>ppc64</arch>
</environment>
<environment>
<os>linux</os>
<ws>gtk</ws>
<arch>s390</arch>
</environment>
<environment>
<os>linux</os>
<ws>gtk</ws>
<arch>s390x</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</arch>
</environment>
<environment>
<os>macosx</os>
<ws>cocoa</ws>
<arch>x86_64</arch>
</environment>
<environment>
<os>solaris</os>
<ws>gtk</ws>
<arch>sparc</arch>
</environment>
<environment>
<os>solaris</os>
<ws>gtk</ws>
<arch>x86</arch>
</environment>
<environment>
<os>hpux</os>
<ws>gtk</ws>
<arch>ia64</arch>
</environment>
<environment>
<os>aix</os>
<ws>gtk</ws>
<arch>ppc</arch>
</environment>
<environment>
<os>aix</os>
<ws>gtk</ws>
<arch>ppc64</arch>
</environment>
</environments>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-source-plugin</artifactId>
<configuration>
<archive>
<addMavenDescriptor>false</addMavenDescriptor>
</archive>
</configuration>
<executions>
<execution>
<id>plugin-source</id>
<goals>
<goal>plugin-source</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<id>filter-resources</id>
<goals>
<goal>resources</goal>
</goals>
<phase>process-resources</phase>
<configuration>
<outputDirectory>${project.build.directory}/resources</outputDirectory>
<escapeString>\</escapeString>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<version>${tycho.version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-compiler-plugin</artifactId>
<version>${tycho.version}</version>
<dependencies>
<dependency>
<groupId>org.eclipse.jdt</groupId>
<artifactId>org.eclipse.jdt.core</artifactId>
<version>${cbi-jdt-version}</version>
</dependency>
</dependencies>
<configuration>
<compilerArgument>${code.ignoredWarnings}</compilerArgument>
<compilerArguments>
<verbose/>
<inlineJSR/>
<enableJavadoc/>
<encoding>${project.build.sourceEncoding}</encoding>
<proceedOnError/>
<log>${project.build.directory}/@dot.xml</log>
</compilerArguments>
<showWarnings>true</showWarnings>
<excludeResources>
<exclude>**/package.html</exclude>
</excludeResources>
</configuration>
</plugin>
<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>
<dependency>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-sourceref-jgit</artifactId>
<version>${tycho-extras.version}</version>
</dependency>
</dependencies>
<configuration>
<strictBinIncludes>false</strictBinIncludes>
<format>'v'yyyyMMdd-HHmm</format>
<timestampProvider>jgit</timestampProvider>
<jgit.ignore>
pom.xml
</jgit.ignore>
<jgit.dirtyWorkingTree>${jgit.dirtyWorkingTree}</jgit.dirtyWorkingTree>
<sourceReferences>
<generate>true</generate>
</sourceReferences>
<archive>
<addMavenDescriptor>false</addMavenDescriptor>
</archive>
<additionalFileSets>
<fileSet>
<directory>${project.build.directory}</directory>
<includes>
<include>.api_description</include>
</includes>
</fileSet>
</additionalFileSets>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-surefire-plugin</artifactId>
<version>${tycho.version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-source-plugin</artifactId>
<version>${tycho.version}</version>
<configuration>
<distinctSourceRoots>true</distinctSourceRoots>
<strictSrcIncludes>false</strictSrcIncludes>
<archive>
<addMavenDescriptor>false</addMavenDescriptor>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-director-plugin</artifactId>
<version>${tycho.version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-repository-plugin</artifactId>
<version>${tycho.version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-source-feature-plugin</artifactId>
<version>${tycho-extras.version}</version>
<configuration>
<archive>
<addMavenDescriptor>false</addMavenDescriptor>
</archive>
<reuseBrandingPlugin>false</reuseBrandingPlugin>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-plugin</artifactId>
<version>${tycho.version}</version>
<configuration>
<baselineMode>warn</baselineMode>
<baselineReplace>common</baselineReplace>
<baselineRepositories>
<repository>
<url>${comparator.repo}</url>
</repository>
</baselineRepositories>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<id>patchBuild</id>
<repositories>
<repository>
<!-- use "final release" repository to pull things we are not
rebuilding. Had to put this in parent, or else all patched bundles would need to
reparent.
-->
<id>eclipse432</id>
<url>http://download.eclipse.org/eclipse/updates/4.3/R-4.3.2-201402211700/</url>
<layout>p2</layout>
</repository>
</repositories>
</profile>
<profile>
<id>build-individual-bundles</id>
<repositories>
<repository>
<id>eclipse-p2-repo</id>
<url>${eclipse-p2-repo.url}</url>
<layout>p2</layout>
</repository>
</repositories>
</profile>
<profile>
<id>eclipse-sign</id>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<version>${tycho.version}</version>
<configuration>
<includePackedArtifacts>false</includePackedArtifacts>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-pack200a-plugin</artifactId>
<version>${tycho-extras.version}</version>
<executions>
<execution>
<id>pack200-normalize</id>
<goals>
<goal>normalize</goal>
</goals>
<phase>verify</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.cbi.maven.plugins</groupId>
<artifactId>eclipse-jarsigner-plugin</artifactId>
<version>${cbi-plugins.version}</version>
<executions>
<execution>
<id>sign</id>
<goals>
<goal>sign</goal>
</goals>
<phase>verify</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-pack200b-plugin</artifactId>
<version>${tycho-extras.version}</version>
<executions>
<execution>
<id>pack200-pack</id>
<goals>
<goal>pack</goal>
</goals>
<phase>verify</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-plugin</artifactId>
<version>${tycho.version}</version>
<executions>
<execution>
<id>p2-metadata</id>
<goals>
<goal>p2-metadata</goal>
</goals>
<phase>verify</phase>
</execution>
</executions>
<configuration>
<defaultP2Metadata>false</defaultP2Metadata>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>eclipse-pack</id>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<version>${tycho.version}</version>
<configuration>
<includePackedArtifacts>false</includePackedArtifacts>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-pack200a-plugin</artifactId>
<version>${tycho-extras.version}</version>
<executions>
<execution>
<id>pack200-normalize</id>
<goals>
<goal>normalize</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-pack200b-plugin</artifactId>
<version>${tycho-extras.version}</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>p2-metadata</id>
<goals>
<goal>p2-metadata</goal>
</goals>
<phase>package</phase>
</execution>
</executions>
<configuration>
<defaultP2Metadata>false</defaultP2Metadata>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>bree-libs</id>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-compiler-plugin</artifactId>
<version>${tycho.version}</version>
<configuration>
<!--
this tells Tycho to use JRE libraries that match bundle runtime execution environment
http://wiki.eclipse.org/Tycho/Release_Notes/0.14
TODO provide CBI-specific wiki that explains how to setup BREE libraries and toolchain.xml
-->
<useJDK>BREE</useJDK>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</profile>
<profile>
<id>partial-build</id>
<activation>
<property>
<name>eclipse-sdk-repo.url</name>
</property>
</activation>
<repositories>
<repository>
<id>eclipse-sdk-repo</id>
<url>${eclipse-sdk-repo.url}</url>
<layout>p2</layout>
</repository>
</repositories>
</profile>
<profile>
<id>default-toolsjar</id>
<activation>
<activeByDefault>true</activeByDefault>
<file>
<exists>${java.home}/../lib/tools.jar</exists>
</file>
</activation>
<properties>
<toolsjar>${java.home}/../lib/tools.jar</toolsjar>
</properties>
</profile>
<profile>
<id>missing-toolsjar</id>
<activation>
<activeByDefault>false</activeByDefault>
<file>
<exists>${java.home}/../Classes/classes.jar</exists>
</file>
</activation>
<properties>
<toolsjar>${java.home}/../Classes/classes.jar</toolsjar>
</properties>
</profile>
<profile>
<id>api-generation</id>
<activation>
<property>
<name>!longnotexistingproperty</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-eclipserun-plugin</artifactId>
<!-- this is actually present in any 0.14+ version -->
<version>${tycho-extras.version}</version>
<configuration>
<repositories>
<repository>
<id>eclipse</id>
<layout>p2</layout>
<url>${eclipserun-repo}</url>
</repository>
</repositories>
<!-- this is to fix some lucene 3.x compatibility issue -->
<argLine>-Dhelp.lucene.tokenizer=standard</argLine>
<!-- actuall indexer call -->
<appArgLine>-data target/apibuild-workspace -application org.eclipse.ant.core.antRunner -buildfile target/.apibuild.xml</appArgLine>
<dependencies>
<!-- list of bundles that we need -->
<dependency>
<artifactId>org.eclipse.ant.core</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.apache.ant</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.pde.api.tools</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.pde.build</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.pde.core</artifactId>
<type>eclipse-plugin</type>
</dependency>
<dependency>
<artifactId>org.eclipse.equinox.launcher</artifactId>
<type>eclipse-plugin</type>
</dependency>
</dependencies>
</configuration>
<executions>
<execution>
<goals>
<goal>eclipse-run</goal>
</goals>
<phase>compile</phase>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<!--
This task is to save properties we are explicitly interested in using later,
such as when displaying in other reports or php pages. It depends on having
the "template" file be part of the 'saveproperties' directory. Its only purpose
is to "fill in" the property values named in that file.
-->
<resource>
<directory>saveproperties</directory>
<filtering>true</filtering>
</resource>
</resources>
</build>
</profile>
</profiles>
</project>