blob: e1d57908418e12f41dbfb07af3f9ecb2ce41d334 [file] [log] [blame]
<?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>
<parent>
<groupId>org.apache</groupId>
<artifactId>apache</artifactId>
<version>18</version>
<!-- Tell Maven that it's OK that we're not attached to the parent directory -->
<relativePath />
</parent>
<!-- The basics. -->
<groupId>org.apache.calcite.avatica</groupId>
<artifactId>avatica-parent</artifactId>
<packaging>pom</packaging>
<version>1.10.0</version>
<!-- More project information. -->
<name>Apache Calcite Avatica Project</name>
<description>Avatica is a JDBC driver framework which is a part of Apache Calcite</description>
<url>https://calcite.apache.org/avatica</url>
<inceptionYear>2012</inceptionYear>
<mailingLists>
<mailingList>
<name>Apache Calcite developers list</name>
<subscribe>dev-subscribe@calcite.apache.org</subscribe>
<unsubscribe>dev-unsubscribe@calcite.apache.org</unsubscribe>
<post>dev@calcite.apache.org</post>
<archive>https://mail-archives.apache.org/mod_mbox/calcite-dev</archive>
</mailingList>
</mailingLists>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<top.dir>${project.basedir}</top.dir>
<avatica.release.version>${project.version}</avatica.release.version>
<version.major>1</version.major>
<version.minor>9</version.minor>
<!-- This list is in alphabetical order. -->
<bouncycastle.version>1.55</bouncycastle.version>
<build-helper-maven-plugin.version>1.9</build-helper-maven-plugin.version>
<checksum-maven-plugin.version>1.2</checksum-maven-plugin.version>
<dropwizard-metrics3.version>3.1.2</dropwizard-metrics3.version>
<forbiddenapis.version>2.3</forbiddenapis.version>
<freemarker.version>2.3.19</freemarker.version>
<git-commit-id-plugin.version>2.1.9</git-commit-id-plugin.version>
<!-- We support guava versions as old as 14.0.1 (the version used by Hive)
but prefer more recent versions. -->
<guava.version>14.0.1</guava.version>
<h2.version>1.4.185</h2.version>
<hamcrest.version>1.3</hamcrest.version>
<hsqldb.version>2.3.1</hsqldb.version>
<httpclient.version>4.5.2</httpclient.version>
<httpcore.version>4.4.4</httpcore.version>
<hydromatic-toolbox.version>0.3</hydromatic-toolbox.version>
<jackson.version>2.6.3</jackson.version>
<jcip-annotations.version>1.0-1</jcip-annotations.version>
<jcommander.version>1.48</jcommander.version>
<jetty.version>9.2.19.v20160908</jetty.version>
<junit.version>4.12</junit.version>
<kerby.version>1.0.0-RC2</kerby.version>
<maven-checkstyle-plugin.version>2.12.1</maven-checkstyle-plugin.version>
<maven-dependency-plugin.version>2.10</maven-dependency-plugin.version>
<!-- Apache 18 has 2.10.3, need 2.10.4 for [MJAVADOC-442]. -->
<maven-javadoc-plugin.version>2.10.4</maven-javadoc-plugin.version>
<maven-scm-provider.version>1.9.4</maven-scm-provider.version>
<maven-shade-plugin.version>2.1</maven-shade-plugin.version>
<mockito.version>2.5.5</mockito.version>
<protobuf.version>3.1.0</protobuf.version>
<scott-data-hsqldb.version>0.1</scott-data-hsqldb.version>
<servlet.version>3.0.1</servlet.version>
<slf4j.version>1.7.13</slf4j.version>
</properties>
<issueManagement>
<system>Jira</system>
<url>https://issues.apache.org/jira/browse/CALCITE</url>
</issueManagement>
<scm>
<connection>scm:git:https://git-wip-us.apache.org/repos/asf/calcite-avatica.git</connection>
<developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/calcite-avatica.git</developerConnection>
<url>https://github.com/apache/calcite-avatica</url>
<tag>test-avatica-1.10.0-elserj-test</tag>
</scm>
<modules>
<module>core</module>
<module>docker</module>
<module>metrics</module>
<module>metrics-dropwizardmetrics3</module>
<module>noop-driver</module>
<module>server</module>
<module>tck</module>
<module>standalone-server</module>
<module>shaded/core</module>
</modules>
<!-- No dependencies here. Declare dependency VERSIONS in
dependencyManagement, below, and each dependency in the module that uses
it. -->
<dependencies />
<dependencyManagement>
<dependencies>
<!-- Sorted by groupId, artifactId; avatica dependencies first. -->
<dependency>
<groupId>org.apache.calcite.avatica</groupId>
<artifactId>avatica</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.calcite.avatica</groupId>
<artifactId>avatica-core</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.calcite.avatica</groupId>
<artifactId>avatica-metrics</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.calcite.avatica</groupId>
<artifactId>avatica-noop</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.calcite.avatica</groupId>
<artifactId>avatica-tck</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.calcite.avatica</groupId>
<artifactId>avatica-server</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.calcite.avatica</groupId>
<artifactId>avatica-core</artifactId>
<version>${project.version}</version>
<type>test-jar</type>
</dependency>
<!-- Now third-party dependencies, sorted by groupId and artifactId. -->
<dependency>
<groupId>com.beust</groupId>
<artifactId>jcommander</artifactId>
<version>${jcommander.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.github.stephenc.jcip</groupId>
<artifactId>jcip-annotations</artifactId>
<version>${jcip-annotations.version}</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>${guava.version}</version>
</dependency>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
<version>${protobuf.version}</version>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>${h2.version}</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>${servlet.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
</dependency>
<dependency>
<groupId>net.hydromatic</groupId>
<artifactId>scott-data-hsqldb</artifactId>
<version>${scott-data-hsqldb.version}</version>
</dependency>
<dependency>
<groupId>org.apache.kerby</groupId>
<artifactId>kerb-client</artifactId>
<version>${kerby.version}</version>
</dependency>
<dependency>
<groupId>org.apache.kerby</groupId>
<artifactId>kerb-core</artifactId>
<version>${kerby.version}</version>
</dependency>
<dependency>
<groupId>org.apache.kerby</groupId>
<artifactId>kerb-simplekdc</artifactId>
<version>${kerby.version}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>${httpclient.version}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcore</artifactId>
<version>${httpcore.version}</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcpkix-jdk15on</artifactId>
<version>${bouncycastle.version}</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcprov-jdk15on</artifactId>
<version>${bouncycastle.version}</version>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>${mockito.version}</version>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
<version>${hamcrest.version}</version>
</dependency>
<dependency>
<groupId>org.hsqldb</groupId>
<artifactId>hsqldb</artifactId>
<version>${hsqldb.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-security</artifactId>
<version>${jetty.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
<version>${jetty.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-util</artifactId>
<version>${jetty.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<extensions>
<extension>
<groupId>kr.motd.maven</groupId>
<artifactId>os-maven-plugin</artifactId>
<version>1.5.0.Final</version>
</extension>
</extensions>
<plugins>
<plugin>
<groupId>de.thetaphi</groupId>
<artifactId>forbiddenapis</artifactId>
<configuration>
<!-- if the used Java version is too new, don't fail, just do nothing: -->
<failOnUnsupportedJava>false</failOnUnsupportedJava>
<bundledSignatures>
<!--
This will automatically choose the right
signatures based on 'maven.compiler.target':
-->
<bundledSignature>jdk-unsafe</bundledSignature>
<bundledSignature>jdk-deprecated</bundledSignature>
<!-- disallow undocumented classes like sun.misc.Unsafe: -->
<bundledSignature>jdk-non-portable</bundledSignature>
</bundledSignatures>
<signaturesFiles>
<signaturesFile>${top.dir}/src/main/config/forbidden-apis/signatures.txt</signaturesFile>
</signaturesFiles>
<excludes>
<exclude>**/org/apache/calcite/avatica/tck/Unsafe.class</exclude>
<exclude>**/org/apache/calcite/avatica/util/Unsafe.class</exclude>
</excludes>
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
<goal>testCheck</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<configuration>
<excludes>
<!-- Do not exclude site/target; it should not exist
in any sandbox from which you are making a
release. Also, do not exclude site/.sass-cache. -->
<!-- Files generated by Jekyll. -->
<exclude>site/_includes/anchor_links.html</exclude>
<exclude>site/_includes/docs_contents.html</exclude>
<exclude>site/_includes/docs_contents_mobile.html</exclude>
<exclude>site/_includes/docs_option.html</exclude>
<exclude>site/_includes/docs_ul.html</exclude>
<exclude>site/_includes/footer.html</exclude>
<exclude>site/_includes/header.html</exclude>
<exclude>site/_includes/news_contents.html</exclude>
<exclude>site/_includes/news_contents_mobile.html</exclude>
<exclude>site/_includes/news_item.html</exclude>
<exclude>site/_includes/primary-nav-items.html</exclude>
<exclude>site/_includes/section_nav.html</exclude>
<exclude>site/_includes/top.html</exclude>
<exclude>site/_layouts/default.html</exclude>
<exclude>site/_layouts/docs.html</exclude>
<exclude>site/_layouts/external.html</exclude>
<exclude>site/_layouts/news.html</exclude>
<exclude>site/_layouts/news_item.html</exclude>
<exclude>site/_layouts/page.html</exclude>
<exclude>site/_sass/**</exclude>
<exclude>site/css/screen.scss</exclude>
<exclude>site/fonts/**</exclude>
<exclude>site/js/**</exclude>
<!-- Images -->
<exclude>site/img/*.png</exclude>
<exclude>site/favicon.ico</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<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>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
<compilerArgument>-Xlint:deprecation</compilerArgument>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<executions>
<execution>
<id>validate</id>
<phase>validate</phase>
<configuration>
<configLocation>${top.dir}/src/main/config/checkstyle/checker.xml</configLocation>
<suppressionsLocation>${top.dir}/src/main/config/checkstyle/suppressions.xml</suppressionsLocation>
<consoleOutput>true</consoleOutput>
<headerLocation>${top.dir}/src/main/config/checkstyle/header.txt</headerLocation>
<failOnViolation>true</failOnViolation>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
</configuration>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>net.hydromatic</groupId>
<artifactId>toolbox</artifactId>
<version>${hydromatic-toolbox.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<!-- override default version 2.8 for access to additional config settings -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>${maven-dependency-plugin.version}</version>
<executions>
<execution>
<id>analyze</id>
<goals>
<goal>analyze-only</goal>
</goals>
<configuration>
<failOnWarning>true</failOnWarning>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<!-- This is the configuration used by "mvn javadoc:javadoc". It is
configured strict, so that it shows errors such as broken links in
javadoc on private methods. The configuration for "mvn site" is
under "reporting", and is more lenient. -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<links>
<link>https://docs.oracle.com/javase/8/docs/api/</link>
</links>
<show>private</show>
</configuration>
</plugin>
<plugin>
<!-- Override apache parent POM's definition of release
plugin. If we don't specify gitexe version, git doesn't
commit during release process. -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.apache.maven.scm</groupId>
<artifactId>maven-scm-provider-gitexe</artifactId>
<version>${maven-scm-provider.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<!-- Make sure every sub-project has LICENSE, NOTICE and
git.properties in its jar's META-INF directory. -->
<executions>
<execution>
<id>add-resource</id>
<phase>generate-resources</phase>
<goals>
<goal>add-resource</goal>
<goal>add-test-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>${top.dir}</directory>
<targetPath>META-INF</targetPath>
<includes>
<include>LICENSE</include>
<include>NOTICE</include>
</includes>
</resource>
<resource>
<directory>${top.dir}/target</directory>
<targetPath>META-INF</targetPath>
<includes>
<include>git.properties</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!-- Sorted by groupId, artifactId. -->
<plugin>
<groupId>com.googlecode.fmpp-maven-plugin</groupId>
<artifactId>fmpp-maven-plugin</artifactId>
<version>${fmpp-maven-plugin.version}</version>
<dependencies>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>${freemarker.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.13</version>
</plugin>
<plugin>
<groupId>de.thetaphi</groupId>
<artifactId>forbiddenapis</artifactId>
<version>${forbiddenapis.version}</version>
</plugin>
<plugin>
<groupId>net.hydromatic</groupId>
<artifactId>hydromatic-resource-maven-plugin</artifactId>
<version>${hydromatic-resource.version}</version>
</plugin>
<plugin>
<groupId>net.ju-n.maven.plugins</groupId>
<artifactId>checksum-maven-plugin</artifactId>
<version>${checksum-maven-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${maven-checkstyle-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<executions>
<execution>
<id>failsafe-integration-test</id>
<goals>
<goal>integration-test</goal>
</goals>
<phase>integration-test</phase>
<configuration>
<threadCount>6</threadCount>
<parallel>both</parallel>
<argLine>-Xmx1024m</argLine>
</configuration>
</execution>
<execution>
<id>failsafe-verify</id>
<goals>
<goal>verify</goal>
</goals>
<phase>verify</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven-javadoc-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>${maven-shade-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-Xmx1536m -XX:MaxPermSize=256m -Duser.timezone=${user.timezone}</argLine>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>${build-helper-maven-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.codehaus.gmaven</groupId>
<artifactId>groovy-maven-plugin</artifactId>
<version>2.0</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>javacc-maven-plugin</artifactId>
<version>${javacc-maven-plugin.version}</version>
</plugin>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
<version>${git-commit-id-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.xolstice.maven.plugins</groupId>
<artifactId>protobuf-maven-plugin</artifactId>
<version>0.5.0</version>
<configuration>
<protocArtifact>com.google.protobuf:protoc:${protobuf.version}:exe:${os.detected.classifier}</protocArtifact>
<protoSourceRoot>${basedir}/src/main/protobuf/</protoSourceRoot>
<outputDirectory>${basedir}/src/main/java/</outputDirectory>
<clearOutputDirectory>false</clearOutputDirectory>
<checkStaleness>true</checkStaleness>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<links>
<link>https://docs.oracle.com/javase/8/docs/api/</link>
</links>
<notimestamp>true</notimestamp>
<windowtitle>Apache Calcite Avatica API</windowtitle>
</configuration>
</plugin>
</plugins>
</reporting>
<repositories>
<repository>
<id>central</id>
<name>Central Repository</name>
<url>http://repo.maven.apache.org/maven2</url>
<layout>default</layout>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<profiles>
<profile>
<!-- This profile adds/overrides few features of the 'apache-release'
profile in the parent pom. -->
<id>apache-release</id>
<build>
<plugins>
<!-- Apache-RAT checks for files without headers.
If run on a messy developer's sandbox, it will fail.
This serves as a reminder to only build a release in a clean
sandbox! -->
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>net.ju-n.maven.plugins</groupId>
<artifactId>checksum-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>artifacts</goal>
</goals>
</execution>
</executions>
<configuration>
<algorithms>
<algorithm>MD5</algorithm>
<algorithm>SHA-1</algorithm>
</algorithms>
<failOnError>false</failOnError>
</configuration>
</plugin>
<!-- Override the parent assembly execution to customize the assembly
descriptor and final name. -->
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>source-release-assembly</id>
<phase>none</phase>
</execution>
<execution>
<id>source-release-assembly-calcite</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
<appendAssemblyId>false</appendAssemblyId>
<descriptor>${top.dir}/src/main/config/assemblies/source-assembly.xml</descriptor>
<finalName>apache-calcite-avatica-${project.version}-src</finalName>
<tarLongFileMode>gnu</tarLongFileMode>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-remote-resources-plugin</artifactId>
<executions>
<execution>
<id>root-resources</id>
<goals>
<goal>process</goal>
</goals>
<configuration>
<runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
<resourceBundles>
<resourceBundle>org.apache:apache-jar-resource-bundle:1.4</resourceBundle>
</resourceBundles>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>it</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<!-- CALCITE-537: workaround for MRRESOURCES-91
Avoid overwrite of the destination file if the produced
contents is the same.
Apache pom overwrites NOTICE, DEPENDENCIES, and LICENSE files, however
we do not want recompile the module every time. -->
<id>skip-apache-licenses</id>
<activation>
<activeByDefault>true</activeByDefault>
<file><exists>target/maven-shared-archive-resources/META-INF/LICENSE</exists></file>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-remote-resources-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<!-- Generate git.properties on first build -->
<id>generate-git-id</id>
<activation>
<activeByDefault>false</activeByDefault>
<!-- Note: <missing> here does NOT support interpolation,
so technically, this profile is active for sub-modules.
It would be nice to use ${top.dir}/target/... here, but
it is not possible.
However sub-modules lack .git folder, so no git.properties
is generated. -->
<file>
<missing>target/git.properties</missing>
</file>
</activation>
<build>
<plugins>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
<inherited>false</inherited>
<executions>
<execution>
<goals>
<goal>revision</goal>
</goals>
</execution>
</executions>
<configuration>
<dateFormat>yyyy-MM-dd'T'HH:mm:ssZ</dateFormat>
<verbose>false</verbose>
<skipPoms>false</skipPoms>
<generateGitPropertiesFile>true</generateGitPropertiesFile>
<generateGitPropertiesFilename>target/git.properties</generateGitPropertiesFilename>
<failOnNoGitDirectory>false</failOnNoGitDirectory>
<gitDescribe>
<skip>false</skip>
<always>false</always>
<abbrev>7</abbrev>
<dirty>-dirty</dirty>
<forceLongFormat>true</forceLongFormat>
</gitDescribe>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>