<?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.21.0-SNAPSHOT</version>
    <relativePath>../eclipse-platform-parent</relativePath>
  </parent>

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

  <properties>
    <tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/platform/eclipse.platform.text.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.filebuffers.tests</module>
    <module>org.eclipse.jface.text.tests</module>
    <module>org.eclipse.search.tests</module>
    <module>org.eclipse.text.tests</module>
    <module>org.eclipse.ui.editors.tests</module>
    <module>org.eclipse.ui.workbench.texteditor.tests</module>
    <module>org.eclipse.core.filebuffers</module>
    <module>org.eclipse.jface.text</module>
    <module>org.eclipse.text</module>
    <module>org.eclipse.ui.workbench.texteditor</module>
    <module>org.eclipse.ui.editors</module>
    <module>org.eclipse.search</module>
    <module>org.eclipse.ui.examples.javaeditor</module>
    <module>org.eclipse.jface.text.examples</module>
    <!-- Generic editor -->
    <module>org.eclipse.ui.genericeditor</module>
    <module>org.eclipse.ui.genericeditor.tests</module>
    <module>org.eclipse.ui.genericeditor.examples</module>
    <!-- Quick Search -->
    <module>org.eclipse.text.quicksearch</module>
    <module>org.eclipse.text.quicksearch.tests</module>
  </modules>

</project>
