235 lines
8.8 KiB
XML
235 lines
8.8 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License. See accompanying LICENSE file.
|
|
-->
|
|
<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">
|
|
<parent>
|
|
<artifactId>hadoop-mapreduce-client</artifactId>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<version>3.0.0-alpha3-SNAPSHOT</version>
|
|
</parent>
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<artifactId>hadoop-mapreduce-client-nativetask</artifactId>
|
|
<version>3.0.0-alpha3-SNAPSHOT</version>
|
|
<name>Apache Hadoop MapReduce NativeTask</name>
|
|
|
|
<properties>
|
|
<!-- Needed for generating FindBugs warnings using parent pom -->
|
|
<mr.basedir>${project.parent.basedir}/../</mr.basedir>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-common</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-mapreduce-client-core</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.avro</groupId>
|
|
<artifactId>avro</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>junit</groupId>
|
|
<artifactId>junit</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-all</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-common</artifactId>
|
|
<type>test-jar</type>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-mapreduce-client-common</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<configuration>
|
|
<properties>
|
|
<property>
|
|
<name>listener</name>
|
|
<value>org.apache.hadoop.test.TimedOutTestsListener</value>
|
|
</property>
|
|
</properties>
|
|
<includes>
|
|
<include>**/*Test.java</include>
|
|
<include>**/Test*.java</include>
|
|
</includes>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.rat</groupId>
|
|
<artifactId>apache-rat-plugin</artifactId>
|
|
<configuration>
|
|
<excludes>
|
|
<exclude>src/main/native/testData/*</exclude>
|
|
</excludes>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>native</id>
|
|
<activation>
|
|
<activeByDefault>false</activeByDefault>
|
|
</activation>
|
|
<properties>
|
|
<snappy.prefix></snappy.prefix>
|
|
<snappy.lib></snappy.lib>
|
|
<snappy.include></snappy.include>
|
|
<require.snappy>false</require.snappy>
|
|
<zstd.prefix></zstd.prefix>
|
|
<zstd.lib></zstd.lib>
|
|
<zstd.include></zstd.include>
|
|
<require.zstd>false</require.zstd>
|
|
</properties>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-enforcer-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>enforce-os</id>
|
|
<goals>
|
|
<goal>enforce</goal>
|
|
</goals>
|
|
<configuration>
|
|
<rules>
|
|
<requireOS>
|
|
<family>mac</family>
|
|
<family>unix</family>
|
|
<message>native build only supported on Mac or
|
|
Unix</message>
|
|
</requireOS>
|
|
</rules>
|
|
<fail>true</fail>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>native-maven-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<phase>compile</phase>
|
|
<goals>
|
|
<goal>javah</goal>
|
|
</goals>
|
|
<configuration>
|
|
<javahPath>${env.JAVA_HOME}/bin/javah</javahPath>
|
|
<javahClassNames>
|
|
<javaClassName>org.apache.hadoop.mapred.nativetask.NativeBatchProcessor</javaClassName>
|
|
<javaClassName>org.apache.hadoop.mapred.nativetask.NativeRuntime</javaClassName>
|
|
</javahClassNames>
|
|
<javahOutputDirectory>${project.build.directory}/native/javah</javahOutputDirectory>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-antrun-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>make</id>
|
|
<phase>compile</phase>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
<configuration>
|
|
<target>
|
|
<copy file="${basedir}/../../../hadoop-common-project/hadoop-common/src/main/native/src/org/apache/hadoop/io/compress/lz4/lz4.h"
|
|
todir="${project.build.directory}/native/" />
|
|
<copy file="${basedir}/../../../hadoop-common-project/hadoop-common/src/main/native/src/org/apache/hadoop/io/compress/lz4/lz4.c"
|
|
todir="${project.build.directory}/native/" />
|
|
<copy todir="${project.build.directory}/native/test/testData"
|
|
overwrite="true">
|
|
<fileset dir="${basedir}/src/main/native/testData" />
|
|
</copy>
|
|
</target>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.hadoop</groupId>
|
|
<artifactId>hadoop-maven-plugins</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>cmake-compile</id>
|
|
<phase>compile</phase>
|
|
<goals><goal>cmake-compile</goal></goals>
|
|
<configuration>
|
|
<source>${basedir}/src</source>
|
|
<vars>
|
|
<GENERATED_JAVAH>${project.build.directory}/native/javah</GENERATED_JAVAH>
|
|
<JVM_ARCH_DATA_MODEL>${sun.arch.data.model}</JVM_ARCH_DATA_MODEL>
|
|
<REQUIRE_SNAPPY>${require.snappy}</REQUIRE_SNAPPY>
|
|
<CUSTOM_SNAPPY_PREFIX>${snappy.prefix}</CUSTOM_SNAPPY_PREFIX>
|
|
<CUSTOM_SNAPPY_LIB>${snappy.lib}</CUSTOM_SNAPPY_LIB>
|
|
<CUSTOM_SNAPPY_INCLUDE>${snappy.include}</CUSTOM_SNAPPY_INCLUDE>
|
|
<REQUIRE_ZSTD>${require.zstd}</REQUIRE_ZSTD>
|
|
<CUSTOM_ZSTD_PREFIX>${zstd.prefix}</CUSTOM_ZSTD_PREFIX>
|
|
<CUSTOM_ZSTD_LIB>${zstd.lib}</CUSTOM_ZSTD_LIB>
|
|
<CUSTOM_ZSTD_INCLUDE>${zstd.include}</CUSTOM_ZSTD_INCLUDE>
|
|
</vars>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>nttest</id>
|
|
<phase>test</phase>
|
|
<goals><goal>cmake-test</goal></goals>
|
|
<configuration>
|
|
<!-- this should match the xml name without the TEST-part down below -->
|
|
<testName>nativetask-nttest</testName>
|
|
<workingDirectory>${project.build.directory}/native/test</workingDirectory>
|
|
<source>${basedir}/src</source>
|
|
<binary>${project.build.directory}/native/test/nttest</binary>
|
|
<args>
|
|
<arg>--gtest_filter=-Perf.</arg>
|
|
<arg>--gtest_output=xml:${project.build.directory}/surefire-reports/TEST-nativetask-nttest.xml</arg>
|
|
</args>
|
|
<results>${project.build.directory}/surefire-reports</results>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|