summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-biology/seqan/Manifest1
-rw-r--r--sci-biology/seqan/files/seqan-2.4.0-fix-pthread.patch12
-rw-r--r--sci-biology/seqan/metadata.xml11
-rw-r--r--sci-biology/seqan/seqan-2.4.0.ebuild92
4 files changed, 112 insertions, 4 deletions
diff --git a/sci-biology/seqan/Manifest b/sci-biology/seqan/Manifest
index 634425a08433..d26b1ac375fb 100644
--- a/sci-biology/seqan/Manifest
+++ b/sci-biology/seqan/Manifest
@@ -1,2 +1,3 @@
DIST seqan-src-1.4.2.tar.gz 120601994 BLAKE2B 62de2f961ba3c7c564090d746877d2b0b94ec7967c56f28786a286160770e66f0a8f08aacbe76d828cf429f92f0aa640ab29f5220297686979df9b7e9f9a0408 SHA512 dbb56167c507b70111619a414054d9e70f1db42507bbfdf9e40c5dcbbe9489ad4187d882e638a675e96551c860c08f8203c929c4c9a558b19ea7d6059f50492a
DIST seqan-src-2.2.0.tar.gz 110936119 BLAKE2B be41f266e140ec5992f7e9e507659dc7902aad0e0dd17e6a8c6c9ef0b11f690454a771ba10a5998ccf70e2e50ef9b24904ebf537d982b2cbc68963c004097614 SHA512 1097372976ec9c86baa3787ac38aa4fde3a3e153d81c22435e6a12df87d8063165f27406de33851bffadd904b0ac4ea579a28625cff6257fe8c14d906f408421
+DIST seqan-v2.4.0.tar.gz 109626901 BLAKE2B a10b5ee9a95667f560a8c2aec3808131f5f838f3c07d56584f4b29e9622912bf3d00b958b02db7c9d62dd52d9d08a171abcccef7f50cddf0407538168cf2c592 SHA512 f92cfc97304581920850c5d49fe4336f7c3855e99c3bcb035b6172fa7307e08e6f06fb06d1cd8f5b447c3220fc7f669684fbfe25641b43e9f6953999cf9ddd4b
diff --git a/sci-biology/seqan/files/seqan-2.4.0-fix-pthread.patch b/sci-biology/seqan/files/seqan-2.4.0-fix-pthread.patch
new file mode 100644
index 000000000000..b5e4b3642d42
--- /dev/null
+++ b/sci-biology/seqan/files/seqan-2.4.0-fix-pthread.patch
@@ -0,0 +1,12 @@
+--- a/util/cmake/seqan-config.cmake
++++ b/util/cmake/seqan-config.cmake
+@@ -307,7 +307,8 @@
+
+ # some OSes don't link pthread fully when building statically so we explicitly include whole archive
+ if (UNIX AND NOT APPLE)
+- set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--whole-archive -lpthread -Wl,--no-whole-archive")
++ find_package (Threads)
++ set (SEQAN_LIBRARIES ${SEQAN_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
+ endif ()
+
+ if ((${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") OR (${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD"))
diff --git a/sci-biology/seqan/metadata.xml b/sci-biology/seqan/metadata.xml
index 959160fe46b1..077f6458a927 100644
--- a/sci-biology/seqan/metadata.xml
+++ b/sci-biology/seqan/metadata.xml
@@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>sci-biology@gentoo.org</email>
- <name>Gentoo Biology Project</name>
- </maintainer>
+ <maintainer type="project">
+ <email>sci-biology@gentoo.org</email>
+ <name>Gentoo Biology Project</name>
+ </maintainer>
+ <use>
+ <flag name="tools">Build and install SeqAn commandline tools, such as the Yara aligner</flag>
+ </use>
</pkgmetadata>
diff --git a/sci-biology/seqan/seqan-2.4.0.ebuild b/sci-biology/seqan/seqan-2.4.0.ebuild
new file mode 100644
index 000000000000..8b337e77e6be
--- /dev/null
+++ b/sci-biology/seqan/seqan-2.4.0.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
+PYTHON_COMPAT=( python2_7 )
+
+inherit cmake-utils multibuild python-any-r1 toolchain-funcs
+
+DESCRIPTION="C++ Sequence Analysis Library"
+HOMEPAGE="http://www.seqan.de/"
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/seqan/seqan.git"
+ EGIT_BRANCH="develop"
+else
+ SRC_URI="https://github.com/seqan/seqan/archive/seqan-v${PV}.tar.gz"
+ KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+
+ S=${WORKDIR}/seqan-seqan-v${PV}
+fi
+
+LICENSE="BSD GPL-3"
+SLOT="0"
+IUSE="cpu_flags_x86_sse4_1 doc tools"
+REQUIRED_USE="cpu_flags_x86_sse4_1"
+
+RDEPEND="
+ app-arch/bzip2:=
+ sys-libs/zlib:=
+ !!sci-biology/seqan:2.0
+ !!sci-biology/seqan:2.1
+ !!sci-biology/seqan:2.2"
+DEPEND="
+ ${RDEPEND}
+ doc? (
+ $(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}]')
+ ${PYTHON_DEPS}
+ )"
+
+PATCHES=( "${FILESDIR}"/${PN}-2.4.0-fix-pthread.patch )
+
+python_check_deps() {
+ use doc && has_version "dev-python/sphinx[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ use doc && python-any-r1_pkg_setup
+ use tools && tc-check-openmp
+
+ MULTIBUILD_VARIANTS=(
+ $(usev tools)
+ library
+ )
+ fi
+}
+
+src_configure() {
+ my_configure() {
+ local mycmakeargs=( -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}" )
+ case "${MULTIBUILD_ID}" in
+ tools)
+ mycmakeargs+=(
+ -DSEQAN_BUILD_SYSTEM=SEQAN_RELEASE_APPS
+ -DSEQAN_NO_DOX=ON
+ )
+ ;;
+ library)
+ mycmakeargs+=(
+ -DSEQAN_BUILD_SYSTEM=SEQAN_RELEASE_LIBRARY
+ -DSEQAN_NO_DOX=$(usex !doc)
+ )
+ ;;
+ *)
+ die "${MULTIBUILD_ID} is not recognized"
+ ;;
+ esac
+ cmake-utils_src_configure
+ }
+ multibuild_foreach_variant my_configure
+}
+
+src_compile() {
+ multibuild_foreach_variant cmake-utils_src_compile
+}
+
+src_install() {
+ multibuild_foreach_variant cmake-utils_src_install
+}