commit:     5514f84d164bf7fb697b19eb7f7661e14ad0b718
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 25 13:05:59 2022 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Tue Jan 25 13:05:59 2022 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=5514f84d

sci-biology/salmon: bump to 1.6.0

Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 .../salmon/files/salmon-1.6.0-find-boost.patch     | 116 +++++++++++++++++++++
 sci-biology/salmon/salmon-1.4.0.ebuild             |  38 -------
 sci-biology/salmon/salmon-1.6.0.ebuild             |  70 +++++++++++++
 3 files changed, 186 insertions(+), 38 deletions(-)

diff --git a/sci-biology/salmon/files/salmon-1.6.0-find-boost.patch 
b/sci-biology/salmon/files/salmon-1.6.0-find-boost.patch
new file mode 100644
index 000000000..76ef25547
--- /dev/null
+++ b/sci-biology/salmon/files/salmon-1.6.0-find-boost.patch
@@ -0,0 +1,116 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 1be02ab..48ffda2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -428,9 +428,9 @@ endif()
+ ##
+ # Set the latest version and look for what we need
+ ##
+-set(Boost_ADDITIONAL_VERSIONS "1.59.0" "1.60.0" "1.61.0" "1.62.0" "1.63.0" 
"1.64.0" "1.65.0" "1.66.0" "1.67.0" "1.68.0" "1.69.0" "1.70.0" "1.71.0")
++set(Boost_ADDITIONAL_VERSIONS "1.59.0" "1.60.0" "1.61.0" "1.62.0" "1.63.0" 
"1.64.0" "1.65.0" "1.66.0" "1.67.0" "1.68.0" "1.69.0" "1.70.0" "1.71.0" 
"1.77.0" "1.78.0")
+ if (NOT BOOST_RECONFIGURE)
+-find_package(Boost 1.59.0 COMPONENTS iostreams filesystem system timer chrono 
program_options)
++find_package(Boost 1.59.0 COMPONENTS ALL)
+ message("BOOST_INCLUDEDIR = ${BOOST_INCLUDEDIR}")
+ message("BOOST_LIBRARYDIR = ${BOOST_LIBRARYDIR}")
+ message("Boost_FOUND = ${Boost_FOUND}")
+@@ -610,7 +610,7 @@ if (NOT CEREAL_FOUND)
+ endif()
+ 
+ ## Try and find TBB first
+-find_package(TBB 2019.0 COMPONENTS tbb tbbmalloc tbbmalloc_proxy)
++find_package(TBB)
+ 
+ ## NOTE: we actually require at least 2019 U4 or greater
+ ## since we are using tbb::global_control.  However, they 
+@@ -618,12 +618,8 @@ find_package(TBB 2019.0 COMPONENTS tbb tbbmalloc 
tbbmalloc_proxy)
+ ## source.  Check before release if we can bump to the 2020
+ ## version (requires having tbb 2020 for OSX).
+ if (${TBB_FOUND})
+-  if (${TBB_VERSION} VERSION_GREATER_EQUAL 2019.0)
+   message("FOUND SUITABLE TBB VERSION : ${TBB_VERSION}")
+   set(TBB_TARGET_EXISTED TRUE)
+-  else()
+-    set(TBB_TARGET_EXISTED FALSE)
+-  endif()
+ else()
+   set(TBB_TARGET_EXISTED FALSE)
+ endif()
+@@ -750,10 +746,6 @@ if(NOT libgff_FOUND)
+   message("Build system will compile libgff")
+   
message("==================================================================")
+   externalproject_add(libgff
+-    DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external
+-    DOWNLOAD_COMMAND curl -k -L 
https://github.com/COMBINE-lab/libgff/archive/v2.0.0.tar.gz -o libgff.tgz &&
+-      ${SHASUM} 
7656b19459a7ca7d2fd0fcec4f2e0fd0deec1b4f39c703a114e8f4c22d82a99c libgff.tgz &&
+-      tar -xzvf libgff.tgz
+     ##
+     #URL https://github.com/COMBINE-lab/libgff/archive/v1.1.tar.gz
+     #DOWNLOAD_NAME libff.tgz
+diff --git a/cmake/Modules/FindTBB.cmake b/cmake/Modules/FindTBB.cmake
+index c8b3eb5..b4c23da 100644
+--- a/cmake/Modules/FindTBB.cmake
++++ b/cmake/Modules/FindTBB.cmake
+@@ -184,7 +184,6 @@ if(NOT TBB_FOUND)
+   ##################################
+ 
+   if(TBB_INCLUDE_DIRS)
+-    file(READ "${TBB_INCLUDE_DIRS}/tbb/tbb_stddef.h" _tbb_version_file)
+     string(REGEX REPLACE ".*#define TBB_VERSION_MAJOR ([0-9]+).*" "\\1"
+         TBB_VERSION_MAJOR "${_tbb_version_file}")
+     string(REGEX REPLACE ".*#define TBB_VERSION_MINOR ([0-9]+).*" "\\1"
+diff --git a/scripts/fetchPufferfish.sh b/scripts/fetchPufferfish.sh
+index d32e131..1b5cbf2 100755
+--- a/scripts/fetchPufferfish.sh
++++ b/scripts/fetchPufferfish.sh
+@@ -10,18 +10,6 @@ CURR_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
+ EXTERNAL_DIR=${CURR_DIR}/../external
+ INSTALL_DIR=${CURR_DIR}/../external/install
+ 
+-if [ -d ${EXTERNAL_DIR}/pufferfish ] ; then
+-    rm -fr ${EXTERNAL_DIR}/pufferfish
+-fi
+-
+-if [ -d ${INSTALL_DIR}/include/pufferfish ] ; then
+-    rm -fr ${INSTALL_DIR}/include/pufferfish
+-fi
+-
+-if [ -d ${INSTALL_DIR}/src/pufferfish ] ; then
+-    rm -fr ${INSTALL_DIR}/src/pufferfish
+-fi
+-
+ SVER=salmon-v1.6.0
+ #SVER=develop
+ #SVER=sketch-mode
+@@ -29,31 +17,6 @@ SVER=salmon-v1.6.0
+ 
EXPECTED_SHA256=f71b3c08f254200fcdc2eb8fe3dcca8a8e9489e79ef5952a4958d8b9979831dc
+ 
+ mkdir -p ${EXTERNAL_DIR}
+-curl -k -L https://github.com/COMBINE-lab/pufferfish/archive/${SVER}.zip -o 
${EXTERNAL_DIR}/pufferfish.zip
+-
+-hashcheck=""
+-if exists sha256sum; then
+-      hashcheck="sha256sum"
+-elif exists shasum; then
+-      hashcheck="shasum -a256"
+-else
+-      unset hashcheck
+-fi
+-
+-if [ -z "${hashcheck-}" ]; then
+-    echo "Couldn't find shasum command; can't verify contents of downloaded 
pufferfish";
+-else
+-    if [[ $SVER != develop ]]; then
+-        echo "${EXPECTED_SHA256}  ${EXTERNAL_DIR}/pufferfish.zip" | 
${hashcheck} -c - || { echo "pufferfish.zip did not match expected SHA1! 
Exiting."; exit 1; }
+-    else
+-        echo "not testing sha since pulling from develop"
+-    fi
+-fi
+-
+-
+-rm -fr ${EXTERNAL_DIR}/pufferfish
+-unzip ${EXTERNAL_DIR}/pufferfish.zip -d ${EXTERNAL_DIR}
+-mv ${EXTERNAL_DIR}/pufferfish-${SVER} ${EXTERNAL_DIR}/pufferfish
+ 
+ mkdir -p ${INSTALL_DIR}/include/pufferfish
+ 

diff --git a/sci-biology/salmon/salmon-1.4.0.ebuild 
b/sci-biology/salmon/salmon-1.4.0.ebuild
deleted file mode 100644
index 420cb2ae2..000000000
--- a/sci-biology/salmon/salmon-1.4.0.ebuild
+++ /dev/null
@@ -1,38 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit cmake
-
-DESCRIPTION="Transcript-level quantification from RNA-seq reads using 
lightweight alignments"
-HOMEPAGE="https://github.com/COMBINE-lab/salmon";
-SRC_URI="https://github.com/COMBINE-lab/${PN}/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS=""
-
-RDEPEND="
-       dev-libs/boost:=[threads(-)]
-       sys-libs/zlib
-"
-
-DEPEND="${RDEPEND}
-       app-arch/bzip2
-       app-arch/xz-utils
-       >=dev-libs/jemalloc-5.0.1
-       >=dev-cpp/tbb-2018.20180312
-       sci-biology/pufferfish
-       dev-libs/cereal
-"
-
-BDEPEND="
-       app-arch/unzip
-       net-misc/curl
-"
-
-PATCHES=(
-       "${FILESDIR}/${P}-do-not-fetch-pufferfish.patch"
-       "${FILESDIR}/${P}-allow-newer-boost.patch"
-)

diff --git a/sci-biology/salmon/salmon-1.6.0.ebuild 
b/sci-biology/salmon/salmon-1.6.0.ebuild
new file mode 100644
index 000000000..6c19ff58f
--- /dev/null
+++ b/sci-biology/salmon/salmon-1.6.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="Transcript-level quantification from RNA-seq reads using 
lightweight alignments"
+HOMEPAGE="https://github.com/COMBINE-lab/salmon";
+SRC_URI="
+       https://github.com/COMBINE-lab/${PN}/archive/v${PV}.tar.gz -> 
${P}.tar.gz
+       https://github.com/COMBINE-lab/pufferfish/archive/salmon-v${PV}.tar.gz 
-> pufferfish-${P}.tar.gz
+       https://github.com/COMBINE-lab/libgff/archive/v2.0.0.tar.gz -> 
libgff-${P}.tar.gz
+"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+       dev-libs/boost:=
+       sys-libs/zlib
+"
+
+DEPEND="${RDEPEND}
+       app-arch/bzip2
+       app-arch/xz-utils
+       >=dev-libs/jemalloc-5.0.1
+       >=dev-cpp/tbb-2018.20180312
+       dev-libs/cereal
+       sci-libs/io_lib[static-libs]
+"
+
+BDEPEND="
+       app-arch/unzip
+       net-misc/curl
+"
+
+PATCHES=(
+       "${FILESDIR}/${P}-find-boost.patch"
+)
+
+src_unpack() {
+       default
+       mkdir -p "${S}/external/install/lib" || die
+       mv "${WORKDIR}/pufferfish-${PN}-v${PV}" "${S}/external/pufferfish" || 
die
+       mv "${WORKDIR}/libgff-2.0.0" "${S}/external/libgff-2.0.0" || die
+       ln -s "${EPREFIX}/usr/lib64/libtbb.so" 
"${S}/external/install/lib/libtbb.so" || die
+       ln -s "${EPREFIX}/usr/lib64/libtbbmalloc.so" 
"${S}/external/install/lib/libtbbmalloc.so" || die
+       ln -s "${EPREFIX}/usr/lib64/libtbbmalloc_proxy.so" 
"${S}/external/install/lib/libtbbmalloc_proxy.so" || die
+}
+
+src_prepare() {
+       cmake_src_prepare
+       sed -e 's:tbb/mutex.h:oneapi/tbb/mutex.h:g' \
+               -i 
external/pufferfish/external/twopaco/graphconstructor/vertexenumerator.h \
+               -i 
external/pufferfish/external/twopaco/common/streamfastaparser.h || die
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DFETCH_BOOST=FALSE
+               -DBOOST_INCLUDEDIR="${EPREFIX}/usr/include/boost"
+               -DBOOST_LIBRARYDIR="${EPREFIX}/usr/lib64"
+               -DBoost_ALL_FOUND=TRUE
+               -Dboost_headers_FOUND=TRUE
+               -DBoost_FOUND=TRUE
+       )
+       cmake_src_configure
+}

Reply via email to