<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2012, 2016 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.24.0-SNAPSHOT</version>
    <relativePath>../eclipse-platform-parent</relativePath>
  </parent>

  <groupId>eclipse.platform.debug</groupId>
  <artifactId>eclipse.platform.debug</artifactId>
  <packaging>pom</packaging>

  <properties>
    <tycho.scmUrl>scm:git:https://git.eclipse.org/r/platform/eclipse.platform.debug.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.core.externaltools</module>
    <module>org.eclipse.core.variables</module>
    <module>org.eclipse.debug.core</module>
    <module>org.eclipse.debug.examples.core</module>
    <module>org.eclipse.debug.examples.memory</module>
    <module>org.eclipse.debug.examples.mixedmode</module>
    <module>org.eclipse.debug.examples.ui</module>
    <module>org.eclipse.debug.tests</module>
    <module>org.eclipse.debug.ui</module>
    <module>org.eclipse.debug.ui.launchview</module>
    <module>org.eclipse.debug.ui.launchview.tests</module>
    <module>org.eclipse.ui.console</module>
    <module>org.eclipse.ui.externaltools</module>
    <module>org.eclipse.unittest.ui</module>
  </modules>
</project>
