<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2010, 2019 Sonatype, Inc, and others.
  All rights reserved. This program and the accompanying materials
  are made available under the terms of the Eclipse Public License v1.0
  which accompanies this distribution, and is available at
  http://www.eclipse.org/legal/epl-v10.html
-->
<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>
  <parent>
    <groupId>org.sonatype.forge</groupId>
    <artifactId>forge-parent</artifactId>
    <version>10</version>
    <relativePath />
  </parent>

  <groupId>org.eclipse.m2e</groupId>
  <artifactId>m2e-core</artifactId>
  <version>1.14.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <name>Maven Integration for Eclipse (parent)</name>
  <description>Maven Integration for Eclipse provides tight integration
		for Maven into the IDE</description>
  <url>http://eclipse.org/m2e</url>
  <inceptionYear>2005</inceptionYear>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

    <m2e-maven-runtime.version>${project.version}</m2e-maven-runtime.version>

    <tycho-version>1.5.1</tycho-version>
    <tycho-extras-version>${tycho-version}</tycho-extras-version>

    <!-- eclipse version m2e is built against -->
    <eclipse.stream>2019-09</eclipse.stream>
    <eclipse-repo.url>http://download.eclipse.org/eclipse/updates/4.13/</eclipse-repo.url>
    <eclipse-simrel.url>http://download.eclipse.org/releases/${eclipse.stream}</eclipse-simrel.url>

    <tycho.testArgLine>-Xmx800m</tycho.testArgLine>
    <tycho.surefire.timeout>7200</tycho.surefire.timeout>
    <jacoco.destFile>../target/jacoco.exec</jacoco.destFile>
  </properties>

  <organization>
    <name>Eclipse Foundation</name>
    <url>http://eclipse.org/m2e</url>
  </organization>

  <licenses>
    <license>
      <name>Eclipse Public License - v 1.0</name>
      <url>http://www.eclipse.org/legal/epl-v10.html</url>
    </license>
  </licenses>

  <issueManagement>
    <url>https://bugs.eclipse.org/bugs/enter_bug.cgi?product=m2e</url>
    <system>Bugzilla</system>
  </issueManagement>

  <repositories>
    <repository>
      <id>platform</id>
      <layout>p2</layout>
      <url>${eclipse-repo.url}</url>
    </repository>
    <repository>
      <id>simrel</id>
      <layout>p2</layout>
      <url>${eclipse-simrel.url}</url>
    </repository>
    <repository>
      <id>eclipse-license</id>
      <layout>p2</layout>
      <url>http://download.eclipse.org/cbi/updates/license</url>
    </repository>
    <repository>
      <id>Orbit 2019-09</id>
      <layout>p2</layout>
      <url>https://download.eclipse.org/tools/orbit/downloads/drops/R20190827152740/repository</url>
    </repository>
  </repositories>

  <pluginRepositories>
    <pluginRepository>
      <id>tycho-snapshots</id>
      <url>https://oss.sonatype.org/content/groups/staging</url>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </pluginRepository>
  </pluginRepositories>

  <modules>
    <module>org.eclipse.m2e.model.edit</module>
    <module>org.eclipse.m2e.core</module>
    <module>org.eclipse.m2e.core.ui</module>
    <module>org.eclipse.m2e.launching</module>
    <module>org.eclipse.m2e.jdt</module>
    <module>org.eclipse.m2e.jdt.ui</module>
    <module>org.eclipse.m2e.refactoring</module>
    <module>org.eclipse.m2e.editor.xml</module>
    <module>org.eclipse.m2e.editor</module>
    <module>org.eclipse.m2e.lifecyclemapping.defaults</module>
    <module>org.eclipse.m2e.discovery</module>
    <module>org.eclipse.m2e.scm</module>
    <module>org.eclipse.m2e.profiles.core</module>
    <module>org.eclipse.m2e.profiles.ui</module>
    <module>org.eclipse.m2e.importer</module>
    <module>org.eclipse.m2e.binaryproject</module>
    <module>org.eclipse.m2e.binaryproject.ui</module>
    <module>org.eclipse.m2e.sourcelookup</module>
    <module>org.eclipse.m2e.sourcelookup.ui</module>

    <!-- common test helpers -->
    <module>org.eclipse.m2e.tests.common</module>

    <!-- Logging -->
    <module>org.eclipse.m2e.logback.appender</module>
    <module>org.eclipse.m2e.logback.configuration</module>

    <!-- features and update site -->
    <module>org.eclipse.m2e.feature</module>
    <module>org.eclipse.m2e.sdk.feature</module>
    <module>org.eclipse.m2e.logback.feature</module>
    <module>org.eclipse.m2e.site</module>

    <!-- testing -->
    <module>org.eclipse.m2e.core.tests</module>
    <module>org.eclipse.m2e.importer.tests</module>
    <module>org.eclipse.m2e.binaryproject.tests</module>
  </modules>


  <dependencies>
    <dependency>
      <groupId>org.eclipse.m2e</groupId>
      <artifactId>org.eclipse.m2e.archetype.common</artifactId>
      <version>${m2e-maven-runtime.version}</version>
    </dependency>
    <dependency>
      <groupId>org.eclipse.m2e</groupId>
      <artifactId>org.eclipse.m2e.maven.indexer</artifactId>
      <version>${m2e-maven-runtime.version}</version>
    </dependency>
    <dependency>
      <groupId>org.eclipse.m2e</groupId>
      <artifactId>org.eclipse.m2e.maven.runtime</artifactId>
      <version>${m2e-maven-runtime.version}</version>
    </dependency>
    <dependency>
      <groupId>org.eclipse.m2e</groupId>
      <artifactId>org.eclipse.m2e.maven.runtime.slf4j.simple</artifactId>
      <version>${m2e-maven-runtime.version}</version>
    </dependency>
    <dependency>
      <groupId>io.takari.m2e.workspace</groupId>
      <artifactId>org.eclipse.m2e.workspace.cli</artifactId>
      <version>0.3.1</version>
    </dependency>
  </dependencies>

  <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.tycho</groupId>
        <artifactId>target-platform-configuration</artifactId>
        <configuration>
          <pomDependencies>consider</pomDependencies>
        </configuration>
      </plugin>
      <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.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <version>0.8.4</version>
        <executions>
          <execution>
            <goals><goal>prepare-agent</goal></goals>
          </execution>
        </executions>
        <configuration>
          <append>true</append>
          <includes>
            <include>org.eclipse.m2e*</include>
            <include>org.apache.maven*</include>
            <include>org.eclipse.aether*</include>
          </includes>
        </configuration>
      </plugin>
    </plugins>

    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-packaging-plugin</artifactId>
          <version>${tycho-version}</version>
          <configuration>
            <format>yyyyMMdd-HHmm</format>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-surefire-plugin</artifactId>
          <version>${tycho-version}</version>
          <configuration>
            <useUIHarness>true</useUIHarness>
            <includes>
              <include>**/*Test.java</include>
            </includes>
            <forkedProcessTimeoutInSeconds>${tycho.surefire.timeout}</forkedProcessTimeoutInSeconds>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-p2-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</groupId>
          <artifactId>tycho-compiler-plugin</artifactId>
          <version>${tycho-version}</version>
        </plugin>
        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-p2-publisher-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.sonarsource.scanner.maven</groupId>
          <artifactId>sonar-maven-plugin</artifactId>
          <version>${sonar-maven-plugin.version}</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>

  <profiles>

    <profile>
      <id>eclipse-sign</id>

      <pluginRepositories>
        <pluginRepository>
          <id>cbi-releases</id>
          <url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
        </pluginRepository>
      </pluginRepositories>

      <build>
        <plugins>
          <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>target-platform-configuration</artifactId>
            <version>${tycho-version}</version>
            <configuration>
              <includePackedArtifacts>true</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.cbi.maven.plugins</groupId>
            <artifactId>eclipse-jarsigner-plugin</artifactId>
            <version>1.1.5</version>
            <executions>
              <execution>
                <id>sign</id>
                <goals>
                  <goal>sign</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <excludeInnerJars>true</excludeInnerJars>
              <resigningStrategy>DO_NOT_RESIGN</resigningStrategy>
            </configuration>
          </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>selfhosted-workspace</id>
      <!--
      This profile is a convenience meant to help setting up m2e development workspace.
      On command line, embedded maven runtime must be built separately, before m2e-core sources tree.
      -->
      <activation>
        <property>
          <name>m2e.version</name>
        </property>
      </activation>
      <modules>
        <module>m2e-maven-runtime</module>
      </modules>
    </profile>

    <profile>
      <id>osx</id>
      <activation>
        <os>
          <family>mac</family>
        </os>
      </activation>
      <properties>
        <tycho.testArgLine>-Xmx800m -Dosgi.ws=cocoa -XstartOnFirstThread</tycho.testArgLine>
      </properties>
      <build>
        <pluginManagement>
          <plugins>
            <plugin>
              <groupId>org.eclipse.tycho</groupId>
              <artifactId>tycho-surefire-plugin</artifactId>
              <version>${tycho-version}</version>
              <configuration>
                <dependencies combine.children="append">
                  <dependency>
                    <artifactId>org.eclipse.jdt.launching.macosx</artifactId>
                    <version>0.0.0</version>
                    <type>eclipse-plugin</type>
                  </dependency>
                  <dependency>
                    <type>eclipse-feature</type>
                    <artifactId>org.eclipse.e4.rcp</artifactId>
                    <version>0.0.0</version>
                  </dependency>
                </dependencies>
              </configuration>
            </plugin>
          </plugins>
        </pluginManagement>
      </build>
    </profile>
    <profile>
      <id>uts</id>
      <modules>
        <module>m2e-core-tests</module>
      </modules>
    </profile>
    <profile>
      <id>its</id>
      <modules>
        <module>m2e-core-tests</module>
      </modules>
    </profile>
  </profiles>

  <developers>
    <developer>
      <id>eu</id>
      <name>Eugene Kuleshov</name>
      <organization>Sonatype Inc.</organization>
      <timezone>-5</timezone>
    </developer>
    <developer>
      <id>jvanzyl</id>
      <name>Jason van Zyl</name>
      <organization>Sonatype Inc.</organization>
      <timezone>-8</timezone>
    </developer>
    <developer>
      <id>vsiveton</id>
      <name>Vincent Siveton</name>
      <email>vsiveton@apache.org</email>
      <organization>ASF</organization>
      <timezone>-5</timezone>
    </developer>
    <developer>
      <id>ifedorenko</id>
      <name>Igor Fedorenko</name>
      <organization>Sonatype Inc.</organization>
      <timezone>-5</timezone>
    </developer>
    <developer>
      <id>akraev</id>
      <name>Anton Kraev</name>
      <timezone>-5</timezone>
    </developer>
    <developer>
      <id>hboutemy</id>
      <name>Hervé Boutemy</name>
    </developer>
    <developer>
      <id>krel</id>
      <name>Lukáš Křečan</name>
    </developer>
    <developer>
      <id>bentmann</id>
      <name>Benjamin Bentmann</name>
      <organization>Sonatype Inc.</organization>
    </developer>
    <developer>
      <id>dip</id>
      <name>Dmitry Platonoff</name>
      <organization>Sonatype Inc.</organization>
    </developer>
    <developer>
      <id>rseddon</id>
      <name>Rich Seddon</name>
      <organization>Sonatype Inc.</organization>
    </developer>
    <developer>
      <id>mkleint</id>
      <name>Milos Kleint</name>
      <organization>Sonatype Inc.</organization>
    </developer>
    <developer>
      <id>prapicau</id>
      <name>Pascal Rapicault</name>
      <organization>Sonatype Inc.</organization>
    </developer>
    <developer>
      <id>ptatavu</id>
      <name>Vlad Tatavu</name>
      <organization>Sonatype Inc.</organization>
    </developer>
    <developer>
      <id>rgould</id>
      <name>Richard Gould</name>
      <organization>Sonatype Inc.</organization>
    </developer>
    <developer>
      <id>fbricon</id>
      <name>Fred Bricon</name>
      <timezone>-5</timezone>
    </developer>
  </developers>

  <mailingLists>
    <mailingList>
      <name>Users List</name>
      <subscribe>m2e-users@eclipse.org</subscribe>
      <unsubscribe>https://dev.eclipse.org/mailman/listinfo/m2e-users</unsubscribe>
      <post>m2e-users@eclipse.org</post>
      <archive>http://dev.eclipse.org/mhonarc/lists/m2e-users</archive>
    </mailingList>
    <mailingList>
      <name>Developer List</name>
      <subscribe>m2e-dev@eclipse.org</subscribe>
      <unsubscribe>https://dev.eclipse.org/mailman/listinfo/m2e-dev</unsubscribe>
      <post>m2e-dev@eclipse.org</post>
      <archive>http://dev.eclipse.org/mhonarc/lists/m2e-dev</archive>
    </mailingList>
  </mailingLists>
</project>
