<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2012, 2018 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
     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.10.0-SNAPSHOT</version>
    <relativePath>../eclipse-platform-parent</relativePath>
  </parent>
  <groupId>eclipse.platform.ua</groupId>
  <artifactId>eclipse.platform.ua</artifactId>
  <packaging>pom</packaging>
  <properties>
    <tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/platform/eclipse.platform.ua.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.help</module>
    <module>org.eclipse.help.base</module>
    <module>org.eclipse.help.ui</module>
    <module>org.eclipse.help.webapp</module>
    <module>org.eclipse.ua.tests</module>
    <module>org.eclipse.ua.tests.doc</module>
    <module>org.eclipse.ui.cheatsheets</module>
    <module>org.eclipse.ui.intro</module>
    <module>org.eclipse.ui.intro.universal</module>

    <module>org.eclipse.ui.intro.quicklinks</module>
    <module>org.eclipse.ui.intro.quicklinks.examples</module>
    <module>org.eclipse.ui.intro.solstice.examples</module>
    
    <module>org.eclipse.tips.core</module>
    <module>org.eclipse.tips.ui</module>
    <module>org.eclipse.tips.ide</module>
    <module>org.eclipse.tips.json</module>
    <module>org.eclipse.tips.feature</module>
    
  </modules>
</project>
