<?xml version="1.0" encoding="UTF-8"?>
<!-- ======================================================================= 
	Maven Project Configuration File Eclipse UOMo http://www.eclipse.org/proposals/uomo/ 
	======================================================================= -->

<!-- $Id: pom.xml 306 2012-10-29 20:42:27Z werner.keil $ -->
<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/maven-v4_0_0.xsd">
	<parent>
		<!-- 
		<artifactId>eclipse-parent</artifactId>
		<groupId>org.eclipse</groupId>
		<version>1.0.0</version>
 -->
		<groupId>org.sonatype.oss</groupId>
		<artifactId>oss-parent</artifactId>
		<version>9</version>
	</parent>
	
	<modelVersion>4.0.0</modelVersion>
	<properties>
		<sourceEncoding>UTF-8</sourceEncoding> <!-- in Maven 3. -->
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.build.javaVersion>1.6</project.build.javaVersion>
		<maven.compilerPlugin.version>2.3.2</maven.compilerPlugin.version>
		<uomo-version>0.7.0-SNAPSHOT</uomo-version>
		<tycho-version>0.16.0</tycho-version>
		<icu4j-version>50.1.1</icu4j-version>
		<maven.compiler.source>1.6</maven.compiler.source>
		<maven.compiler.target>1.6</maven.compiler.target>
		<site.basedir>${project.basedir}</site.basedir>
	</properties>

	<groupId>org.eclipse.uomo</groupId>
	<artifactId>org.eclipse.uomo</artifactId>
	<version>0.7.0-SNAPSHOT</version>
	<packaging>pom</packaging>
	<name>Eclipse UOMo</name>

	<!-- =========================================================== -->
	<!-- Developers and Contributors -->
	<!-- =========================================================== -->
	<description>UOMo adds Units of Measurement support for IT Systems and Services both to Language and Data.</description>
	<url>http://www.eclipse.org/uomo/</url>
	<issueManagement>
		<system>Bugzilla</system>
		<url>https://bugs.eclipse.org/bugs/</url>
	</issueManagement>
	<inceptionYear>2010</inceptionYear>
	<developers>
		<developer>
			<name>Werner Keil</name>
			<id>wkeil</id>
			<organization>Creative Arts &amp; Technologies</organization>
			<organizationUrl>http://www.catmedia.us</organizationUrl>
			<email>werner.keil@gmx.net</email>
			<timezone>0</timezone>
			<roles>
				<role>Project Lead</role>
				<role>Architect</role>
				<role>Java Developer</role>
			</roles>
		</developer>
		<developer>
			<name>Chris Senior</name>
			<id>csenior</id>
			<email>christopher.senior@gmail.com</email>
			<organization>Private Individual</organization>
			<roles>
				<role>Architect</role>
				<role>Java Developer</role>
			</roles>
		</developer>
	</developers>
	<contributors>
		<contributor>
			<name>Grahame Grieve</name>
			<!-- id>grahameg</id -->
			<email>grahame@healthintersections.com.au</email>
			<organization>Health Intersections</organization>
			<organizationUrl>http://www.healthintersections.com.au</organizationUrl>
			<roles>
				<role>UCUM Lead emeritus</role>
				<role>Architect</role>
				<role>Java Developer (inactive)</role>
			</roles>
		</contributor>

	</contributors>
	<scm>
		<url>http://git.eclipse.org/c/uomo/org.eclipse.uomo.git/</url>
	</scm>
	<organization>
		<name>Eclipse Foundation</name>
		<url>http://www.eclipse.org</url>
	</organization>
	<modules>
		<module>bundles</module>
		<module>features</module>
		<module>examples</module>
		<module>releng</module>
	</modules>
	<!-- ======================================================= -->
	<!-- Build Settings -->
	<!-- ======================================================= -->
	<build>
		<plugins>
		 <plugin>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.5</version>
    <executions>
      <execution>
        <id>copy-sitedescriptor</id>
        <!-- fetch site.xml before creating site documentation -->
        <phase>pre-site</phase>
        <goals>
          <goal>copy-resources</goal>
        </goals>
        <configuration>
          <outputDirectory>${basedir}/src/site/</outputDirectory>
          <resources>          
            <resource>                  
              <directory>${site.basedir}/src/site/</directory>
              <includes>
                <include>**/site.xml</include>
              </includes>
            </resource>
          </resources>              
        </configuration>            
      </execution>
    </executions>
   </plugin>        
			<plugin>
				<!-- This sets up the target platform in PDE terms The version of Eclipse 
					that the source will be built against -->
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>target-platform-configuration</artifactId>
				<version>${tycho-version}</version>
				<configuration>
					<resolver>p2</resolver>
					<target>
						<artifact>
							<groupId>org.eclipse.uomo</groupId>
							<artifactId>org.eclipse.uomo.target</artifactId>
							<version>0.7.0-SNAPSHOT</version>
							<classifier>indigo</classifier>
						</artifact>
					</target>
					<ignoreTychoRepositories>true</ignoreTychoRepositories>
					<environments>
						<environment>
							<os>win32</os>
							<ws>win32</ws>
							<arch>x86</arch>
						</environment>
						<environment>
							<os>linux</os>
							<ws>gtk</ws>
							<arch>x86</arch>
						</environment>
					</environments>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-maven-plugin</artifactId>
				<version>${tycho-version}</version>
				<extensions>true</extensions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<version>2.4</version>
			</plugin>
			<!-- <plugin> <groupId>org.sonatype.tycho</groupId> <artifactId>maven-osgi-packaging-plugin</artifactId> 
				<version>${tycho-version}</version> <configuration> <archive> <addMavenDescriptor>false</addMavenDescriptor> 
				</archive> </configuration> </plugin> -->
		</plugins>
	</build>


	<!-- ==================================================== -->
	<!-- Repositories. This is where Maven looks for dependencies. The Maven 
		repository is implicit and doesn't need to be specified. -->
	<!-- ==================================================== -->
	<!--  repositories>
		<repository>
			<id>eclipse-public</id>
			<name>Public Eclipse.org Nexus</name>
			<url>http://maven.eclipse.org/nexus/content/groups/public/</url>
		</repository>

		<repository>
			<id>eclipse-central</id>
			<name>Central Eclipse.org Nexus</name>
			<url>http://maven.eclipse.org/nexus/content/groups/central/</url>
		</repository> -->
 	<repositories>
		<repository>
			<id>maven-geotoolkit.org</id>
			<name>GeoToolkit Repository for Maven</name>
			<url>http://maven.geotoolkit.org/</url>
		</repository>
	</repositories>
	<ciManagement>
		<system>Hudson</system>
		<url>https://hudson.eclipse.org/hudson/job/uomo/</url>
	</ciManagement>
</project>