<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2015 vogella GmbH.
  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:
     Lars Vogel <Lars.Vogel@vogella.com> - initial implementation
     Lars Vogel <Lars.Vogel@vogella.com> - Bug 471835
-->
<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.23.0-SNAPSHOT</version>
    <relativePath>../eclipse-platform-parent</relativePath>
  </parent>

  <groupId>org.eclipse</groupId>
  <artifactId>eclipse.platform.ui.tools</artifactId>
  <packaging>pom</packaging>

	<properties>
		<tycho.scmUrl>scm:git:https://git.eclipse.org/r/platform/org.eclipse.ui.tools.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>./bundles/org.eclipse.e4.tools</module>
    <module>./bundles/org.eclipse.e4.tools.services</module>
    <module>./bundles/org.eclipse.e4.tools.compat</module>
    <module>./bundles/org.eclipse.e4.tools.emf.editor3x</module>
    <module>./bundles/org.eclipse.e4.tools.emf.ui</module>
    <module>./bundles/org.eclipse.e4.tools.jdt.templates</module>
    <module>./tests/org.eclipse.e4.tools.test</module>
    <module>./features/org.eclipse.e4.core.tools.feature</module>
  </modules>

</project>
