<?xml version="1.0" encoding="UTF-8"?>
<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">
  <modelVersion>4.0.0</modelVersion>
  
  <!-- PROJECT DESCRIPTION -->
  <groupId>org.polarsys.esf</groupId>
  <artifactId>esf-infra</artifactId>
  <version>0.7.0-SNAPSHOT</version>
  <packaging>pom</packaging>
  <name>ESF</name>
  <description>ESF description.</description>
    
  <!-- DEVELOPERS -->
  <developers>
    <developer>
      <id>JOD</id>
      <name>Jonathan Dumont</name>
      <email>jonathan.dumont@all4tec.net</email>
      <organization>ALL4TEC</organization>
      <organizationUrl>http://www.all4tec.net/</organizationUrl>
      <roles>
        <role>Project leader</role>
      </roles>
      <timezone>+1</timezone>
    </developer>
  
    <developer>
      <id>YUM</id>
      <name>Yupanqui Munoz Julho</name>
      <email>yupanqui.munozjulho@cea.fr</email>
      <organization>CEA List</organization>
      <organizationUrl>www-list.cea.fr/</organizationUrl>
      <roles>
        <role>Project leader</role>
      </roles>
      <timezone>+1</timezone>
    </developer>
  </developers>
  
  <!-- MODULES -->  
  <modules>
    <module>core</module>
    <module>p2</module>
    <module>releng</module>
  </modules>
   
  <!-- REPOSITORIES -->
  <repositories> 
    <repository>
      <id>eclipse-mars</id>
      <layout>p2</layout>
      <url>http://download.eclipse.org/releases/mars</url>
    </repository>
  </repositories>
   
  <!-- BUILD DEFINITION -->
  <build>
    <plugins>
  
      <!-- Tycho plugin -->
      <!-- This is the part which modify default packaging to add those specific to Eclipse RCP -->
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-maven-plugin</artifactId>
        <version>${tycho-version}</version>
        <extensions>true</extensions>
      </plugin>
    
      <!-- Tycho target platform configuration -->
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
          <artifactId>target-platform-configuration</artifactId>
          <version>${tycho-version}</version>
          <configuration>
            <resolver>p2</resolver>
            <environments>
              <environment>
                <os>win32</os>
                <ws>win32</ws>
                <arch>x86_64</arch>
              </environment>
            </environments>
          </configuration>
      </plugin>
      
      <!-- Plugin used to manage the versionning of tycho artifacts -->
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-versions-plugin</artifactId>
        <version>${tycho-version}</version>
      </plugin>
      
      <!-- Plugin used to check the license. -->
      <!-- NB: It's not configured to write the licence header automatically. -->
      <!-- Usage: mvn licence:check -->
      <plugin>
        <groupId>com.mycila</groupId>
        <artifactId>license-maven-plugin</artifactId>
        <version>2.11</version>
        <configuration>
          <header>${session.executionRootDirectory}/releng/licence/epl.header.txt</header>
          <useDefaultExcludes>true</useDefaultExcludes>
          <failIfMissing>true</failIfMissing>
          <!-- Avoid a strict check as the header comment contains also the contributors. -->
          <strictCheck>false</strictCheck>
          <aggregate>true</aggregate>
          <includes>
            <include>**/*.java</include>
          </includes>
          <excludes>
            <exclude>**/src/site/**</exclude>
            <exclude>**/target/**</exclude>
          </excludes>
          <properties>
            <year>2015</year>
          </properties>
        </configuration>
        <executions>
          <execution>
            <phase>process-sources</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  
  <profiles>
    <!-- Profile for tasks specific to the build on Eclipse Hudson instance -->
    <profile>
      <id>build-server</id>
      <build>
        <plugins>
        
          <!-- Plugins configuration to be able to sign the jars built on Eclipse servers -->
          <plugin>
            <groupId>org.eclipse.tycho.extras</groupId>
            <artifactId>tycho-pack200a-plugin</artifactId>
            <version>${tycho-version}</version>
            <executions>
              <execution>
                <id>pack200-normalize</id>
                <goals>
                  <goal>normalize</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
         
          <plugin>
            <groupId>org.eclipse.cbi.maven.plugins</groupId>
            <artifactId>eclipse-jarsigner-plugin</artifactId>
            <version>${tycho-version}</version>
            <executions>
              <execution>
                <id>sign</id>
                <goals>
                  <goal>sign</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
  
          <plugin>
            <groupId>org.eclipse.tycho.extras</groupId>
            <artifactId>tycho-pack200b-plugin</artifactId>
            <version>${tycho-version}</version>
            <executions>
              <execution>
                <id>pack200-pack</id>
                <goals>
                  <goal>pack</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
  
          <!-- Make sure that Tycho generates its p2 metadata after the JAR has been packed -->
          <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>tycho-p2-plugin</artifactId>
            <version>${tycho-version}</version>
            <executions>
              <execution>
                <id>attach-p2-metadata</id>
                <phase>package</phase>
                <goals>
                  <goal>p2-metadata</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <defaultP2Metadata>false</defaultP2Metadata>
            </configuration>
          </plugin>
        
        </plugins>
      </build>
    </profile>
    
 </profiles>
  
  <!-- PROPERTIES -->
  <properties>
    <!-- Product version displayed in the title bar, etc. -->
    <product.version>0.7.0</product.version>
    
    <!-- Tycho plugin version -->
    <tycho-version>0.24.0</tycho-version>
      
    <!-- Enforce used of UTF encoding is mandatory. Otherwise, default platform encoding is used, and some issues appears with differents os constructions -->
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    
    <!-- Sonar properties -->
    <sonar.exclusions>**/src-gen/**/*</sonar.exclusions>
    <sonar.language>java</sonar.language>
  </properties>
  
</project>