<?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>
  <parent>
    <groupId>com.google</groupId>
    <artifactId>google</artifactId>
    <version>1</version>
  </parent>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protoc</artifactId>
  <version>3.20.1</version>
  <packaging>pom</packaging>
  <name>Protobuf Compiler</name>
  <description>
    Protobuf Compiler (protoc) is a compiler for .proto files. It generates
    language-specific code for Protobuf messages and RPC interfaces.
  </description>
  <inceptionYear>2008</inceptionYear>
  <url>https://developers.google.com/protocol-buffers/</url>
  <licenses>
    <license>
      <name>BSD-3-Clause</name>
      <url>https://opensource.org/licenses/BSD-3-Clause</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  <scm>
    <url>https://github.com/protocolbuffers/protobuf</url>
    <connection>
      scm:git:https://github.com/protocolbuffers/protobuf.git
    </connection>
  </scm>
  <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>1.8</version>
        <executions>
          <execution>
            <id>attach-artifacts</id>
            <phase>package</phase>
            <goals>
              <goal>attach-artifact</goal>
            </goals>
            <configuration>
              <artifacts>
                <artifact>
                  <file>${basedir}/target/linux/x86_64/protoc.exe</file>
                  <classifier>linux-x86_64</classifier>
                  <type>exe</type>
                </artifact>
                <artifact>
                  <file>${basedir}/target/linux/x86_32/protoc.exe</file>
                  <classifier>linux-x86_32</classifier>
                  <type>exe</type>
                </artifact>
                <artifact>
                  <file>${basedir}/target/windows/x86_64/protoc.exe</file>
                  <classifier>windows-x86_64</classifier>
                  <type>exe</type>
                </artifact>
                <artifact>
                  <file>${basedir}/target/windows/x86_32/protoc.exe</file>
                  <classifier>windows-x86_32</classifier>
                  <type>exe</type>
                </artifact>
                <artifact>
                  <file>${basedir}/target/osx/x86_64/protoc.exe</file>
                  <classifier>osx-x86_64</classifier>
                  <type>exe</type>
                </artifact>
                <artifact>
                  <!-- Reuse a compatible osx-x86_64 version until binary
                       support for osx-aarch_64 is added. TODO: use
                       <file>${basedir}/target/osx/aarch_64/protoc.exe</file>
                       -->
                  <file>${basedir}/target/osx/x86_64/protoc.exe</file>
                  <classifier>osx-aarch_64</classifier>
                  <type>exe</type>
                </artifact>
                <artifact>
                  <file>${basedir}/target/linux/aarch_64/protoc.exe</file>
                  <classifier>linux-aarch_64</classifier>
                  <type>exe</type>
                </artifact>
                <artifact>
                  <file>${basedir}/target/linux/ppcle_64/protoc.exe</file>
                  <classifier>linux-ppcle_64</classifier>
                  <type>exe</type>
	  	</artifact>
                <artifact>
                  <file>${basedir}/target/linux/s390_64/protoc.exe</file>
                  <classifier>linux-s390_64</classifier>
                  <type>exe</type>
                </artifact>
              </artifacts>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  <profiles>
    <profile>
      <id>release</id>
      <properties>
        <!-- Specify the staging repository to deploy to. This can be left
             empty for the first deployment, and Sonatype will create one. For
             subsequent deployments it should be set to what Sonatype has
             created, so that all deployments will go to the same repository.
             -->
        <staging.repository/>
      </properties>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-gpg-plugin</artifactId>
            <version>1.5</version>
            <executions>
              <execution>
                <id>sign-artifacts</id>
                <phase>verify</phase>
                <goals>
                  <goal>sign</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.sonatype.plugins</groupId>
            <artifactId>nexus-staging-maven-plugin</artifactId>
            <version>1.6.3</version>
            <extensions>true</extensions>
            <configuration>
               <serverId>sonatype-nexus-staging</serverId>
               <nexusUrl>https://oss.sonatype.org/</nexusUrl>
               <skipStagingRepositoryClose>true</skipStagingRepositoryClose>
               <autoReleaseAfterClose>false</autoReleaseAfterClose>
               <stagingRepositoryId>${staging.repository}</stagingRepositoryId>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>
