<?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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<artifactId>cldr-code</artifactId>

	<name>CLDR Code</name>

	<url>https://unicode.org/cldr</url>

	<properties>
		<mainClass>org.unicode.cldr.tool.Main</mainClass>
	</properties>

	<scm>
		<connection>scm:git:https://github.com/unicode-org/cldr.git</connection>
	</scm>

	<parent>
		<groupId>org.unicode.cldr</groupId>
		<artifactId>cldr-all</artifactId>
		<version>46.0</version>
	</parent>

	<dependencies>
		<dependency>
			<groupId>com.ibm.icu</groupId>
			<artifactId>icu4j</artifactId>
		</dependency>

		<!-- test -->
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>com.google.code.gson</groupId>
			<artifactId>gson</artifactId>
		</dependency>
		<dependency>
			<groupId>com.google.guava</groupId>
			<artifactId>guava</artifactId>
		</dependency>

		<dependency>
			<groupId>com.google.myanmartools</groupId>
			<artifactId>myanmar-tools</artifactId>
		</dependency>

		<!-- for XSD generation -->
		<dependency>
			<groupId>org.relaxng</groupId>
			<artifactId>trang</artifactId>
		</dependency>
		<!-- for semver -->
		<dependency>
			<groupId>com.vdurmont</groupId>
			<artifactId>semver4j</artifactId>
		</dependency>
	</dependencies>

	<build>
		<resources>
			<resource>
				<directory>src/main/resources</directory>
			</resource>
			<resource>
		       <directory>${project.basedir}/../..</directory>
			   <!-- This is put here so that it can be read by CldrUtility, even outside of a jar -->
		       <targetPath>${project.build.directory}/classes/org/unicode/cldr/util/data</targetPath>
				<includes>
					<include>LICENSE</include>
				</includes>
			</resource>
			<resource>
		       <directory>${project.basedir}/../..</directory>
			   <!-- This is put here so that it shows up in the final .jar in an expected spot -->
			   <!-- Note: icu4j keeps its license file at the root, /LICENSE. We won't conflict. -->
		       <targetPath>META-INF</targetPath>
				<includes>
					<include>LICENSE</include>
				</includes>
			</resource>
		</resources>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>license-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>add-third-party</id>
						<phase>package</phase>
						<goals>
							<goal>add-third-party</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<excludedScopes>system,test</excludedScopes>
					<useMissingFile>true</useMissingFile>
					<!--
						exclude the "for-cldr" dependencies.
						see https://unicode-org.atlassian.net/browse/ICU-21425
						these are actually under Unicode-3.0 the same as CLDR is.
						The ICU license file itself is pulled in during assembly (into /LICENSE), which contains
						all of ICU's third party license information.
					-->
					<excludedArtifacts>.*-for-cldr.*</excludedArtifacts>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>buildnumber-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<artifactId>maven-jar-plugin</artifactId>
				<configuration>
					<archive>
						<manifest>
							<mainClass>${mainClass}</mainClass>
						</manifest>
						<manifestEntries>
							<Built-By>${user.name}</Built-By>
							<Build-Time>${maven.build.timestamp}</Build-Time>
							<CLDR-Code-Git-Commit>${buildNumber}</CLDR-Code-Git-Commit>
							<CLDR-Code-Git-Branch>${scmBranch}</CLDR-Code-Git-Branch>
						</manifestEntries>
					</archive>
				</configuration>
			</plugin>
			<plugin>
		        <groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-shade-plugin</artifactId>
				<executions>
					<execution>
						<phase>package</phase>
						<goals>
							<goal>shade</goal>
						</goals>
						<configuration>
							<filters>
								<filter>
									<artifact>*:*</artifact>
									<excludes>
										<!-- exclude other manifests -->
										<exclude>META-INF/MANIFEST.MF</exclude>
										<!-- don't care about modules for this purpose -->
										<exclude>module-info.class</exclude>
									</excludes>
								</filter>
							</filters>
							<minimizeJar>false</minimizeJar>
							<finalName>${project.artifactId}</finalName>
							<transformers>
								<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
									<mainClass>${mainClass}</mainClass>
									<manifestEntries>
										<Main-Class>${mainClass}</Main-Class>
										<Built-By>${user.name}</Built-By>
										<Build-Time>${maven.build.timestamp}</Build-Time>
										<CLDR-Code-Git-Commit>${buildNumber}</CLDR-Code-Git-Commit>
										<CLDR-Code-Git-Branch>${scmBranch}</CLDR-Code-Git-Branch>
									</manifestEntries>
								</transformer>
								<!-- this will have any other found licenses included -->
								<transformer implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
									<file>${project.basedir}/target/generated-sources/license/THIRD-PARTY.txt</file>
									<resource>CLDR-THIRD-PARTY.txt</resource>
								</transformer>
								<!-- prevent any possible duplication of LICENSE files -->
								<transformer implementation="org.apache.maven.plugins.shade.resource.ApacheLicenseResourceTransformer"/>
							</transformers>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>
