<?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>

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

  <groupId>eclipse.platform.releng</groupId>
  <artifactId>eclipse.platform.releng</artifactId>
  <version>4.10.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <properties>
    <tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/platform/eclipse.platform.releng.git</tycho.scmUrl>
  </properties>

  <profiles>
    <profile>
      <id>build-individual-bundles</id>
      <repositories>
        <repository>
          <!-- to resolve parent pom, only useful for individual builds -->
          <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.ant.optional.junit</module>
    <module>bundles/org.eclipse.rcp</module>
    <module>bundles/org.eclipse.releng.tests</module>
    <module>bundles/org.eclipse.releng.tools</module>
    <module>bundles/org.eclipse.sdk.examples</module>
    <module>bundles/org.eclipse.sdk.tests</module>
    <module>bundles/org.eclipse.test</module>
    <module>bundles/org.eclipse.test.performance</module>
    <module>bundles/org.eclipse.test.performance.win32</module>

    <module>features/org.eclipse.help-feature</module>
    <module>features/org.eclipse.platform-feature</module>
    <module>features/org.eclipse.rcp</module>
    <module>features/org.eclipse.releng.tools</module>
    <module>features/org.eclipse.sdk</module>
    <module>features/org.eclipse.sdk.examples-feature</module>
    <module>features/org.eclipse.sdk.tests</module>
    <module>features/org.eclipse.test-feature</module>
  </modules>

</project>
