<?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>
  <groupId>org.lmdbjava</groupId>
  <artifactId>native</artifactId>
  <version>0.9.33-2</version>
  <packaging>jar</packaging>
  <name>LmdbJava Native Libraries</name>
  <description>Native LMDB libraries for all supported platforms</description>
  <properties>
    <buildnumber-maven-plugin.version>3.2.1</buildnumber-maven-plugin.version>
    <central-publishing-maven-plugin.version>0.9.0</central-publishing-maven-plugin.version>
    <exec-maven-plugin.version>3.6.2</exec-maven-plugin.version>
    <maven-gpg-plugin.version>3.2.7</maven-gpg-plugin.version>
    <maven-jar-plugin.version>3.4.2</maven-jar-plugin.version>
    <maven-release-plugin.version>3.1.1</maven-release-plugin.version>
    <maven-scm-provider-jgit.version>2.2.1</maven-scm-provider-jgit.version>
    <maven.compiler.source>8</maven.compiler.source>
    <maven.compiler.target>8</maven.compiler.target>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <sortpom-maven-plugin.version>4.0.0</sortpom-maven-plugin.version>
    <versions-maven-plugin.version>2.19.1</versions-maven-plugin.version>
  </properties>
  <build>
    <plugins>
      <plugin>
        <groupId>com.github.ekryd.sortpom</groupId>
        <artifactId>sortpom-maven-plugin</artifactId>
        <version>${sortpom-maven-plugin.version}</version>
        <configuration>
          <pomFile>${project.basedir}/pom.xml</pomFile>
          <encoding>${project.build.sourceEncoding}</encoding>
          <predefinedSortOrder>custom_1</predefinedSortOrder>
          <keepBlankLines>true</keepBlankLines>
          <sortDependencies>groupId,artifactId</sortDependencies>
          <sortPlugins>groupId,artifactId</sortPlugins>
          <sortProperties>true</sortProperties>
          <sortModules>false</sortModules>
          <createBackupFile>false</createBackupFile>
          <lineSeparator>\n</lineSeparator>
          <expandEmptyElements>false</expandEmptyElements>
        </configuration>
        <executions>
          <execution>
            <goals>
              <goal>sort</goal>
            </goals>
            <phase>prepare-package</phase>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <version>${maven-jar-plugin.version}</version>
        <configuration>
          <archive>
            <manifest>
              <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
            </manifest>
            <manifestEntries>
              <Implementation-Build>${buildNumber}</Implementation-Build>
            </manifestEntries>
          </archive>
          <includes>
            <include>org/lmdbjava/native/*.so</include>
            <include>org/lmdbjava/native/*.dll</include>
          </includes>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-release-plugin</artifactId>
        <version>${maven-release-plugin.version}</version>
        <configuration>
          <completionGoals>clean</completionGoals>
          <preparationGoals>clean</preparationGoals>
          <useReleaseProfile>false</useReleaseProfile>
          <autoVersionSubmodules>true</autoVersionSubmodules>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>buildnumber-maven-plugin</artifactId>
        <version>${buildnumber-maven-plugin.version}</version>
        <configuration>
          <doCheck>false</doCheck>
          <doUpdate>false</doUpdate>
          <revisionOnScmFailure>UNKNOWN</revisionOnScmFailure>
          <providerImplementations>
            <git>jgit</git>
          </providerImplementations>
          <getRevisionOnlyOnce>true</getRevisionOnlyOnce>
          <shortRevisionLength>7</shortRevisionLength>
        </configuration>
        <dependencies>
          <dependency>
            <groupId>org.apache.maven.scm</groupId>
            <artifactId>maven-scm-provider-jgit</artifactId>
            <version>${maven-scm-provider-jgit.version}</version>
          </dependency>
        </dependencies>
        <executions>
          <execution>
            <goals>
              <goal>create</goal>
            </goals>
            <phase>initialize</phase>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>${exec-maven-plugin.version}</version>
        <executions>
          <execution>
            <id>fetch-native-libraries</id>
            <goals>
              <goal>exec</goal>
            </goals>
            <phase>generate-resources</phase>
            <configuration>
              <executable>${project.basedir}/fetch-native-libs.sh</executable>
              <workingDirectory>${project.basedir}</workingDirectory>
              <environmentVariables>
                <DEST>target/classes/org/lmdbjava/native</DEST>
              </environmentVariables>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>versions-maven-plugin</artifactId>
        <version>${versions-maven-plugin.version}</version>
        <configuration>
          <allowSnapshots>false</allowSnapshots>
          <allowDowngrade>false</allowDowngrade>
          <allowMajorUpdates>false</allowMajorUpdates>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <url>https://github.com/lmdbjava/lmdbjava</url>
  <inceptionYear>2016</inceptionYear>
  <organization>
    <name>The LmdbJava Open Source Project</name>
    <url>https://github.com/lmdbjava</url>
  </organization>
  <licenses>
    <license>
      <name>The OpenLDAP Public License, Version 2.8</name>
      <url>http://www.openldap.org/software/release/license.html</url>
    </license>
  </licenses>
  <developers>
    <developer>
      <id>lmdbjava</id>
      <name>The LmdbJava Open Source Project</name>
      <url>https://github.com/lmdbjava</url>
    </developer>
  </developers>
  <scm>
    <connection>scm:git:git@github.com:lmdbjava/native.git</connection>
    <developerConnection>scm:git:git@github.com:lmdbjava/native.git</developerConnection>
    <url>https://github.com/lmdbjava/native</url>
    <tag>native-0.9.33-2</tag>
  </scm>
  <issueManagement>
    <system>GitHub Issues</system>
    <url>https://github.com/lmdbjava/lmdbjava/issues</url>
  </issueManagement>
  <ciManagement>
    <system>GitHub Actions</system>
    <url>https://github.com/lmdbjava/native/actions</url>
  </ciManagement>
  <profiles>
    <profile>
      <id>central-deploy</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-gpg-plugin</artifactId>
            <version>${maven-gpg-plugin.version}</version>
            <executions>
              <execution>
                <id>sign-artifacts</id>
                <goals>
                  <goal>sign</goal>
                </goals>
                <phase>verify</phase>
                <configuration>
                  <gpgArguments>
                    <arg>--pinentry-mode</arg>
                    <arg>loopback</arg>
                  </gpgArguments>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.sonatype.central</groupId>
            <artifactId>central-publishing-maven-plugin</artifactId>
            <version>${central-publishing-maven-plugin.version}</version>
            <extensions>true</extensions>
            <configuration>
              <publishingServerId>central</publishingServerId>
              <autoPublish>true</autoPublish>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>
