<?xml version="1.0" encoding="UTF-8"?>
<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>
  <groupId>com.github.umjammer</groupId>
  <artifactId>vavi-image</artifactId>
  <version>1.0.12</version>
  <name>Vavi Imaging API</name>
  <description>Vavi Imaging API</description>
  <url>https://github.com/umjammer/vavi-image</url>
  <inceptionYear>2017</inceptionYear>
  <organization>
    <name>vavi</name>
  </organization>
  <developers>
    <developer>
      <id>umjammer</id>
      <name>Naohide Sano</name>
      <email>namachapanda2005@gmail.com</email>
    </developer>
  </developers>
  <scm>
    <url>https://github.com/umjammer/vavi-image</url>
  </scm>
  <issueManagement>
    <url>https://github.com/umjammer/vavi-image/issues</url>
  </issueManagement>
  <distributionManagement>
    <repository>
      <id>github</id>
      <url>https://maven.pkg.github.com/umjammer/vavi-image</url>
    </repository>
  </distributionManagement>
  <properties>
    <brew.prefix>/opt/homebrew</brew.prefix>
  </properties>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.junit</groupId>
        <artifactId>junit-bom</artifactId>
        <version>5.10.1</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>com.github.umjammer</groupId>
      <artifactId>vavi-commons</artifactId>
      <version>1.1.10</version>
    </dependency>
    <dependency>
      <groupId>com.github.umjammer</groupId>
      <artifactId>jiu</artifactId>
      <version>0.14.3</version>
    </dependency>
    <dependency>
      <groupId>org.scijava</groupId>
      <artifactId>native-lib-loader</artifactId>
      <version>2.5.0</version>
    </dependency>
    <dependency>
      <groupId>com.github.umjammer</groupId>
      <artifactId>vavi-awt</artifactId>
      <version>1.0.7</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.github.umjammer</groupId>
      <artifactId>javapng-spi</artifactId>
      <version>2.1.3</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-api</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-engine</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.platform</groupId>
      <artifactId>junit-platform-commons</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <repositories>
    <repository>
      <id>jitpack.io</id>
      <url>https://jitpack.io</url>
    </repository>
  </repositories>
  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.11.0</version>
        <configuration>
          <release>17</release>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>3.2.2</version>
        <configuration>
          <argLine>-Djava.util.logging.config.file=${project.build.testOutputDirectory}/logging.properties
            -Djava.library.path=${brew.prefix}/lib</argLine>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <profiles>
    <profile>
      <id>local (not on jitpack)</id>
      <activation>
        <os>
          <family>mac</family>
          <arch>aarch64</arch>
        </os>
        <property>
          <name>env.JITPACK</name>
          <value>!true</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.11.0</version>
            <executions>
              <execution>
                <id>javah</id>
                <phase>compile</phase>
                <goals>
                  <goal>compile</goal>
                </goals>
                <configuration>
                  <compilerArgs>
                    <arg>-h</arg>
                    <arg>${project.build.directory}/native</arg>
                    <arg>-d</arg>
                    <arg>${project.build.directory}/native/classes</arg>
                  </compilerArgs>
                  <includes>
                    <include>vavi/awt/image/resample/FfmpegResampleOp.java</include>
                  </includes>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <artifactId>maven-antrun-plugin</artifactId>
            <version>3.1.0</version>
            <executions>
              <execution>
                <id>javah</id>
                <phase>compile</phase>
                <goals>
                  <goal>run</goal>
                </goals>
                <configuration>
                  <target>
                    <mkdir dir="${project.build.outputDirectory}/natives/osx_arm64" />
                  </target>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>native-maven-plugin</artifactId>
            <version>1.0-alpha-11</version>
            <extensions>true</extensions>
            <executions>
              <execution>
                <id>dylib</id>
                <phase>compile</phase>
                <goals>
                  <goal>compile</goal>
                  <goal>link</goal>
                </goals>
                <configuration>
                  <linkerEndOptions>
                    <linkerEndOption>-o ${project.build.outputDirectory}/natives/osx_arm64/libFfmpegResampleOpWrapper.dylib</linkerEndOption>
                  </linkerEndOptions>
                </configuration>
              </execution>
            </executions>
            <configuration>
              <compilerProvider>generic-classic</compilerProvider>
              <compilerStartOptions>
                <compilerStartOption>-g -Wall -O2 -fomit-frame-pointer -fPIC</compilerStartOption>
                <compilerStartOption>-arch arm64
                      -I${java.home}/include
                      -I${java.home}/include/darwin
                      -I${brew.prefix}/include
                      -I${project.build.directory}/native</compilerStartOption>
              </compilerStartOptions>
              <sources>
                <source>
                  <directory>src/main/native</directory>
                  <fileNames>
                    <fileName>FfmpegResampleOpWrapper.c</fileName>
                  </fileNames>
                </source>
              </sources>
              <linkerStartOptions>
                <linkerStartOption>-dynamiclib -arch arm64 -v
                  -L${brew.prefix}/lib -lobjc -lavformat -lavcodec -lswscale -lavutil</linkerStartOption>
              </linkerStartOptions>
              <linkerFinalName />
            </configuration>
          </plugin>
          <plugin>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.5</version>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>on jitpack</id>
      <activation>
        <property>
          <name>env.JITPACK</name>
          <value>true</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-antrun-plugin</artifactId>
            <version>3.1.0</version>
            <executions>
              <execution>
                <id>assets-download</id>
                <phase>compile</phase>
                <goals>
                  <goal>run</goal>
                </goals>
                <configuration>
                  <target>
                    <mkdir dir="${project.build.outputDirectory}/natives/osx_arm64" />
                    <get usetimestamp="true" src="${project.url}/releases/download/${project.version}/libFfmpegResampleOpWrapper.dylib" dest="${project.build.outputDirectory}/natives/osx_arm64" />
                  </target>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>local</id>
      <activation>
        <file>
          <exists>${basedir}/local.properties</exists>
        </file>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>properties-maven-plugin</artifactId>
            <version>1.1.0</version>
            <executions>
              <execution>
                <id>read-properties</id>
                <phase>initialize</phase>
                <goals>
                  <goal>read-project-properties</goal>
                </goals>
                <configuration>
                  <files>
                    <file>${basedir}/local.properties</file>
                  </files>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <artifactId>maven-antrun-plugin</artifactId>
            <version>3.1.0</version>
            <executions>
              <execution>
                <id>assets-download</id>
                <phase>compile</phase>
                <goals>
                  <goal>run</goal>
                </goals>
                <configuration>
                  <target>
                    <mkdir dir="tmp/src/main/resources/natives/osx_arm64" />
                    <get usetimestamp="true" src="${test.url}" dest="tmp/src/main/resources/natives/osx_arm64" />
                  </target>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>
