<?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.bytedeco</groupId>
  <artifactId>javacpp-platform</artifactId>
  <version>1.5.5</version>

  <name>JavaCPP Platform</name>
  <description>The missing bridge between Java and native C++</description>
  <url>http://bytedeco.org/javacpp/</url>

  <licenses>
    <license>
      <name>Apache License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0</url>
      <distribution>repo</distribution>
    </license>
    <license>
      <name>GNU General Public License (GPL) version 2, or any later version</name>
      <url>http://www.gnu.org/licenses/</url>
      <distribution>repo</distribution>
    </license>
    <license>
      <name>GPLv2 with Classpath exception</name>
      <url>http://www.gnu.org/software/classpath/license.html</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <developers>
    <developer>
      <name>Samuel Audet</name>
      <email>samuel.audet@gmail.com</email>
    </developer>
  </developers>

  <scm>
    <url>https://github.com/bytedeco/javacpp</url>
    <connection>scm:git:git://github.com/bytedeco/javacpp.git</connection>
    <developerConnection>scm:git:ssh://git@github.com/bytedeco/javacpp.git</developerConnection>
  </scm>

  <distributionManagement>
    <snapshotRepository>
      <id>sonatype-nexus-snapshots</id>
      <name>Sonatype Nexus Snapshots</name>
      <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
    </snapshotRepository>
    <repository>
      <id>sonatype-nexus-staging</id>
      <name>Sonatype Nexus Staging</name>
      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
    </repository>
  </distributionManagement>

  <properties>
    <javacpp.platform.extension></javacpp.platform.extension>
    <javacpp.platform.android-arm>android-arm${javacpp.platform.extension}</javacpp.platform.android-arm>
    <javacpp.platform.android-arm64>android-arm64${javacpp.platform.extension}</javacpp.platform.android-arm64>
    <javacpp.platform.android-x86>android-x86${javacpp.platform.extension}</javacpp.platform.android-x86>
    <javacpp.platform.android-x86_64>android-x86_64${javacpp.platform.extension}</javacpp.platform.android-x86_64>
    <javacpp.platform.ios-arm>ios-arm${javacpp.platform.extension}</javacpp.platform.ios-arm>
    <javacpp.platform.ios-arm64>ios-arm64${javacpp.platform.extension}</javacpp.platform.ios-arm64>
    <javacpp.platform.ios-x86>ios-x86${javacpp.platform.extension}</javacpp.platform.ios-x86>
    <javacpp.platform.ios-x86_64>ios-x86_64${javacpp.platform.extension}</javacpp.platform.ios-x86_64>
    <javacpp.platform.linux-armhf>linux-armhf${javacpp.platform.extension}</javacpp.platform.linux-armhf>
    <javacpp.platform.linux-arm64>linux-arm64${javacpp.platform.extension}</javacpp.platform.linux-arm64>
    <javacpp.platform.linux-ppc64le>linux-ppc64le${javacpp.platform.extension}</javacpp.platform.linux-ppc64le>
    <javacpp.platform.linux-x86>linux-x86${javacpp.platform.extension}</javacpp.platform.linux-x86>
    <javacpp.platform.linux-x86_64>linux-x86_64${javacpp.platform.extension}</javacpp.platform.linux-x86_64>
    <javacpp.platform.macosx-arm64>macosx-arm64${javacpp.platform.extension}</javacpp.platform.macosx-arm64>
    <javacpp.platform.macosx-x86_64>macosx-x86_64${javacpp.platform.extension}</javacpp.platform.macosx-x86_64>
    <javacpp.platform.windows-x86>windows-x86${javacpp.platform.extension}</javacpp.platform.windows-x86>
    <javacpp.platform.windows-x86_64>windows-x86_64${javacpp.platform.extension}</javacpp.platform.windows-x86_64>
  </properties>

  <dependencies>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.android-arm}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.android-arm64}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.android-x86}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.android-x86_64}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.ios-arm64}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.ios-x86_64}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.linux-armhf}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.linux-arm64}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.linux-ppc64le}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.linux-x86}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.linux-x86_64}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.macosx-arm64}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.macosx-x86_64}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.windows-x86}</classifier>
    </dependency>
    <dependency>
      <groupId>org.bytedeco</groupId>
      <artifactId>javacpp</artifactId>
      <version>${project.version}</version>
      <classifier>${javacpp.platform.windows-x86_64}</classifier>
    </dependency>
  </dependencies>

  <repositories>
    <repository>
      <id>sonatype-nexus-snapshots</id>
      <name>Sonatype Nexus Snapshots</name>
      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
  </repositories>

  <build>
    <finalName>${project.artifactId}</finalName>
    <plugins>
      <plugin>
        <artifactId>maven-dependency-plugin</artifactId>
        <version>3.1.1</version>
        <executions>
          <execution>
            <id>properties</id>
            <goals>
              <goal>properties</goal>
            </goals>
          </execution>
          <execution>
            <id>copy-dependencies</id>
            <goals>
              <goal>copy-dependencies</goal>
            </goals>
            <configuration>
              <outputDirectory>${project.build.directory}</outputDirectory>
              <stripVersion>true</stripVersion>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>3.1.0</version>
        <configuration>
          <attach>false</attach>
          <descriptors>
            <descriptor>src/main/assembly/bin.xml</descriptor>
            <descriptor>src/main/assembly/src.xml</descriptor>
          </descriptors>
        </configuration>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-jar-plugin</artifactId>
        <version>3.1.0</version>
        <executions>
          <execution>
            <id>default-jar</id>
            <configuration>
              <archive>
                <manifestEntries>
                  <Class-Path>javacpp.jar javacpp-linux-armhf.jar javacpp-linux-arm64.jar javacpp-linux-ppc64le.jar javacpp-linux-x86.jar javacpp-linux-x86_64.jar javacpp-macosx-arm64.jar javacpp-macosx-x86_64.jar javacpp-windows-x86.jar javacpp-windows-x86_64.jar</Class-Path>
                </manifestEntries>
              </archive>
            </configuration>
          </execution>
          <execution>
            <id>empty-javadoc-jar</id>
            <goals>
              <goal>jar</goal>
            </goals>
            <configuration>
              <classifier>javadoc</classifier>
            </configuration>
          </execution>
          <execution>
            <id>empty-sources-jar</id>
            <goals>
              <goal>jar</goal>
            </goals>
            <configuration>
              <classifier>sources</classifier>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.moditect</groupId>
        <artifactId>moditect-maven-plugin</artifactId>
        <version>1.0.0.RC1</version>
        <configuration>
          <jvmVersion>9</jvmVersion>
          <overwriteExistingFiles>true</overwriteExistingFiles>
          <outputDirectory>${project.build.directory}</outputDirectory>
        </configuration>
        <executions>
          <execution>
            <id>add-module-infos</id>
            <phase>none</phase>
          </execution>
          <execution>
            <id>add-platform-module-info</id>
            <phase>package</phase>
            <goals>
              <goal>add-module-info</goal>
            </goals>
            <configuration>
              <modules>
                <module>
                  <file>${project.build.directory}/${project.artifactId}.jar</file>
                  <moduleInfoSource>
                    module org.bytedeco.javacpp.platform {
                      requires transitive org.bytedeco.javacpp;
//                      requires static org.bytedeco.javacpp.android.arm;
//                      requires static org.bytedeco.javacpp.android.arm64;
//                      requires static org.bytedeco.javacpp.android.x86;
//                      requires static org.bytedeco.javacpp.android.x86_64;
                      requires static org.bytedeco.javacpp.ios.arm64;
                      requires static org.bytedeco.javacpp.ios.x86_64;
                      requires static org.bytedeco.javacpp.linux.armhf;
                      requires static org.bytedeco.javacpp.linux.arm64;
                      requires static org.bytedeco.javacpp.linux.ppc64le;
                      requires static org.bytedeco.javacpp.linux.x86;
                      requires static org.bytedeco.javacpp.linux.x86_64;
                      requires static org.bytedeco.javacpp.macosx.x86_64;
                      requires static org.bytedeco.javacpp.windows.x86;
                      requires static org.bytedeco.javacpp.windows.x86_64;
                    }
                  </moduleInfoSource>
                </module>
              </modules>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.sonatype.plugins</groupId>
        <artifactId>nexus-staging-maven-plugin</artifactId>
        <version>1.6.8</version>
        <extensions>true</extensions>
        <configuration>
          <serverId>sonatype-nexus-staging</serverId>
          <nexusUrl>https://oss.sonatype.org/</nexusUrl>
          <skipStagingRepositoryClose>true</skipStagingRepositoryClose>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <profiles>
    <profile>
      <id>assembly</id>
      <modules>
        <module>platform</module>
      </modules>
    </profile>

    <profile>
      <id>sign-artifacts</id>
      <activation>
        <property>
          <name>performRelease</name>
          <value>true</value>
        </property>
      </activation>
      <repositories>
        <repository>
          <id>sonatype-nexus-staging</id>
          <name>Sonatype Nexus Staging</name>
          <url>https://oss.sonatype.org/service/local/staging/deployByRepositoryId/${stagingRepositoryId}/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <id>sonatype-nexus-staging</id>
          <name>Sonatype Nexus Staging</name>
          <url>https://oss.sonatype.org/service/local/staging/deployByRepositoryId/${stagingRepositoryId}/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-gpg-plugin</artifactId>
            <version>1.6</version>
            <executions>
              <execution>
                <id>sign-artifacts</id>
                <phase>verify</phase>
                <goals>
                  <goal>sign</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <passphrase>${env.GPG_PASSPHRASE}</passphrase>
              <useAgent>false</useAgent>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>javacpp-platform-default</id>
      <activation>
        <property>
          <name>!javacpp.platform</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform>${os.name}-${os.arch}</javacpp.platform>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-custom</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.android-arm>
        <javacpp.platform.android-arm64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.android-arm64>
        <javacpp.platform.android-x86>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-host</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform>
        <javacpp.platform.android-arm>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.android-arm>
        <javacpp.platform.android-arm64>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.android-arm64>
        <javacpp.platform.android-x86>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64>${os.name}-${os.arch}${javacpp.platform.extension}</javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-true</id>
      <activation>
        <property>
          <name>javacpp.platform.custom</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform></javacpp.platform>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-none</id>
      <activation>
        <property>
          <name>javacpp.platform.none</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform></javacpp.platform>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <!-- Provide convenient profiles to list supported modules for each platform and set commonly used paths for Android -->
    <profile>
      <id>javacpp-platform-android-arm</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>android-arm</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-android-arm64</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>android-arm64</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-android-x86</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>android-x86</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-android-x86_64</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>android-x86_64</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-ios-arm</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>ios-arm</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-ios-arm64</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>ios-arm64</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-ios-x86</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>ios-x86</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-ios-x86_64</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>ios-x86_64</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-linux-armhf</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>linux-armhf</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-linux-arm64</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>linux-arm64</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-linux-ppc64le</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>linux-ppc64le</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-linux-x86</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>linux-x86</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-linux-x86_64</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>linux-x86_64</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-macosx-arm64</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>macosx-arm64</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-macosx-x86_64</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>macosx-x86_64</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-windows-x86</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>windows-x86</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64></javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp-platform-windows-x86_64</id>
      <activation>
        <property>
          <name>javacpp.platform</name>
          <value>windows-x86_64</value>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm></javacpp.platform.android-arm>
        <javacpp.platform.android-arm64></javacpp.platform.android-arm64>
        <javacpp.platform.android-x86></javacpp.platform.android-x86>
        <javacpp.platform.android-x86_64></javacpp.platform.android-x86_64>
        <javacpp.platform.ios-arm></javacpp.platform.ios-arm>
        <javacpp.platform.ios-arm64></javacpp.platform.ios-arm64>
        <javacpp.platform.ios-x86></javacpp.platform.ios-x86>
        <javacpp.platform.ios-x86_64></javacpp.platform.ios-x86_64>
        <javacpp.platform.linux-armhf></javacpp.platform.linux-armhf>
        <javacpp.platform.linux-arm64></javacpp.platform.linux-arm64>
        <javacpp.platform.linux-ppc64le></javacpp.platform.linux-ppc64le>
        <javacpp.platform.linux-x86></javacpp.platform.linux-x86>
        <javacpp.platform.linux-x86_64></javacpp.platform.linux-x86_64>
        <javacpp.platform.macosx-arm64></javacpp.platform.macosx-arm64>
        <javacpp.platform.macosx-x86_64></javacpp.platform.macosx-x86_64>
        <javacpp.platform.windows-x86></javacpp.platform.windows-x86>
        <javacpp.platform.windows-x86_64>${javacpp.platform}${javacpp.platform.extension}</javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <!-- Profiles to modify the transitive dependencies when picked up from other pom.xml files, for example:
         mvn -Djavacpp.platform.custom -Djavacpp.platform.host -Djavacpp.platform.linux-x86_64 -Djavacpp.platform.windows-x86_64 ... -->
    <profile>
      <id>javacpp.platform.android-arm-true</id>
      <activation>
        <property>
          <name>javacpp.platform.android-arm</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm>android-arm${javacpp.platform.extension}</javacpp.platform.android-arm>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.android-arm64-true</id>
      <activation>
        <property>
          <name>javacpp.platform.android-arm64</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-arm64>android-arm64${javacpp.platform.extension}</javacpp.platform.android-arm64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.android-x86-true</id>
      <activation>
        <property>
          <name>javacpp.platform.android-x86</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-x86>android-x86${javacpp.platform.extension}</javacpp.platform.android-x86>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.android-x86_64-true</id>
      <activation>
        <property>
          <name>javacpp.platform.android-x86_64</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.android-x86_64>android-x86_64${javacpp.platform.extension}</javacpp.platform.android-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.ios-arm-true</id>
      <activation>
        <property>
          <name>javacpp.platform.ios-arm</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.ios-arm>ios-arm${javacpp.platform.extension}</javacpp.platform.ios-arm>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.ios-arm64-true</id>
      <activation>
        <property>
          <name>javacpp.platform.ios-arm64</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.ios-arm64>ios-arm64${javacpp.platform.extension}</javacpp.platform.ios-arm64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.ios-x86-true</id>
      <activation>
        <property>
          <name>javacpp.platform.ios-x86</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.ios-x86>ios-x86${javacpp.platform.extension}</javacpp.platform.ios-x86>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.ios-x86_64-true</id>
      <activation>
        <property>
          <name>javacpp.platform.ios-x86_64</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.ios-x86_64>ios-x86_64${javacpp.platform.extension}</javacpp.platform.ios-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.linux-armhf-true</id>
      <activation>
        <property>
          <name>javacpp.platform.linux-armhf</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.linux-armhf>linux-armhf${javacpp.platform.extension}</javacpp.platform.linux-armhf>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.linux-arm64-true</id>
      <activation>
        <property>
          <name>javacpp.platform.linux-arm64</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.linux-arm64>linux-arm64${javacpp.platform.extension}</javacpp.platform.linux-arm64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.linux-ppc64le-true</id>
      <activation>
        <property>
          <name>javacpp.platform.linux-ppc64le</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.linux-ppc64le>linux-ppc64le${javacpp.platform.extension}</javacpp.platform.linux-ppc64le>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.linux-x86-true</id>
      <activation>
        <property>
          <name>javacpp.platform.linux-x86</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.linux-x86>linux-x86${javacpp.platform.extension}</javacpp.platform.linux-x86>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.linux-x86_64-true</id>
      <activation>
        <property>
          <name>javacpp.platform.linux-x86_64</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.linux-x86_64>linux-x86_64${javacpp.platform.extension}</javacpp.platform.linux-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.macosx-x86_64-true</id>
      <activation>
        <property>
          <name>javacpp.platform.macosx-x86_64</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.macosx-x86_64>macosx-x86_64${javacpp.platform.extension}</javacpp.platform.macosx-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.macosx-arm64-true</id>
      <activation>
        <property>
          <name>javacpp.platform.macosx-arm64</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.macosx-arm64>macosx-arm64${javacpp.platform.extension}</javacpp.platform.macosx-arm64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.windows-x86-true</id>
      <activation>
        <property>
          <name>javacpp.platform.windows-x86</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.windows-x86>windows-x86${javacpp.platform.extension}</javacpp.platform.windows-x86>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.windows-x86_64-true</id>
      <activation>
        <property>
          <name>javacpp.platform.windows-x86_64</name>
        </property>
      </activation>
      <properties>
        <javacpp.platform.windows-x86_64>windows-x86_64${javacpp.platform.extension}</javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-linux-arm</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>linux</name><arch>arm</arch></os>
      </activation>
      <properties>
        <javacpp.platform.linux-armhf>linux-armhf${javacpp.platform.extension}</javacpp.platform.linux-armhf>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-linux-armhf</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>linux</name><arch>armhf</arch></os>
      </activation>
      <properties>
        <javacpp.platform.linux-armhf>linux-armhf${javacpp.platform.extension}</javacpp.platform.linux-armhf>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-linux-aarch64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>linux</name><arch>aarch64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.linux-arm64>linux-arm64${javacpp.platform.extension}</javacpp.platform.linux-arm64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-linux-armv8</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>linux</name><arch>armv8</arch></os>
      </activation>
      <properties>
        <javacpp.platform.linux-arm64>linux-arm64${javacpp.platform.extension}</javacpp.platform.linux-arm64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-linux-arm64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>linux</name><arch>arm64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.linux-arm64>linux-arm64${javacpp.platform.extension}</javacpp.platform.linux-arm64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-linux-ppc64le</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>linux</name><arch>ppc64le</arch></os>
      </activation>
      <properties>
        <javacpp.platform.linux-ppc64le>linux-ppc64le${javacpp.platform.extension}</javacpp.platform.linux-ppc64le>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-linux-amd64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>linux</name><arch>amd64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.linux-x86_64>linux-x86_64${javacpp.platform.extension}</javacpp.platform.linux-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-linux-x86-64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>linux</name><arch>x86-64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.linux-x86_64>linux-x86_64${javacpp.platform.extension}</javacpp.platform.linux-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-linux-x86_64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>linux</name><arch>x86_64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.linux-x86_64>linux-x86_64${javacpp.platform.extension}</javacpp.platform.linux-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-macosx-aarch64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>mac os x</name><arch>aarch64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.macosx-arm64>macosx-arm64${javacpp.platform.extension}</javacpp.platform.macosx-arm64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-macosx-armv8</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>mac os x</name><arch>armv8</arch></os>
      </activation>
      <properties>
        <javacpp.platform.macosx-arm64>macosx-arm64${javacpp.platform.extension}</javacpp.platform.macosx-arm64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-macosx-arm64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>mac os x</name><arch>arm64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.macosx-arm64>macosx-arm64${javacpp.platform.extension}</javacpp.platform.macosx-arm64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-macosx-amd64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>mac os x</name><arch>amd64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.macosx-x86_64>macosx-x86_64${javacpp.platform.extension}</javacpp.platform.macosx-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-macosx-x86-64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>mac os x</name><arch>x86-64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.macosx-x86_64>macosx-x86_64${javacpp.platform.extension}</javacpp.platform.macosx-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-macosx-x86_64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><name>mac os x</name><arch>x86_64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.macosx-x86_64>macosx-x86_64${javacpp.platform.extension}</javacpp.platform.macosx-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-windows-amd64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><family>windows</family><arch>amd64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.windows-x86_64>windows-x86_64${javacpp.platform.extension}</javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-windows-x86-64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><family>windows</family><arch>x86-64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.windows-x86_64>windows-x86_64${javacpp.platform.extension}</javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <profile>
      <id>javacpp.platform.custom-windows-x86_64</id>
      <activation>
        <property>
          <name>javacpp.platform.host</name>
        </property>
        <os><family>windows</family><arch>x86_64</arch></os>
      </activation>
      <properties>
        <javacpp.platform.windows-x86_64>windows-x86_64${javacpp.platform.extension}</javacpp.platform.windows-x86_64>
      </properties>
    </profile>

    <!-- Profiles to set the default javacpp.platform property: If someone knows a better way to do this, please do let me know! -->
    <profile>
      <id>linux</id>
      <activation>
        <os><name>linux</name></os>
      </activation>
      <properties>
        <os.kernel>linux</os.kernel>
        <os.name>linux</os.name>
      </properties>
    </profile>
    <profile>
      <id>macosx</id>
      <activation>
        <os><name>mac os x</name></os>
      </activation>
      <properties>
        <os.kernel>darwin</os.kernel>
        <os.name>macosx</os.name>
      </properties>
    </profile>
    <profile>
      <id>windows</id>
      <activation>
        <os><family>windows</family></os>
      </activation>
      <properties>
        <os.kernel>windows</os.kernel>
        <os.name>windows</os.name>
      </properties>
    </profile>
    <profile>
      <id>arm</id>
      <activation>
        <os><arch>arm</arch></os>
      </activation>
      <properties>
        <os.arch>armhf</os.arch>
      </properties>
    </profile>
    <profile>
      <id>aarch64</id>
      <activation>
        <os><arch>aarch64</arch></os>
      </activation>
      <properties>
        <os.arch>arm64</os.arch>
      </properties>
    </profile>
    <profile>
      <id>armv8</id>
      <activation>
        <os><arch>armv8</arch></os>
      </activation>
      <properties>
        <os.arch>arm64</os.arch>
      </properties>
    </profile>
    <profile>
      <id>i386</id>
      <activation>
        <os><arch>i386</arch></os>
      </activation>
      <properties>
        <os.arch>x86</os.arch>
      </properties>
    </profile>
    <profile>
      <id>i486</id>
      <activation>
        <os><arch>i486</arch></os>
      </activation>
      <properties>
        <os.arch>x86</os.arch>
      </properties>
    </profile>
    <profile>
      <id>i586</id>
      <activation>
        <os><arch>i586</arch></os>
      </activation>
      <properties>
        <os.arch>x86</os.arch>
      </properties>
    </profile>
    <profile>
      <id>i686</id>
      <activation>
        <os><arch>i686</arch></os>
      </activation>
      <properties>
        <os.arch>x86</os.arch>
      </properties>
    </profile>
    <profile>
      <id>amd64</id>
      <activation>
        <os><arch>amd64</arch></os>
      </activation>
      <properties>
        <os.arch>x86_64</os.arch>
      </properties>
    </profile>
    <profile>
      <id>x86-64</id>
      <activation>
        <os><arch>x86-64</arch></os>
      </activation>
      <properties>
        <os.arch>x86_64</os.arch>
      </properties>
    </profile>
  </profiles>

</project>
