<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.github.martinpaljak</groupId>
    <artifactId>metacard</artifactId>
    <version>20.08.07</version>
  </parent>
  <groupId>com.github.martinpaljak</groupId>
  <artifactId>capfile</artifactId>
  <version>20.08.12</version>
  <name>CAP file library</name>
  <description>JavaCard CAP parsing</description>
  <url>https://github.com/martinpaljak/capfile</url>
  <inceptionYear>2018</inceptionYear>
  <licenses>
    <license>
      <name>MIT</name>
      <url>https://github.com/martinpaljak/capfile/blob/master/LICENSE</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  <developers>
    <developer>
      <id>martinpaljak</id>
      <name>Martin Paljak</name>
      <email>martin@martinpaljak.net</email>
    </developer>
  </developers>
  <scm>
    <developerConnection>scm:git:git@github.com:martinpaljak/capfile.git</developerConnection>
    <url>https://github.com/martinpaljak/capfile</url>
  </scm>
  <dependencies>
    <dependency>
      <groupId>org.bouncycastle</groupId>
      <artifactId>bcpkix-jdk15on</artifactId>
      <version>1.66</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.yaml</groupId>
      <artifactId>snakeyaml</artifactId>
      <version>1.26</version>
    </dependency>
    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <version>7.3.0</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <plugins>
      <plugin>
        <groupId>com.github.spotbugs</groupId>
        <artifactId>spotbugs-maven-plugin</artifactId>
        <configuration>
          <excludeFilterFile>spotbugs.xml</excludeFilterFile>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-shade-plugin</artifactId>
        <version>3.2.1</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals>
            <configuration>
              <finalName>capfile</finalName>
              <transformers>
                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                  <mainClass>pro.javacard.CAPFileTool</mainClass>
                </transformer>
              </transformers>
              <filters>
                <filter>
                  <artifact>*:*</artifact>
                  <excludes>
                    <exclude>META-INF/*.SF</exclude>
                    <exclude>META-INF/*.DSA</exclude>
                    <exclude>META-INF/*.RSA</exclude>
                    <exclude>META-INF/maven/**</exclude>
                    <exclude>**/module-info.class</exclude>
                  </excludes>
                </filter>
              </filters>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>com.akathist.maven.plugins.launch4j</groupId>
        <artifactId>launch4j-maven-plugin</artifactId>
        <version>1.7.25</version>
        <executions>
          <execution>
            <id>capfile-exe</id>
            <phase>package</phase>
            <goals>
              <goal>launch4j</goal>
            </goals>
            <configuration>
              <headerType>console</headerType>
              <jar>target/capfile.jar</jar>
              <errTitle>capfile</errTitle>
              <classPath>
                <mainClass>pro.javacard.CAPFileTool</mainClass>
              </classPath>
              <jre>
                <minVersion>1.8.0</minVersion>
              </jre>
              <versionInfo>
                <fileVersion>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}.${parsedVersion.buildNumber}</fileVersion>
                <txtFileVersion>${project.version}</txtFileVersion>
                <fileDescription>Parse JavaCard CAP files</fileDescription>
                <copyright>(C) 2018-2020 Martin Paljak (MIT License)</copyright>
                <productVersion>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}.${parsedVersion.buildNumber}</productVersion>
                <txtProductVersion>${project.version}</txtProductVersion>
                <productName>capfile</productName>
                <internalName>capfile</internalName>
                <originalFilename>capfile.exe</originalFilename>
              </versionInfo>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>io.github.zlika</groupId>
        <artifactId>reproducible-build-maven-plugin</artifactId>
      </plugin>
    </plugins>
  </build>
</project>
