<?xml version="1.0" encoding="UTF-8"?>
<!--
   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You under the Apache License, Version 2.0
   (the "License"); you may not use this file except in compliance with
   the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<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>

  <name>Apache Jena</name>
  <groupId>org.apache.jena</groupId>
  <artifactId>jena</artifactId>
  <packaging>pom</packaging>
  <url>http://jena.apache.org/</url>
  <version>3.5.0</version>

  <!-- The org.apache:apache version is also in jena-project pom.xml -->
  <parent>
    <groupId>org.apache</groupId>
    <artifactId>apache</artifactId>
    <version>18</version>
  </parent>

  <prerequisites>
    <maven>3.3.5</maven>
  </prerequisites>

  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
    </license>
  </licenses>

  <organization>
    <name>The Apache Software Foundation</name>
    <url>http://www.apache.org/</url>
  </organization>

  <scm>
    <connection>scm:git:https://git-wip-us.apache.org/repos/asf/jena.git</connection>
    <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/jena.git</developerConnection>
    <url>https://git-wip-us.apache.org/repos/asf/jena.git</url>
    <tag>jena-3.5.0-rc2</tag>
  </scm>

  <profiles>
    <profile>
      <!--
          This is the dev profile, typically used locally with 
          "mvn clean install -Pdev".
          It only builds the modules shipped in apache-jena binaries.
      -->
      <id>dev</id>
      <!-- The maven artifacts of the core development modules 
           See profile bootstrap for a first build from empty.
      -->
      <modules>
        <module>jena-project</module>
        <!-- <module>jena-shaded-guava</module>   -->
        <!-- <module>jena-iri</module>            -->
        <module>jena-base</module>
        
        <module>jena-core</module>
        <module>jena-arq</module>
        <module>jena-rdfconnection</module>
        <module>jena-tdb</module>
        <module>jena-db</module> 
        <module>apache-jena-libs</module>

        <module>jena-text</module>
        <!-- <module>jena-text-es</module>        -->
        <module>jena-spatial</module>

        <module>jena-cmds</module>
        <module>jena-fuseki2</module>

        <module>jena-integration-tests</module>

        <!-- Binary distribution -->
        <!-- <module>apache-jena</module>         -->

        <!-- <module>jena-fuseki1</module>        -->
        <!-- <module>jena-csv</module>            -->
        <!-- <module>jena-sdb</module>            -->
        <!-- <module>jena-maven-tools</module>    -->

        <!-- <module>jena-permissions</module>    -->
        <!-- <module>jena-extras</module>         -->
        <!-- <module>jena-jdbc</module>           -->
        <!-- <module>jena-elephas</module>        -->
        <!-- <module>apache-jena-osgi</module>    -->

      </modules>
    </profile>

    <profile>
      <!-- Build to get started, up to Fuseki2.
           Includes modules skipped by "dev".
           Use this (or a full build) when building locally
           and there are no SNAPSHOTs in the "snapshots" repository.
           This profile does a more complete "dev" build,
           does not assume anything is already built,
           and does not include the longer running modules.
      -->
      <id>bootstrap</id>
      <modules>
        <module>jena-project</module>
        <module>jena-shaded-guava</module>
        <module>jena-iri</module> 
        <module>jena-base</module>
        <module>jena-core</module>
        <module>jena-arq</module>
        <module>jena-rdfconnection</module>
        <module>jena-tdb</module>
        <module>jena-db</module>
        <module>apache-jena-libs</module>
        <module>jena-text</module>
        <!--<module>jena-text-es</module>-->
        <module>jena-spatial</module>

        <module>jena-cmds</module>
        <module>jena-fuseki2</module>

        <module>jena-integration-tests</module>
      </modules>
    </profile>
    
    <profile>
      <!--
          This is the complete profile, it builds everything including slow
          building modules and the distribution packages.
      -->
      <id>complete</id>
      <activation>
        <activeByDefault>true</activeByDefault>
        <property>
          <name>profile.complete</name>
          <value>true</value>
        </property>
      </activation>
      <modules>
        <!-- Parent - maven setup -->
        <module>jena-project</module>

        <!-- Basic modules -->
        <module>jena-shaded-guava</module>
        <module>jena-iri</module>
        <module>jena-base</module>

        <!-- Main modules -->
        <module>jena-core</module>
        <module>jena-arq</module>
        <module>jena-rdfconnection</module>
        <module>jena-tdb</module>
        <module>jena-db</module>
        <module>apache-jena-libs</module>

        <module>jena-text</module>
        <module>jena-text-es</module>
        <module>jena-spatial</module>

        <module>jena-cmds</module>
        <module>jena-fuseki2</module>

        <!--
            Tests of artifacts that require additional 
            modules built later in the build process.
            For example, use Fuseki as a test server to
            test remote client APIs.
        -->
        <module>jena-integration-tests</module>
        
        <!-- Binary distribution -->
        <module>apache-jena</module>

        <!-- Old modules -->
        <module>jena-fuseki1</module>
        <module>jena-csv</module>
        <module>jena-sdb</module>
        <module>jena-maven-tools</module>

        <!-- Other -->
        <module>jena-permissions</module>
        <module>jena-extras</module>

        <!-- Slow building modules -->
        <module>jena-jdbc</module>
        <module>jena-elephas</module>
        <module>apache-jena-osgi</module>

      </modules>
    </profile>
  </profiles>

  <mailingLists>
    <mailingList>
      <name>Jena Users Mailing List</name>
      <post>users@jena.apache.org</post>
      <subscribe>users-subscribe@jena.apache.org</subscribe>
      <unsubscribe>users-unsubscribe@jena.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/mod_mbox/jena-users/</archive>
      <otherArchives>
        <otherArchive>http://www.mail-archive.com/users@jena.apache.org/</otherArchive>
        <otherArchive>http://markmail.org/search/?q=list%3Aorg.apache.jena.users</otherArchive>
      </otherArchives>
    </mailingList>
    <mailingList>
      <name>Jena Developers Mailing List</name>
      <post>dev@jena.apache.org</post>
      <subscribe>dev-subscribe@jena.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@jena.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/mod_mbox/jena-dev/</archive>
      <otherArchives>
        <otherArchive>http://www.mail-archive.com/dev@jena.apache.org/</otherArchive>
        <otherArchive>http://markmail.org/search/?q=list%3Aorg.apache.jena.dev</otherArchive>
      </otherArchives>
    </mailingList>
    <mailingList>
      <name>Jena Commits</name>
      <post>commits@jena.apache.org</post>
      <subscribe>commits-subscribe@jena.apache.org</subscribe>
      <unsubscribe>commits-unsubscribe@jena.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/mod_mbox/jena-commits/</archive>
    </mailingList>
  </mailingLists>

  <issueManagement>
    <system>JIRA</system>
    <url>http://issues.apache.org/jira/browse/JENA</url>
  </issueManagement>

</project>
