<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">
    <!--

    JacORB POM Usage:

    To skip tests pass -DskipTests=true
    To skip javadoc pass -DskipJavadoc=true
    To skip pdf generation (if e.g. pdflatex is not installed) -DskipPDFGeneration

    To deploy and release pass -DperformRelease=true

    -->

    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.sonatype.oss</groupId>
        <artifactId>oss-parent</artifactId>
        <version>7</version>
    </parent>

    <groupId>org.jacorb</groupId>
    <artifactId>jacorb-parent</artifactId>
    <version>3.9</version>
    <packaging>pom</packaging>

    <name>JacORB</name>
    <description>JacORB CORBA Object Request Broker (ORB)</description>
    <url>http://www.jacorb.org</url>

    <licenses>
        <license>
            <name>GNU Lesser General Public License</name>
            <url>https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html</url>
        </license>
    </licenses>

    <scm>
        <connection>scm:git:git@github.com:JacORB/JacORB.git</connection>
        <developerConnection>scm:git:git@github.com@JacORB/JacORB.git</developerConnection>
        <url>https://github.com/JacORB/JacORB</url>
    </scm>

    <issueManagement>
        <system>Bugzilla</system>
        <url>http://www.jacorb.org/cgi-bin/bugzilla/index.cgi</url>
    </issueManagement>

    <organization>
        <name>JacORB</name>
        <url>http://www.jacorb.org</url>
    </organization>

    <developers>
        <developer>
            <name>JacORB Core Team</name>
        </developer>
    </developers>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <!-- GPG key ID we sign the builds with. This can be overridden by other developers -->
        <gpg.keyname>AC874D11CBCACFA9</gpg.keyname>
        <failIfNoTests>false</failIfNoTests>

        <!-- Enforce 1.6 compaatibility -->
        <maven.compiler.target>1.6</maven.compiler.target>
        <maven.compiler.source>1.6</maven.compiler.source>
        <maven.compiler.test.target>1.6</maven.compiler.test.target>
        <maven.compiler.test.source>1.6</maven.compiler.test.source>

        <datetime>${timestamp}</datetime>

        <version.slf4j>1.7.14</version.slf4j>
    </properties>


    <modules>
        <module>idl-compiler</module>
        <module>omgapi</module>
        <module>core</module>
        <module>services</module>
        <module>test/regression</module>
        <module>test/orbreinvoke</module>
        <module>demo</module>
    </modules>


    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.jacorb</groupId>
                <artifactId>jacorb-omgapi</artifactId>
                <version>3.9</version>
            </dependency>
            <dependency>
                <groupId>org.jacorb</groupId>
                <artifactId>jacorb</artifactId>
                <version>3.9</version>
            </dependency>
            <dependency>
                <groupId>org.jacorb</groupId>
                <artifactId>jacorb-idl-compiler</artifactId>
                <version>3.9</version>
            </dependency>
            <dependency>
                <groupId>org.jacorb</groupId>
                <artifactId>jacorb-services</artifactId>
                <version>3.9</version>
            </dependency>

            <!-- External -->
            <dependency>
                <groupId>antlr</groupId>
                <artifactId>antlr</artifactId>
                <version>2.7.2</version>
            </dependency>
            <dependency>
                <groupId>commons-io</groupId>
                <artifactId>commons-io</artifactId>
                <version>2.4</version>
            </dependency>
            <dependency>
                <groupId>easymock</groupId>
                <artifactId>easymock</artifactId>
                <version>1.1</version>
            </dependency>
            <dependency>
                <groupId>java_cup</groupId>
                <artifactId>java_cup</artifactId>
                <version>0.9e</version>
            </dependency>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.11</version>
            </dependency>
            <dependency>
                <groupId>com.github.stefanbirkner</groupId>
                <artifactId>system-rules</artifactId>
                <version>1.7.0</version>
            </dependency>
            <dependency>
                <groupId>mx4j</groupId>
                <artifactId>mx4j</artifactId>
                <version>3.0.1</version>
            </dependency>
            <dependency>
                <groupId>nanocontainer</groupId>
                <artifactId>nanocontainer-remoting</artifactId>
                <version>1.0-RC-1</version>
                <exclusions>
                    <exclusion>
                        <groupId>picocontainer</groupId>
                        <artifactId>picocontainer</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>picocontainer</groupId>
                        <artifactId>picocontainer-gems</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>picocontainer</groupId>
                        <artifactId>picocontainer-tck</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.ant</groupId>
                <artifactId>ant</artifactId>
                <version>1.8.2</version>
            </dependency>
            <dependency>
                <groupId>org.apache.camel</groupId>
                <artifactId>camel-test</artifactId>
                <version>2.13.0</version>
            </dependency>
            <dependency>
                <groupId>org.beanshell</groupId>
                <artifactId>bsh</artifactId>
                <version>2.0b5</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
                <version>${version.slf4j}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-jdk14</artifactId>
                <version>${version.slf4j}</version>
            </dependency>
            <dependency>
                <groupId>picocontainer</groupId>
                <artifactId>picocontainer</artifactId>
                <version>1.2</version>
            </dependency>
            <dependency>
                <groupId>tanukisoft</groupId>
                <artifactId>wrapper</artifactId>
                <version>3.1.0</version>
            </dependency>
        </dependencies>
    </dependencyManagement>


    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-antrun-plugin</artifactId>
                    <version>1.7</version>
                    <dependencies>
                        <dependency>
                            <groupId>org.apache.ant</groupId>
                            <artifactId>ant</artifactId>
                            <version>1.8.2</version>
                        </dependency>
                        <dependency>
                            <groupId>org.apache.ant</groupId>
                            <artifactId>ant-apache-regexp</artifactId>
                            <version>1.8.2</version>
                        </dependency>
                        <dependency>
                            <groupId>org.apache.ant</groupId>
                            <artifactId>ant-junit</artifactId>
                            <version>1.8.2</version>
                        </dependency>
                    </dependencies>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>2.2.2</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.1</version>
                    <configuration>
                        <debug>true</debug>
                        <showDeprecation>true</showDeprecation>
                        <showWarnings>true</showWarnings>
                        <testSource>${maven.compiler.test.source}</testSource>
                        <testTarget>${maven.compiler.test.target}</testTarget>
                        <source>${maven.compiler.source}</source>
                        <target>${maven.compiler.target}</target>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <version>2.8</version>
                    <executions>
                        <execution>
                            <id>copy-dependencies</id>
                            <phase>generate-resources</phase>
                            <goals>
                                <goal>copy-dependencies</goal>
                            </goals>
                            <configuration>
                              <outputDirectory>${basedir}/../lib</outputDirectory>
                                <overWriteReleases>true</overWriteReleases>
                                <overWriteSnapshots>true</overWriteSnapshots>
                                <overWriteIfNewer>true</overWriteIfNewer>
                                <includeGroupIds>org.slf4j,antlr,picocontainer,tanukisoft</includeGroupIds>
                            </configuration>
                        </execution>
                        <!-- slf4j-jdk14 is now a runtime dependency so copy this explicitly -->
                        <execution>
                            <id>copy-dependencies-two</id>
                            <phase>generate-resources</phase>
                            <goals>
                                <goal>copy</goal>
                            </goals>
                            <configuration>
                              <artifactItems>
                                <artifactItem>
                                  <groupId>org.slf4j</groupId>
                                  <artifactId>slf4j-jdk14</artifactId>
                                  <version>${version.slf4j}</version>
                                  <type>jar</type>
                                </artifactItem>
                              </artifactItems>
                              <outputDirectory>${basedir}/../lib</outputDirectory>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-deploy-plugin</artifactId>
                    <version>2.7</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>2.4</version>
                    <configuration>
                        <archive>
                            <index>true</index>
                            <manifest>
                                <addDefaultSpecificationEntries>
                                    true
                                </addDefaultSpecificationEntries>
                                <addDefaultImplementationEntries>
                                    true
                                </addDefaultImplementationEntries>
                            </manifest>
                            <manifestEntries>
                                <Implementation-URL>${project.url}</Implementation-URL>
                                <Java-Version>${java.version}</Java-Version>
                                <Java-Vendor>${java.vendor}</Java-Vendor>
                                <Os-Name>${os.name}</Os-Name>
                                <Os-Arch>${os.arch}</Os-Arch>
                                <Os-Version>${os.version}</Os-Version>
                                <Scm-Url>${project.scm.url}</Scm-Url>
                                <Scm-Connection>${project.scm.connection}</Scm-Connection>
                                <Scm-Revision>${buildNumber}</Scm-Revision>
                                <Build-Timestamp>${datetime}</Build-Timestamp>
                            </manifestEntries>
                        </archive>
                    </configuration>
                </plugin>

                <!-- Generate javadoc. Bound into the package phase for deployment purposes -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>2.10.1</version>
                    <configuration>
                        <skip>${skipJavadoc}</skip>
                        <verbose>false</verbose>
                        <quiet>false</quiet>
                    </configuration>
                    <executions>
                        <execution>
                            <phase>package</phase>
                            <goals>
                                <goal>jar</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-install-plugin</artifactId>
                    <version>2.4</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-project-info-reports-plugin</artifactId>
                    <version>2.7</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>2.6</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-release-plugin</artifactId>
                    <version>2.5</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-source-plugin</artifactId>
                    <version>2.4</version>
                    <executions>
                        <execution>
                            <id>attach-sources</id>
                            <goals>
                                <goal>jar-no-fork</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-site-plugin</artifactId>
                    <version>3.3</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.17</version>
                </plugin>

                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>2.5</version>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>antlr-maven-plugin</artifactId>
                    <version>2.2</version>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>buildnumber-maven-plugin</artifactId>
                    <version>1.3</version>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>exec-maven-plugin</artifactId>
                    <version>1.2.1</version>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.gmaven</groupId>
                    <artifactId>gmaven-plugin</artifactId>
                    <version>1.5</version>
                    <configuration>
                        <providerSelection>1.8</providerSelection>
                    </configuration>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>idlj-maven-plugin</artifactId>
                    <version>1.2.1</version>
                    <configuration>
                        <compiler>jacorb</compiler>
                    </configuration>
                    <dependencies>
                        <dependency>
                            <groupId>org.jacorb</groupId>
                            <artifactId>jacorb-idl-compiler</artifactId>
                            <version>3.9</version>
                        </dependency>
                    </dependencies>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>templating-maven-plugin</artifactId>
                    <version>1.0-alpha-3</version>
                </plugin>


                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>build-helper-maven-plugin</artifactId>
                    <version>1.7</version>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>rmic-maven-plugin</artifactId>
                    <version>1.2.1</version>
                </plugin>

                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>xdoclet-maven-plugin</artifactId>
                    <version>1.0</version>
                </plugin>

                <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
                <plugin>
                    <groupId>org.eclipse.m2e</groupId>
                    <artifactId>lifecycle-mapping</artifactId>
                    <version>1.0.0</version>
                    <configuration>
                        <lifecycleMappingMetadata>
                            <pluginExecutions>
                                <pluginExecution>
                                    <pluginExecutionFilter>
                                        <groupId>
                                            org.apache.cxf
                                        </groupId>
                                        <artifactId>
                                            cxf-codegen-plugin
                                        </artifactId>
                                        <versionRange>
                                            [2.7,)
                                        </versionRange>
                                        <goals>
                                            <goal>wsdl2java</goal>
                                        </goals>
                                    </pluginExecutionFilter>
                                    <action>
                                        <ignore></ignore>
                                    </action>
                                </pluginExecution>
                                <pluginExecution>
                                        <pluginExecutionFilter>
                                                <groupId>
                                                        org.apache.maven.plugins
                                                </groupId>
                                                <artifactId>
                                                        maven-antrun-plugin
                                                </artifactId>
                                                <versionRange>
                                                        [1.7,)
                                                </versionRange>
                                                <goals>
                                                        <goal>run</goal>
                                                </goals>
                                        </pluginExecutionFilter>
                                        <action>
                                                <ignore></ignore>
                                        </action>
                                </pluginExecution>
                                <pluginExecution>
                                        <pluginExecutionFilter>
                                                <groupId>
                                                        org.codehaus.mojo
                                                </groupId>
                                                <artifactId>
                                                        buildnumber-maven-plugin
                                                </artifactId>
                                                <versionRange>
                                                        [1.3,)
                                                </versionRange>
                                                <goals>
                                                        <goal>
                                                                create-timestamp
                                                        </goal>
                                                </goals>
                                        </pluginExecutionFilter>
                                        <action>
                                                <ignore></ignore>
                                        </action>
                                </pluginExecution>
                                <pluginExecution>
                                        <pluginExecutionFilter>
                                                <groupId>
                                                        org.codehaus.mojo
                                                </groupId>
                                                <artifactId>
                                                        idlj-maven-plugin
                                                </artifactId>
                                                <versionRange>
                                                        [1.2.1,)
                                                </versionRange>
                                                <goals>
                                                        <goal>generate</goal>
                                                        <goal>generate-test</goal>
                                                </goals>
                                        </pluginExecutionFilter>
                                        <action>
                                            <ignore></ignore>
                                        </action>
                                </pluginExecution>
                                <pluginExecution>
                                        <pluginExecutionFilter>
                                                <groupId>
                                                        org.codehaus.mojo
                                                </groupId>
                                                <artifactId>
                                                        xdoclet-maven-plugin
                                                </artifactId>
                                                <versionRange>
                                                        [1.0,)
                                                </versionRange>
                                                <goals>
                                                        <goal>xdoclet</goal>
                                                </goals>
                                        </pluginExecutionFilter>
                                        <action>
                                                <ignore></ignore>
                                        </action>
                                </pluginExecution>
                                <pluginExecution>
                                        <pluginExecutionFilter>
                                                <groupId>
                                                        org.codehaus.gmaven
                                                </groupId>
                                                <artifactId>
                                                        gmaven-plugin
                                                </artifactId>
                                                <versionRange>
                                                        [1.5,)
                                                </versionRange>
                                                <goals>
                                                        <goal>execute</goal>
                                                </goals>
                                        </pluginExecutionFilter>
                                        <action>
                                                <ignore></ignore>
                                        </action>
                                </pluginExecution>
                                <pluginExecution>
                                        <pluginExecutionFilter>
                                                <groupId>
                                                        org.codehaus.mojo
                                                </groupId>
                                                <artifactId>
                                                        templating-maven-plugin
                                                </artifactId>
                                                <versionRange>
                                                        [1.0-alpha-3,)
                                                </versionRange>
                                                <goals>
                                                        <goal>filter-sources</goal>
                                                </goals>
                                        </pluginExecutionFilter>
                                        <action>
                                                <ignore></ignore>
                                        </action>
                                </pluginExecution>
                                <pluginExecution>
                                        <pluginExecutionFilter>
                                                <groupId>org.jacoco</groupId>
                                                <artifactId>
                                                        jacoco-maven-plugin
                                                </artifactId>
                                                <versionRange>
                                                        [0.6.4.201312101107,)
                                                </versionRange>
                                                <goals>
                                                        <goal>prepare-agent</goal>
                                                </goals>
                                        </pluginExecutionFilter>
                                        <action>
                                                <ignore></ignore>
                                        </action>
                                </pluginExecution>
                                <pluginExecution>
                                        <pluginExecutionFilter>
                                                <groupId>
                                                        org.codehaus.mojo
                                                </groupId>
                                                <artifactId>
                                                        rmic-maven-plugin
                                                </artifactId>
                                                <versionRange>
                                                        [1.2.1,)
                                                </versionRange>
                                                <goals>
                                                        <goal>test-rmic</goal>
                                                </goals>
                                        </pluginExecutionFilter>
                                        <action>
                                                <ignore></ignore>
                                        </action>
                                </pluginExecution>
                                <pluginExecution>
                                        <pluginExecutionFilter>
                                                <groupId>
                                                        org.apache.maven.plugins
                                                </groupId>
                                                <artifactId>
                                                        maven-dependency-plugin
                                                </artifactId>
                                                <versionRange>
                                                        [2.8,)
                                                </versionRange>
                                                <goals>
                                                        <goal>
                                                                copy-dependencies
                                                        </goal>
                                                </goals>
                                        </pluginExecutionFilter>
                                        <action>
                                                <ignore></ignore>
                                        </action>
                                </pluginExecution>
                            </pluginExecutions>
                        </lifecycleMappingMetadata>
                    </configuration>
                </plugin>

            </plugins>
        </pluginManagement>


        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.7</version>
                <inherited>false</inherited>
                <executions>
                    <execution>
                        <id>cleanLibDirectory</id>
                        <phase>clean</phase>
                        <goals>
                            <goal>run</goal>
                        </goals>
                        <configuration>
                            <target>
                                <delete quiet="true">
                                    <fileset dir="${basedir}/lib" includes="*.jar"/>
                                </delete>
                            </target>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>buildnumber-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>validate</phase>
                        <id>buildnumber</id>
                        <goals>
                            <goal>create</goal>
                        </goals>
                        <configuration>
                            <shortRevisionLength>8</shortRevisionLength>
                            <timestampFormat>{0,date,dd MMMM yyyy}</timestampFormat>
                        </configuration>
                    </execution>
                    <execution>
                        <phase>validate</phase>
                        <id>year</id>
                        <goals>
                            <goal>create-timestamp</goal>
                        </goals>
                        <configuration>
                            <timestampFormat>yyyy</timestampFormat>
                            <timestampPropertyName>releaseYear</timestampPropertyName>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

    <profiles>
        <!-- From http://stackoverflow.com/questions/3080437/jdk-tools-jar-as-maven-dependency -->
        <profile>
            <id>default-profile</id>
            <activation>
                <activeByDefault>true</activeByDefault>
                <file>
                    <exists>${java.home}/../lib/tools.jar</exists>
                </file>
            </activation>
            <properties>
                <toolsjar>${java.home}/../lib/tools.jar</toolsjar>
            </properties>
        </profile>
        <profile>
            <id>mac-profile</id>
            <activation>
                <activeByDefault>false</activeByDefault>
                <file>
                    <exists>${java.home}/../Classes/classes.jar</exists>
                </file>
            </activation>
            <properties>
                <toolsjar>${java.home}/../Classes/classes.jar</toolsjar>
            </properties>
        </profile>

        <!-- Release profile -->
        <profile>
            <id>release-sign-artifacts</id>
            <activation>
                <property>
                    <name>performRelease</name>
                    <value>true</value>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version>1.4</version>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                                <configuration>
                                    <executable>gpg2</executable>
                                    <useAgent>true</useAgent>
                                    <ascDirectory>${project.build.directory}</ascDirectory>
                                    <keyname>${gpg.keyname}</keyname>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>

            <modules>
                <module>release</module>
            </modules>
        </profile>
    </profiles>

</project>
