<?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>
    <artifactId>tools</artifactId>
    <groupId>com.google.i18n.phonenumbers</groupId>
    <version>1.0-SNAPSHOT</version>
  </parent>

  <groupId>com.google.i18n.phonenumbers.tools</groupId>
  <artifactId>java-build</artifactId>
  <version>1.0-SNAPSHOT</version>
  <name>Libphonenumber Java and JavaScript build tools</name>
  <description>
    Java and JavaScript build tools that generate the Java and JavaScript metadata code needed to
    build the libphonenumber library. The Java build tools also transform the geocoding data from
    text to binary format.
  </description>

  <properties>
    <phonenumberutil.resources.dir>
      ${project.dir}/../../../../java/libphonenumber/src/
    </phonenumberutil.resources.dir>
  </properties>

  <build>
    <sourceDirectory>src</sourceDirectory>
    <testSourceDirectory>test</testSourceDirectory>
    <!-- Include the PhoneNumberUtil metadata files. -->
    <resources>
      <resource>
        <directory>${phonenumberutil.resources.dir}</directory>
      </resource>
    </resources>
    <testResources>
      <testResource>
        <directory>${phonenumberutil.resources.dir}</directory>
      </testResource>
      <testResource>
        <directory>test/com/google/i18n/phonenumbers/buildtools/testdata</directory>
        <targetPath>com/google/i18n/phonenumbers/buildtools/testdata</targetPath>
      </testResource>
    </testResources>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.11.0</version>
        <configuration>
          <source>8</source>
	  <target>8</target>
	  <encoding>UTF-8</encoding>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>3.4.0</version>
        <executions>
          <execution>
            <id>add-source</id>
            <phase>generate-sources</phase>
            <goals>
              <goal>add-source</goal>
            </goals>
            <configuration>
              <sources>
                <!-- Add ../../../java/libphonenumber/src/ to make Phonemetadata.java available to
                     the source directories. -->
                <source>../../../java/libphonenumber/src/</source>
                <!-- Add ../../../java/internal/phoneprefix/src/ to make PhonePrefixMap.java
                     available to the source directories. -->
                <source>../../../java/internal/prefixmapper/src/</source>
                <!-- Add ../common/src/ which contains BuildMetadataFromXml.java -->
                <source>../common/src/</source>
              </sources>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <!-- Build a JAR that contains the Java and JavaScript build tools. -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration>
          <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
          </descriptorRefs>
          <archive>
            <manifest>
              <addClasspath>true</addClasspath>
              <mainClass>com.google.i18n.phonenumbers.EntryPoint</mainClass>
            </manifest>
          </archive>
        </configuration>
        <executions>
          <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.13.2</version>
      <scope>test</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.google.auto.value/auto-value -->
    <dependency>
        <groupId>com.google.auto.value</groupId>
        <artifactId>auto-value</artifactId>
        <version>1.11.0</version>
        <scope>provided</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.google.auto.value/auto-value-annotations -->
    <dependency>
        <groupId>com.google.auto.value</groupId>
        <artifactId>auto-value-annotations</artifactId>
        <version>1.11.0</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.google.code.findbugs/jsr305 -->
    <dependency>
        <groupId>com.google.code.findbugs</groupId>
        <artifactId>jsr305</artifactId>
        <version>3.0.2</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.google.guava/guava -->
    <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>33.3.0-jre</version>
    </dependency>
  </dependencies>

</project>
