<?xml version="1.0" encoding="UTF-8"?>
<!--#======================================================================= -->
<!--# Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany) -->
<!--# All rights reserved. This program and the accompanying materials -->
<!--# are made available under the terms of the Eclipse Public License v1.0 -->
<!--# which accompanies this distribution, and is available at -->
<!--# http://www.eclipse.org/legal/epl-v10.html -->
<!--# -->
<!--# Contributors: -->
<!--#     Christophe Loetz (Loetz GmbH&Co.KG) - initial API and 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.osbp.releng.maven</groupId>
		<artifactId>org.eclipse.osbp.releng.maven.parent.tycho</artifactId>
		<version>0.9.0-SNAPSHOT</version>
		<relativePath/>
	</parent>

	<groupId>org.eclipse.osbp.runtime.web</groupId>
	<artifactId>org.eclipse.osbp.runtime.web.aggregator</artifactId>
	<version>0.9.0-SNAPSHOT</version>
	<packaging>pom</packaging>

	<properties>
        <osbp.gitrepo.name>${project.groupId}</osbp.gitrepo.name>
	</properties>

	<pluginRepositories>
		<pluginRepository>
			<id>vaadin-snapshots</id>
			<url>http://oss.sonatype.org/content/repositories/vaadin-snapshots/</url>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
		</pluginRepository>
	</pluginRepositories>

	<modules>
				<module>org.eclipse.osbp.runtime.web.common</module>
				<module>org.eclipse.osbp.runtime.web.ecview.presentation.vaadin</module>
				<module>org.eclipse.osbp.runtime.web.ecview.services.vaadin</module>
				<module>org.eclipse.osbp.runtime.web.atmosphere.fragment</module>
				
				<module>org.eclipse.osbp.runtime.web.feature.ecview.presentation.vaadin</module>
				<module>org.eclipse.osbp.runtime.web.feature.vaadin.addon.osgi</module>
				<module>org.eclipse.osbp.runtime.web.feature.vaadin.common</module>
				<module>org.eclipse.osbp.runtime.web.feature.vaadin.components</module>
				<module>org.eclipse.osbp.runtime.web.feature.vaadin.databinding</module>
				<module>org.eclipse.osbp.runtime.web.feature.vaadin.osgi</module>

				<module>org.eclipse.osbp.runtime.web.vaadin.common</module>
				<module>org.eclipse.osbp.runtime.web.vaadin.components</module>
				<module>org.eclipse.osbp.runtime.web.vaadin.components.widget</module>
				<module>org.eclipse.osbp.runtime.web.vaadin.databinding</module>
				<module>org.eclipse.osbp.runtime.web.vaadin.osgi</module>
				<module>org.eclipse.osbp.runtime.web.vaadin.widgetset</module>

<!-- 				<module>org.eclipse.osbp.runtime.web.common.tests</module> -->
				<module>org.eclipse.osbp.runtime.web.ecview.presentation.vaadin.tests</module>
<!-- 				<module>org.eclipse.osbp.runtime.web.vaadin.common.tests</module> -->
				<module>org.eclipse.osbp.runtime.web.vaadin.databinding.tests</module>
<!-- 				<module>org.eclipse.osbp.runtime.web.vaadin.osgi.tests</module> -->
			</modules>

	<profiles>
		<profile>
			<id>build.widgetset</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>
			<build>
				<defaultGoal>clean verify</defaultGoal>
			</build>
			<modules>
				<module>org.eclipse.osbp.runtime.web.parent</module>
				<module>org.eclipse.osbp.runtime.web.vaadin.widgetset</module>
			</modules>
		</profile>
	</profiles>

	<build>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.eclipse.tycho</groupId>
					<artifactId>target-platform-configuration</artifactId>
					<version>${tycho-version}</version>
					<configuration>
						<resolver>p2</resolver>
						<pomDependencies>consider</pomDependencies>
						<environments>
							<environment>
								<os>win32</os>
								<ws>win32</ws>
								<arch>x86_64</arch>
							</environment>
							<environment>
								<os>linux</os>
								<ws>gtk</ws>
								<arch>x86</arch>
							</environment>
							<environment>
								<os>linux</os>
								<ws>gtk</ws>
								<arch>x86_64</arch>
							</environment>
							<environment>
								<os>macosx</os>
								<ws>cocoa</ws>
								<arch>x86_64</arch>
							</environment>
						</environments>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
		<plugins>
			<plugin>
				<artifactId>maven-clean-plugin</artifactId>
				<configuration>
					<filesets>
						<fileset>
							<directory>xtend-gen</directory>
							<includes>
								<include>**</include>
							</includes>
						</fileset>
					</filesets>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.eclipse.xtend</groupId>
				<artifactId>xtend-maven-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>compile</goal>
							<goal>testCompile</goal>
						</goals>
						<configuration>
							<outputDirectory>xtend-gen</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>
