<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>
	<parent>
		<groupId>com.esotericsoftware</groupId>
		<artifactId>kryo-parent</artifactId>
		<version>3.0.3</version>
		<relativePath>./pom.xml</relativePath>
	</parent>
	<artifactId>kryo</artifactId>
	<packaging>bundle</packaging>
	<name>Kryo</name>
	<description>Fast, efficient Java serialization. This is the "main" kryo artifact, with a regular dependency on reflectasm.</description>

	<dependencies>
		<dependency>
			<groupId>com.esotericsoftware</groupId>
			<artifactId>reflectasm</artifactId>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.felix</groupId>
				<artifactId>maven-bundle-plugin</artifactId>
				<version>2.4.0</version>
				<extensions>true</extensions>
				<configuration>
					<instructions>
						<Import-Package><![CDATA[
						COM.jrockit*;resolution:=optional,
						COM.newmonics*;resolution:=optional,
						jrockit*;resolution:=optional,
						sun.reflect;resolution:=optional,
						sun.misc;resolution:=optional,
						sun.nio.ch;resolution:=optional,
						*
						]]>
						</Import-Package>
						<Export-Package>com.esotericsoftware.kryo*</Export-Package>
					</instructions>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-assembly-plugin</artifactId>
				<version>2.4</version>
				<configuration>
					<descriptor>etc/assembly-all.xml</descriptor>
				</configuration>
				<!--
					According to http://stackoverflow.com/questions/2244344/deploying-assembly-package-with-maven-release-plugin
					this should add the assembly zip to the files uploaded during release:perform/deploy.
				-->
				<executions>
					<execution>
						<id>dist-assembly</id>
						<phase>package</phase>
						<goals>
							<goal>single</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>clirr-maven-plugin</artifactId>
				<version>2.6.1</version>
				<executions>
					<!-- Automatically run clirr:check on compile -->
					<execution>
						<id>check-on-compile</id>
						<phase>compile</phase>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
				<!-- See http://mojo.codehaus.org/clirr-maven-plugin/check-mojo.html -->
				<configuration>
					<skip>false</skip>
					<logResults>true</logResults>
					<minSeverity>warning</minSeverity>
					<!-- Configure ignored differences: http://mojo.codehaus.org/clirr-maven-plugin/examples/ignored-differences.html -->
					<ignored>
						<!-- reflectasm classes are reported to be removed (as they're added by shade/bundle plugin during packaging) -->
						<difference>
							<className>com/esotericsoftware/reflectasm/**</className>
							<differenceType>8001</differenceType>
						</difference>
					</ignored>
				</configuration>
				<!-- prevent "clirr-maven-plugin:2.6.1:check failed: Invalid byte tag in constant pool: 18" -->
				<!-- once 6.0 is released, the apache-snapshots pluginRepository can be removed as well -->
				<dependencies>
					<dependency>
						<groupId>org.apache.bcel</groupId>
						<artifactId>bcel</artifactId>
						<version>6.0-SNAPSHOT</version>
					</dependency>
				</dependencies>
			</plugin>
		</plugins>
	</build>

	<reporting>
		<plugins>
			<!-- Generate compatibility report with `mvn clirr:clirr` -->
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>clirr-maven-plugin</artifactId>
				<version>2.6.1</version>
			</plugin>
		</plugins>
	</reporting>

	<pluginRepositories>
		<pluginRepository>
			<id>apache-snapshots</id>
			<name>apache snapshots repo</name>
			<url>https://repository.apache.org/content/repositories/snapshots</url>
		</pluginRepository>
	</pluginRepositories>

</project>
