<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>

    <name>EclipseLink Parent</name>
    <groupId>org.eclipse.persistence</groupId>
    <artifactId>org.eclipse.persistence.parent</artifactId>
    <version>2.5.3-SNAPSHOT</version>
    <packaging>pom</packaging>

    <!-- tycho requires maven >= 3.0 -->
    <prerequisites>
        <maven>3.0</maven>
    </prerequisites>

    <organization>
        <name>Eclipse.org - EclipseLink Project</name>
        <url>http://www.eclipse.org/eclipselink</url>
    </organization>

    <properties>
        <!-- TOOL Properties -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <tycho.version>0.18.0</tycho.version>
        <junit4-version>4.8.1</junit4-version>
        <!-- maven.build.timestamp.format>yyyyMMddHHmm</maven.build.timestamp.format> Seems it must be in settings.xml -->
        <!-- PROJECT Properties -->
        <release.version>2.5.3</release.version>
        <!-- build.qualifier>v${maven.build.timestamp}</build.qualifier -->
        <!-- forceContextQualifier>${build.qualifier}</forceContextQualifier -->
        <build.type>SNAPSHOT</build.type>
        <svn.revision>NA</svn.revision>
        <src>./src</src>
        <!-- BUILD Properties -->
        <orbit.drop>R20130827064939</orbit.drop>
        <!-- orbit.drop>R20130517111416</orbit.drop -->
        <eclipse.drop>kepler</eclipse.drop>
    </properties>

    <!-- Default modules set and added to by all profiles -->
    <modules>
        <module>../../jpa/org.eclipse.persistence.jpa.jpql</module>
        <module>../../foundation/org.eclipse.persistence.core</module>
    </modules>

    <!-- Default repositories set and added to by all profiles -->
    <repositories>
        <repository>
            <id>Orbit</id>
            <layout>p2</layout>
            <url>http://download.eclipse.org/tools/orbit/downloads/drops/${orbit.drop}/repository</url>
        </repository>
        <repository>
            <id>Eclipse</id>
            <layout>p2</layout>
            <url>http://download.eclipse.org/releases/${eclipse.drop}</url>
        </repository>
    </repositories>

    <profiles>
        <profile>
            <id>tycho.local.compdeps</id>
            <activation>
                <property>
                    <name>local.compdeps</name>
                    <value>true</value>
                </property>
            </activation>
            <repositories>
                <repository>
                     <id>Local_CompDeps</id>
                     <layout>p2</layout>
                     <url>file:/${basedir}/../../buildsystem/compdeps/p2repo</url>
                </repository>
             </repositories>
        </profile>
        <profile>
            <id>hosted.compdeps</id>
            <activation>
                <property>
                    <name>local.compdeps</name>
                    <value>false</value>
                </property>
            </activation>
            <repositories>
                <repository>
                    <id>EL_CompDeps</id>
                    <layout>p2</layout>
                    <url>http://archive.eclipse.org/rt/eclipselink/compdeps25-update</url>
                </repository>
             </repositories>
        </profile>
        <profile>
            <id>full-build</id>
            <activation>
              <property>
                <name>eclipselink.full</name>
                <value>true</value>
              </property>
            </activation>
            <modules>
                <module>../../foundation/org.eclipse.persistence.nosql</module>
                <module>../../jpa/org.eclipse.persistence.jpa</module>
                <module>../../jpa/org.eclipse.persistence.jpars</module>
                <module>../../moxy/org.eclipse.persistence.moxy</module>
                <module>../../sdo/org.eclipse.persistence.sdo</module>
                <module>../../dbws/org.eclipse.persistence.dbws</module>
                <module>../../utils/org.eclipse.persistence.dbws.builder</module>
            </modules>
        </profile>
        <profile>
            <id>oracle</id>
            <activation>
              <property>
                <name>oracle</name>
                <value>true</value>
              </property>
            </activation>
            <modules>
                <module>../../foundation/org.eclipse.persistence.nosql</module>
                <module>../../foundation/org.eclipse.persistence.oracle.nosql</module>
                <module>../../foundation/org.eclipse.persistence.oracle</module>
            </modules>
            <repositories>
                <repository>
                    <id>Oracle-local-p2</id>
                    <layout>p2</layout>
                    <url>${oracle.p2.url}</url>
                    <!-- file:/<view_root>/buildsystem/oraclelibs/p2repo/ -->
                </repository>
            </repositories>
        </profile>
        <profile>
            <id>oracle-ext</id>
            <activation>
              <property>
                <name>oracle.ext</name>
                <value>true</value>
              </property>
            </activation>
            <modules>
                <module>../../foundation/org.eclipse.persistence.oracle</module>
            </modules>
            <repositories>
                <repository>
                    <id>Oracle-local-p2</id>
                    <layout>p2</layout>
                    <url>${oracle.p2.url}</url>
                    <!-- file:/<view_root>/buildsystem/oraclelibs/p2repo/ -->
                </repository>
            </repositories>
        </profile>
        <profile>
            <id>oracle-nosql</id>
            <activation>
              <property>
                <name>oracle.nosql</name>
                <value>true</value>
              </property>
            </activation>
            <modules>
                <module>../../foundation/org.eclipse.persistence.nosql</module>
                <module>../../foundation/org.eclipse.persistence.oracle.nosql</module>
            </modules>
            <repositories>
                <repository>
                    <id>Oracle-local-p2</id>
                    <layout>p2</layout>
                    <url>${oracle.p2.url}</url>
                    <!-- file:/<view_root>/buildsystem/oraclelibs/p2repo/ -->
                </repository>
            </repositories>
        </profile>
    </profiles>

    <build>
        <defaultGoal>verify</defaultGoal>
        <!-- section added so tycho won't add the maven poms to the artifacts it builds --> 
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.eclipse.tycho</groupId>
                    <artifactId>tycho-packaging-plugin</artifactId>
                    <version>${tycho.version}</version>
                    <configuration>
                        <archive>
                            <addMavenDescriptor>false</addMavenDescriptor>
                        </archive>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.eclipse.tycho</groupId>
                <artifactId>tycho-compiler-plugin</artifactId>
                <version>${tycho.version}</version>
                <configuration>
                    <!-- Set to force OSGi Compatability settings (defaults to "false") (Only available as of Tycho 0.16.0) -->
                    <!-- requireJREPackageImports>true</requireJREPackageImports -->
                    <!-- compilerArgument>-nowarn</compilerArgument> <disable all warnings -->
                    <!-- compilerArgument>-warn:[+|-]warning_tokens_separated_by_comma - Specify the set of enabled warnings </compilerArgument -->
                    <!-- compilerArgument>-err:warning_tokens_separated_by_comma - convert exactly the listed warnings to errors  </compilerArgument -->
                    <!-- compilerArgument>-err:+warning_tokens_separated_by_comma - convert additional warnings to errors</compilerArgument -->
                    <!-- compilerArgument>-err:-warning_tokens_separated_by_comma - remove specific warnings from being converted to errors </compilerArgument -->
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.eclipse.tycho</groupId>
                <artifactId>tycho-maven-plugin</artifactId>
                <version>${tycho.version}</version>
                <extensions>true</extensions>
                <configuration>
                    <resolver>p2</resolver>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.eclipse.tycho</groupId>
                <artifactId>target-platform-configuration</artifactId>
                <version>${tycho.version}</version>
                <configuration>
                    <pomDependencies>consider</pomDependencies>
                    <resolver>p2</resolver>
                    <environments>
                        <environment>
                            <os>linux</os>
                            <ws>gtk</ws>
                            <arch>x86_64</arch>
                        </environment>
                        <environment>
                            <os>linux</os>
                            <ws>gtk</ws>
                            <arch>x86</arch>
                        </environment>
                        <environment>
                            <os>macosx</os>
                            <ws>carbon</ws>
                            <arch>x86</arch>
                        </environment>
                        <environment>
                            <os>macosx</os>
                            <ws>cocoa</ws>
                            <arch>x86</arch>
                        </environment>
                        <environment>
                            <os>macosx</os>
                            <ws>cocoa</ws>
                            <arch>x86_64</arch>
                        </environment>
                        <environment>
                            <os>win32</os>
                            <ws>win32</ws>
                            <arch>x86</arch>
                        </environment>
                        <environment>
                            <os>win32</os>
                            <ws>win32</ws>
                            <arch>x86_64</arch>
                        </environment>
                    </environments>
                </configuration>
            </plugin>
            <!-- Mostly working source bundle   generation -->
            <plugin>
                <groupId>org.eclipse.tycho</groupId>
                <artifactId>tycho-source-plugin</artifactId>
                <version>${tycho.version}</version>
                <executions>
                    <execution>
                        <id>plugin-source</id>
                        <phase>package</phase>
                        <goals>
                            <goal>plugin-source</goal>
                        </goals>
                        <configuration>
                            <finalName>${project.artifactId}.source_${release.version}.${build.qualifier}</finalName>
                            <sourceBundle>true</sourceBundle>
                            <sourceBundleSuffix>.source</sourceBundleSuffix>
                            <qualifier>${build.qualifier}</qualifier>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.6</version>
                <executions>
                    <execution>
                        <id>inject-common-into-src-bundles</id>
                        <phase>package</phase>
                        <configuration>
                            <target>
                                <zip file="../../target/${project.artifactId}.source_${release.version}.${build.qualifier}.jar" duplicate="preserve">
                                    <zipgroupfileset dir="../../target">
                                        <include name="${project.artifactId}.source_${release.version}.${build.qualifier}-sources.jar"/>
                                    </zipgroupfileset>
                                    <fileset dir="../../buildsystem/org.eclipse.persistence.parent/resource" includes="*.html"/>
                                </zip>
                            </target>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
        <directory>../../target</directory>
        <sourceDirectory>${src}</sourceDirectory>
        <scriptSourceDirectory>./scripts</scriptSourceDirectory>
        <testSourceDirectory>../${testId}/src</testSourceDirectory>
        <outputDirectory>./target/classes</outputDirectory>
        <testOutputDirectory>../${testId}/target/classes</testOutputDirectory>
        <resources>
            <resource>
                <directory>../../buildsystem/org.eclipse.persistence.parent/resource</directory>
            </resource>
        </resources>
        <testResources>
            <testResource>
                <directory>../${testId}/resources</directory>
            </testResource>
        </testResources>
        <finalName>${project.artifactId}_${release.version}.${build.qualifier}</finalName>
    </build>

    <!-- pluginRepositories>
        <pluginRepository>
            <id>tycho-0.16.0-staged</id>
            <url>https://oss.sonatype.org/content/repositories/orgeclipsetycho-207/</url>
        </pluginRepository>
        <pluginRepository>
            <id>tycho-public</id>
            <url>https://oss.sonatype.org/content/groups/public/</url>
        </pluginRepository>
        <pluginRepository>
            <id>maven-eclipse</id>
            <url>http://repo1.maven.org</url>
        </pluginRepository>
    </pluginRepositories -->

</project>
