<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2012, 2019 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>

  <parent>
    <groupId>org.eclipse</groupId>
    <artifactId>eclipse-platform-parent</artifactId>
    <version>4.21.0-SNAPSHOT</version>
    <relativePath>../eclipse-platform-parent</relativePath>
  </parent>

  <groupId>eclipse.jdt.core</groupId>
  <artifactId>eclipse.jdt.core</artifactId>
  <packaging>pom</packaging>

  <properties>
    <tycho.scmUrl>scm:git:https://git.eclipse.org/r/jdt/eclipse.jdt.core.git</tycho.scmUrl>
  </properties>

  <!-- 
    To build individual bundles, we specify a repository where to find parent pom, 
    in case it is not in local maven cache already
    and that parent pom also has fuller individual-bundle profile 
    defined that is combined with this one. --> 
  <profiles>
    <profile>
      <id>build-individual-bundles</id>
      <repositories>
        <repository>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
          <id>eclipse-hosted</id>
          <url>https://repo.eclipse.org/content/repositories/eclipse/</url>
        </repository>
      </repositories>
    </profile>
  </profiles>

  <modules>
    <module>org.eclipse.jdt.annotation</module>
    <module>org.eclipse.jdt.annotation_v1</module>
    <module>org.eclipse.jdt.compiler.tool</module>
    <module>org.eclipse.jdt.core</module>
    <module>org.eclipse.jdt.core.formatterapp</module>
    <module>org.eclipse.jdt.compiler.tool.tests</module>
    <module>org.eclipse.jdt.core.tests.builder</module>
    <module>org.eclipse.jdt.core.tests.compiler</module>
    <module>org.eclipse.jdt.core.tests.model</module>
    <module>org.eclipse.jdt.core.tests.performance</module>
    <module>org.eclipse.jdt.apt.core</module>
    <module>org.eclipse.jdt.apt.pluggable.core</module>
    <module>org.eclipse.jdt.apt.ui</module>
    <module>org.eclipse.jdt.compiler.apt</module>
    <module>org.eclipse.jdt.apt.pluggable.tests</module>
    <module>org.eclipse.jdt.apt.tests</module>
    <module>org.eclipse.jdt.compiler.apt.tests</module>
  </modules>
  
  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-toolchains-plugin</artifactId>
          <version>3.0.0</version>
          <executions>
          <execution>
            <phase>validate</phase>
            <goals>
              <goal>toolchain</goal>
            </goals>
          </execution>
          </executions>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>target-platform-configuration</artifactId>
        <configuration>
          <filters>
            <filter>
              <type>osgi-bundle</type>
              <id>org.eclipse.jdt.core.compiler.batch</id>
              <removeAll/>
            </filter>
          </filters>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
