<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2015 l33t labs LLC.
  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:
     Tony McCrary - 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.8.0-SNAPSHOT</version>
    <relativePath>../eclipse-platform-parent</relativePath>
  </parent>

  <groupId>eclipse.images</groupId>
  <artifactId>org.eclipse.images.parent</artifactId>
  <packaging>pom</packaging>
  <name>Eclipse Images</name>

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

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

  <modules>
    <module>org.eclipse.images</module>
    <module>org.eclipse.images.renderer</module>
  </modules>
  <build>
  	<pluginManagement>
  		<plugins>
  			<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
  			<plugin>
  				<groupId>org.eclipse.m2e</groupId>
  				<artifactId>lifecycle-mapping</artifactId>
  				<version>1.0.0</version>
  				<configuration>
  					<lifecycleMappingMetadata>
  						<pluginExecutions>
  							<pluginExecution>
  								<pluginExecutionFilter>
  									<groupId>
  										org.eclipse.cbi.maven.plugins
  									</groupId>
  									<artifactId>
  										eclipse-cbi-plugin
  									</artifactId>
  									<versionRange>
  										[1.0.5,)
  									</versionRange>
  									<goals>
  										<goal>
  											generate-api-build-xml
  										</goal>
  									</goals>
  								</pluginExecutionFilter>
  								<action>
  									<ignore></ignore>
  								</action>
  							</pluginExecution>
  						</pluginExecutions>
  					</lifecycleMappingMetadata>
  				</configuration>
  			</plugin>
  		</plugins>
  	</pluginManagement>
  </build>
</project>
