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

  <!-- The basics. -->
  <groupId>net.hydromatic</groupId>
  <artifactId>optiq-parent</artifactId>
  <packaging>pom</packaging>
  <version>0.4.14</version>

  <!-- More project information. -->
  <name>optiq-parent</name>
  <description>Optiq is a dynamic data management framework.</description>
  <url>http://github.com/julianhyde/optiq</url>
  <inceptionYear>2012</inceptionYear>
  <organization>
    <name>Julian Hyde</name>
    <url>http://www.hydromatic.net</url>
  </organization>
  <licenses>
    <license>
      <name>Apache 2</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
    </license>
  </licenses>

  <developers>
    <developer>
      <id>julianhyde</id>
      <name>Julian Hyde</name>
      <email>julianhyde@gmail.com</email>
      <url>https://github.com/julianhyde</url>
      <roles>
        <role>architect</role>
        <role>developer</role>
      </roles>
      <timezone>-8</timezone>
      <properties />
    </developer>
  </developers>

  <mailingLists>
    <mailingList>
      <name>Optiq developers list</name>
      <subscribe>optiq-dev-subscribe@googlegroups.com</subscribe>
      <unsubscribe>optiq-dev-unsubscribe@googlegroups.com</unsubscribe>
      <post>optiq-dev@googlegroups.com</post>
      <archive>http://groups.google.com/group/optiq-dev</archive>
    </mailingList>
  </mailingLists>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <!-- Environment settings. -->
  <distributionManagement>
    <repository>
      <id>conjars</id>
      <name>Concurrent Conjars repository</name>
      <url>http://conjars.org/repo</url>
      <layout>default</layout>
    </repository>
    <site>
      <id>optiq.website</id>
      <name>Optiq Website</name>
      <url>file:/home/jhyde/optiq</url>
    </site>
  </distributionManagement>

  <issueManagement />

  <scm>
    <connection>scm:git:git://github.com/julianhyde/optiq.git</connection>
    <developerConnection>scm:git:git@github.com:julianhyde/optiq.git</developerConnection>
    <url>http://github.com/julianhyde/optiq/tree/master</url>
    <tag>optiq-parent-0.4.14</tag>
  </scm>

  <modules>
    <module>core</module>
    <module>mongodb</module>
    <module>splunk</module>
    <!-- disabled because you need to build spark yourself
    <module>spark</module>
    -->
  </modules>

  <!-- Dependencies. -->
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>[4.8,)</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>eigenbase</groupId>
      <artifactId>eigenbase-xom</artifactId>
      <version>1.3.1</version>
    </dependency>
    <dependency>
      <groupId>eigenbase</groupId>
      <artifactId>eigenbase-properties</artifactId>
      <version>1.1.2</version>
    </dependency>
    <dependency>
      <groupId>eigenbase</groupId>
      <artifactId>eigenbase-resgen</artifactId>
      <version>1.3.1</version>
    </dependency>
    <dependency>
      <groupId>net.hydromatic</groupId>
      <artifactId>linq4j</artifactId>
      <version>0.1.10</version>
    </dependency>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>guava</artifactId>
      <version>14.0.1</version>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.1.1</version>
    </dependency>
    <dependency>
      <groupId>org.codehaus.janino</groupId>
      <artifactId>janino</artifactId>
      <version>2.6.1</version>
    </dependency>
    <dependency>
      <groupId>org.incava</groupId>
      <artifactId>java-diff</artifactId>
      <version>1.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>commons-dbcp</groupId>
      <artifactId>commons-dbcp</artifactId>
      <version>1.4</version>
<!--
      <scope>test</scope>
-->
    </dependency>
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.20</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>sqlline</groupId>
      <artifactId>sqlline</artifactId>
      <version>1.1.2</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>pentaho</groupId>
      <artifactId>mondrian-data-foodmart-queries</artifactId>
      <version>0.3</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <version>2.2.1</version>
        <executions>
          <execution>
            <id>attach-sources</id>
            <phase>verify</phase>
            <goals>
              <goal>jar-no-fork</goal>
              <goal>test-jar-no-fork</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.3.2</version>
        <configuration>
          <source>1.5</source>
          <target>1.5</target>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <version>2.2</version>
        <executions>
          <execution>
            <goals>
              <goal>test-jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-release-plugin</artifactId>
        <version>2.4.1</version>
      </plugin>
    </plugins>
  </build>

  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>2.8.1</version>
        <configuration>
          <links>
            <link>http://docs.oracle.com/javase/7/docs/api/</link>
          </links>
        </configuration>
      </plugin>
    </plugins>
  </reporting>

  <repositories>
    <repository>
      <releases>
        <enabled>true</enabled>
        <updatePolicy>always</updatePolicy>
        <checksumPolicy>warn</checksumPolicy>
      </releases>
      <id>pentaho</id>
      <name>Pentaho</name>
      <url>http://repo.pentaho.org/artifactory/repo</url>
      <layout>default</layout>
    </repository>
    <repository>
      <releases>
        <enabled>true</enabled>
        <updatePolicy>always</updatePolicy>
        <checksumPolicy>warn</checksumPolicy>
      </releases>
      <id>conjars</id>
      <name>Conjars</name>
      <url>http://conjars.org/repo</url>
      <layout>default</layout>
    </repository>
  </repositories>


  <profiles>
    <profile>
      <id>spark</id>
      <modules>
        <module>spark</module>
      </modules>
    </profile>
  </profiles>
</project>
