<?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>
	</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>
		<tycho-version>0.16.0</tycho-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.6.0</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</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.6.0</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>

		<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>