168 lines
7.1 KiB
XML
168 lines
7.1 KiB
XML
<?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>org.broadinstitute.sting</groupId>
|
|
<artifactId>sting-root</artifactId>
|
|
<version>2.8-SNAPSHOT</version>
|
|
<relativePath>../../public/sting-root</relativePath>
|
|
</parent>
|
|
|
|
<artifactId>pairhmm-native</artifactId>
|
|
<packaging>pom</packaging>
|
|
<name>PairHMM Native Libraries</name>
|
|
|
|
<description>Builds a platform dependent version of pairhmm. During install, copies it into sting-utils.</description>
|
|
|
|
<properties>
|
|
<sourceEncoding>UTF-8</sourceEncoding>
|
|
<project.build.sourceEncoding>${sourceEncoding}</project.build.sourceEncoding>
|
|
<project.reporting.outputEncoding>${sourceEncoding}</project.reporting.outputEncoding>
|
|
<sting.basedir>${project.basedir}/../..</sting.basedir>
|
|
<sting-utils.basedir>${sting.basedir}/public/sting-utils</sting-utils.basedir>
|
|
<!-- Where to place the library in sting-utils -->
|
|
<pairhmm.resources.directory>${sting-utils.basedir}/src/main/resources/org/broadinstitute/sting/utils/pairhmm</pairhmm.resources.directory>
|
|
|
|
<!-- Per architecture properties, overriden in profiles below -->
|
|
<!--
|
|
NOTE: cxxflags is for currently only for -fPIC on linux.
|
|
For other architectures still have to pass something, until possibly
|
|
switching to command line arguments with exec-maven-plugin 1.3
|
|
http://jira.codehaus.org/browse/MEXEC-104
|
|
-->
|
|
<pairhmm.build.architecture>x86_64</pairhmm.build.architecture>
|
|
<pairhmm.build.extension>so</pairhmm.build.extension>
|
|
<pairhmm.build.cxxflags>-Wall</pairhmm.build.cxxflags>
|
|
<pairhmm.build.ldflags>-dynamiclib</pairhmm.build.ldflags>
|
|
</properties>
|
|
<build>
|
|
<plugins>
|
|
<!-- Print out the current architecture, to know which profile is being activated. -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-enforcer-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>display-info</goal>
|
|
</goals>
|
|
<phase>validate</phase>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<!-- Run make -->
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>exec-maven-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>exec</goal>
|
|
</goals>
|
|
<phase>compile</phase>
|
|
<configuration>
|
|
<executable>make</executable>
|
|
<workingDirectory>VectorPairHMM</workingDirectory>
|
|
<environmentVariables>
|
|
<ARCHITECTURE>${pairhmm.build.architecture}</ARCHITECTURE>
|
|
<LIB_EXT>${pairhmm.build.extension}</LIB_EXT>
|
|
<CXXFLAGS>${pairhmm.build.cxxflags}</CXXFLAGS>
|
|
<LDFLAGS>${pairhmm.build.ldflags}</LDFLAGS>
|
|
<OUTPUT_DIR>${project.build.directory}</OUTPUT_DIR>
|
|
</environmentVariables>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<!-- Don't actually install this artifact into the user's repo -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-install-plugin</artifactId>
|
|
<configuration>
|
|
<skip>true</skip>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<!-- Copy the built library into sting-utils -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>default-install</id>
|
|
<goals>
|
|
<goal>copy-resources</goal>
|
|
</goals>
|
|
<phase>install</phase>
|
|
<configuration>
|
|
<outputDirectory>${pairhmm.resources.directory}</outputDirectory>
|
|
<resources>
|
|
<resource>
|
|
<directory>${project.build.directory}</directory>
|
|
<includes>
|
|
<include>**/*</include>
|
|
</includes>
|
|
</resource>
|
|
</resources>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<!-- pom.xml cleanup, always sort according to the definitions in sting-root -->
|
|
<plugin>
|
|
<groupId>com.google.code.sortpom</groupId>
|
|
<artifactId>maven-sortpom-plugin</artifactId>
|
|
<configuration>
|
|
<createBackupFile>false</createBackupFile>
|
|
<predefinedSortOrder>custom_1</predefinedSortOrder>
|
|
<lineSeparator>\n</lineSeparator>
|
|
<encoding>${sourceEncoding}</encoding>
|
|
<keepBlankLines>true</keepBlankLines>
|
|
<sortDependencies>scope</sortDependencies>
|
|
<nrOfIndentSpace>4</nrOfIndentSpace>
|
|
<expandEmptyElements>false</expandEmptyElements>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<profiles>
|
|
|
|
<profile>
|
|
<id>mac_x86_64</id>
|
|
<activation>
|
|
<os>
|
|
<family>mac</family>
|
|
<arch>x86_64</arch>
|
|
</os>
|
|
</activation>
|
|
<properties>
|
|
<pairhmm.build.architecture>mac_x86_64</pairhmm.build.architecture>
|
|
<pairhmm.build.extension>jnilib</pairhmm.build.extension>
|
|
<pairhmm.build.ldflags>-dynamiclib</pairhmm.build.ldflags>
|
|
</properties>
|
|
</profile>
|
|
|
|
<profile>
|
|
<id>linux_x86_64</id>
|
|
<activation>
|
|
<os>
|
|
<name>linux</name>
|
|
<arch>amd64</arch>
|
|
</os>
|
|
</activation>
|
|
<properties>
|
|
<pairhmm.build.architecture>linux_x86_64</pairhmm.build.architecture>
|
|
<pairhmm.build.extension>jnilib</pairhmm.build.extension>
|
|
<pairhmm.build.cxxflags>-fPIC</pairhmm.build.cxxflags>
|
|
<pairhmm.build.ldflags>-shared</pairhmm.build.ldflags>
|
|
</properties>
|
|
</profile>
|
|
|
|
</profiles>
|
|
</project>
|