commit:     0f24b4873a8cc38eaf05aa590d26f40a640e4b4b
Author:     Martin Mokrejs <mmokrejs <AT> fold <DOT> natur <DOT> cuni <DOT> cz>
AuthorDate: Mon Jun 25 12:14:06 2018 +0000
Commit:     Martin Mokrejs <mmokrejs <AT> fold <DOT> natur <DOT> cuni <DOT> cz>
CommitDate: Mon Jun 25 12:14:06 2018 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=0f24b487

sci-biology/salmon: drop calls to curl, fix libdir

This zaps all calls to curl downloads during compile time
except those for Google tbb. It should not get executed anyway
as the dev-cpp/tbb dependency is enforced.

Package-Manager: Portage-2.3.40, Repoman-2.3.9

 .../salmon/files/salmon-0.10.2_fix_lib_dir.patch   |  22 +++
 .../files/salmon-0.10.2_remove_curl_calls.patch    | 200 +++++++++++++++++++++
 sci-biology/salmon/salmon-0.10.2.ebuild            |  23 ++-
 sci-biology/salmon/salmon-9999.ebuild              |   9 +-
 4 files changed, 244 insertions(+), 10 deletions(-)

diff --git a/sci-biology/salmon/files/salmon-0.10.2_fix_lib_dir.patch 
b/sci-biology/salmon/files/salmon-0.10.2_fix_lib_dir.patch
new file mode 100644
index 000000000..eb606c00c
--- /dev/null
+++ b/sci-biology/salmon/files/salmon-0.10.2_fix_lib_dir.patch
@@ -0,0 +1,22 @@
+--- salmon-0.10.2/src/CMakeLists.txt   2018-06-25 13:35:45.723519730 +0200
++++ salmon-0.10.2/src/CMakeLists.txt   2018-06-25 13:44:01.326139539 +0200
+@@ -296,6 +296,8 @@
+     )
+ ENDIF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
+ 
++include(GNUInstallDirs)
++
+ set(INSTALL_LIB_DIR lib )
+ set(INSTALL_BIN_DIR bin )
+ set(INSTALL_INCLUDE_DIR include )
+@@ -311,8 +313,8 @@
+ 
+ install(TARGETS salmon salmon_core
+                 RUNTIME DESTINATION bin
+-                LIBRARY DESTINATION lib
+-                ARCHIVE DESTINATION lib
++                LIBRARY DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}"
++                ARCHIVE DESTINATION "${CMAKE_INSTALL_FULL_LIBDIR}"
+         )
+ 
+ add_custom_command(TARGET unitTests POST_BUILD

diff --git a/sci-biology/salmon/files/salmon-0.10.2_remove_curl_calls.patch 
b/sci-biology/salmon/files/salmon-0.10.2_remove_curl_calls.patch
new file mode 100644
index 000000000..438763960
--- /dev/null
+++ b/sci-biology/salmon/files/salmon-0.10.2_remove_curl_calls.patch
@@ -0,0 +1,200 @@
+--- salmon-0.10.2/CMakeLists.txt       2018-06-25 13:12:49.275828719 +0200
++++ salmon-0.10.2/CMakeLists.txt       2018-06-25 13:12:38.945565690 +0200
+@@ -235,31 +235,7 @@
+ 
+ find_package (LibLZMA)
+ if (NOT LIBLZMA_FOUND)
+-    message ("Will attempt to fetch and build liblzma")
+-    message ("=======================================")
+-ExternalProject_Add(liblzma
+-    DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external
+-    ##
+-    DOWNLOAD_COMMAND curl -k -L http://tukaani.org/xz/xz-5.2.2.tar.gz -o 
xz-5.2.2.tar.gz &&
+-                     ${SHASUM} 
73df4d5d34f0468bd57d09f2d8af363e95ed6cc3a4a86129d2f2c366259902a2 
xz-5.2.2.tar.gz &&
+-                     tar -xzvf xz-5.2.2.tar.gz
+-    #URL http://tukaani.org/xz/xz-5.2.2.tar.gz
+-    #URL_HASH SHA1=14663612422ab61386673be78fbb2556f50a1f08
+-    ##
+-    SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/xz-5.2.2
+-    INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install
+-    BUILD_IN_SOURCE TRUE
+-    CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/external/xz-5.2.2/configure 
--prefix=<INSTALL_DIR> CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} 
CFLAGS=${EXTRA_CMAKE_INCLUDE_FLAGS} CPPFLAGS=${EXTRA_CMAKE_INCLUDE_FLAGS} 
LDFLAGS=${EXTRA_CMAKE_LIBRARY_FLAGS}
+-    BUILD_COMMAND make ${QUIET_MAKE}
+-    INSTALL_COMMAND make ${QUIET_MAKE} install
+-)
+-
+-# Tell cmake that the external project generated a library so we can
+-# add dependencies here instead of later
+-set (LIBLZMA_LIBRARIES ${GAT_SOURCE_DIR}/external/install/lib/liblzma.a)
+-set (LIBSTADEN_LDFLAGS "-L${GAT_SOURCE_DIR}/external/install/lib")
+-set (LIBSTADEN_CFLAGS "-I${GAT_SOURCE_DIR}/external/install/include")
+-set (FETCHED_LIBLZMA TRUE)
++    message (FATAL_ERROR "liblzma must be installed before configuration & 
building can proceed")
+ else()
+     message("Found liblzma library: ${LIBLZMA_LIBRARIES}")
+     message("===========================================")
+@@ -267,28 +243,7 @@
+ 
+ find_package (BZip2)
+ if (NOT BZIP2_FOUND)
+-    message ("Will attempt to fetch and build libbz2")
+-    message ("=======================================")
+-ExternalProject_Add(libbz2
+-    DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external
+-    DOWNLOAD_COMMAND curl -k -L http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz 
-o bzip2-1.0.6.tar.gz &&
+-                     ${SHASUM} 
a2848f34fcd5d6cf47def00461fcb528a0484d8edef8208d6d2e2909dc61d9cd 
bzip2-1.0.6.tar.gz &&
+-                     tar -xzvf  bzip2-1.0.6.tar.gz
+-    #URL http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz
+-    #URL_HASH SHA1=3f89f861209ce81a6bab1fd1998c0ef311712002
+-    SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/bzip2-1.0.6
+-    INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install
+-    BUILD_IN_SOURCE TRUE
+-    CONFIGURE_COMMAND ""
+-    BUILD_COMMAND make ${QUIET_MAKE} CC=${CMAKE_C_COMPILER} 
CXX=${CMAKE_CXX_COMPILER}
+-    INSTALL_COMMAND make ${QUIET_MAKE} install PREFIX=<INSTALL_DIR>
+-)
+-# Tell cmake that the external project generated a library so we can
+-# add dependencies here instead of later
+-set (BZIP2_LIBRARIES ${GAT_SOURCE_DIR}/external/install/lib/libbz2.a)
+-set (LIBSTADEN_LDFLAGS "-L${GAT_SOURCE_DIR}/external/install/lib 
-I${GAT_SOURCE_DIR}/external/install/include")
+-set (LIBSTADEN_CFLAGS "-I${GAT_SOURCE_DIR}/external/install/include")
+-set (FETCHED_LIBBZ2 TRUE)
++    message (FATAL_ERROR "libbz2 must be installed before configuration & 
building can proceed")
+ else()
+     message("Found libbz2 library: ${BZIP2_LIBRARIES}")
+     message("===========================================")
+@@ -333,61 +288,15 @@
+ # Either inform the user of how to obtain Boost, or, if they passed in the 
FETCH_BOOST
+ # option, go and grab it for them.
+ ##
+-if ((NOT Boost_FOUND) AND (NOT FETCH_BOOST))
++if (NOT Boost_FOUND)
+       message(FATAL_ERROR
+         "Salmon cannot be compiled without Boost.\n"
+         "It is recommended to visit http://www.boost.org/ and install Boost 
according to those instructions.\n"
+         "This build system can also download and install a local version of 
boost for you (this takes a lot of time).\n"
+         "To fetch and build boost locally, call cmake with -DFETCH_BOOST=TRUE"
+     )
+-elseif(FETCH_BOOST)
+-    ## Let the rest of the build process know we're going to be fetching boost
+-    set (BOOST_LIB_SUBSET --with-iostreams --with-atomic --with-chrono 
--with-container --with-date_time --with-exception
+-                          --with-filesystem --with-graph 
--with-graph_parallel --with-math
+-                          --with-program_options --with-system --with-thread
+-                          --with-timer)
+-    set (BOOST_WILL_RECONFIGURE TRUE)
+-    set (FETCH_BOOST FALSE)
+-    message("Build system will fetch and build Boost")
+-    
message("==================================================================")
+-    ExternalProject_Add(libboost
+-        DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external
+-        DOWNLOAD_COMMAND curl -k -L  
http://downloads.sourceforge.net/project/boost/boost/1.66.0/boost_1_66_0.tar.gz 
-o boost_1_66_0.tar.gz &&
+-                         ${SHASUM} 
bd0df411efd9a585e5a2212275f8762079fed8842264954675a4fddc46cfcf60 
boost_1_66_0.tar.gz &&
+-                         tar xzf boost_1_66_0.tar.gz
+-        SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/boost_1_66_0
+-        INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install
+-        #PATCH_COMMAND patch -p2 < 
${CMAKE_CURRENT_SOURCE_DIR}/external/boost156.patch
+-      CONFIGURE_COMMAND CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} 
${CMAKE_CURRENT_SOURCE_DIR}/external/boost_1_66_0/bootstrap.sh 
${BOOST_CONFIGURE_TOOLSET} ${BOOST_BUILD_LIBS} --prefix=<INSTALL_DIR>
+-      BUILD_COMMAND CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} 
${CMAKE_CURRENT_SOURCE_DIR}/external/boost_1_66_0/b2 -d0 -j2 
${BOOST_LIB_SUBSET} toolset=${BOOST_TOOLSET} ${BOOST_EXTRA_FLAGS} 
cxxflags=${BOOST_CXX_FLAGS} link=static install
+-        BUILD_IN_SOURCE 1
+-        INSTALL_COMMAND ""
+-    )
+-
+-    ##
+-    # After we've installed boost,
+-    ##
+-    SET( RECONFIG_FLAGS ${RECONFIG_FLAGS} -DBOOST_WILL_RECONFIGURE=FALSE 
-DBOOST_RECONFIGURE=TRUE -DFETCH_BOOST=FALSE)
+-    ExternalProject_Add_Step(libboost reconfigure
+-        COMMAND ${CMAKE_COMMAND} ${CMAKE_CURRENT_SOURCE_DIR} ${RECONFIG_FLAGS}
+-        DEPENDEES install
+-    )
+-    set (FETCHED_BOOST TRUE)
+ endif()
+ 
+-##
+-# If we're fetching boost and we need to have dummy paths for these variables
+-# so that CMake won't complain
+-##
+-if (BOOST_WILL_RECONFIGURE)
+-    message("Setting Temporary Boost paths")
+-    set(Boost_INCLUDE_DIR 
${CMAKE_CURRENT_SOURCE_DIR}/external/install/include)
+-    set(Boost_INCLUDE_DIRS 
${CMAKE_CURRENT_SOURCE_DIR}/external/install/include)
+-    set(Boost_LIBRARY_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/external/install/lib)
+-    set(Boost_FOUND TRUE)
+-endif()
+-
+-
+ message("BOOST INCLUDE DIR = ${Boost_INCLUDE_DIR}")
+ message("BOOST INCLUDE DIRS = ${Boost_INCLUDE_DIRS}")
+ message("BOOST LIB DIR = ${Boost_LIBRARY_DIRS}")
+@@ -422,9 +331,9 @@
+ include(ExternalProject)
+ ExternalProject_Add(libcereal
+     DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external
+-    DOWNLOAD_COMMAND curl -k -L 
https://github.com/USCiLab/cereal/archive/v1.2.2.tar.gz -o cereal-v1.2.2.tar.gz 
&&             
+-                     ${SHASUM} 
1921f26d2e1daf9132da3c432e2fd02093ecaedf846e65d7679ddf868c7289c4  
cereal-v1.2.2.tar.gz &&
+-                     tar -xzvf cereal-v1.2.2.tar.gz
++    DOWNLOAD_COMMAND cp ../../../distdir/cereal-1.2.2.tar.gz . &&             
 
++                     ${SHASUM} 
1921f26d2e1daf9132da3c432e2fd02093ecaedf846e65d7679ddf868c7289c4  
cereal-1.2.2.tar.gz &&
++                     tar -xzvf cereal-1.2.2.tar.gz
+ 
+     ##
+     #URL https://github.com/USCiLab/cereal/archive/v1.2.2.tar.gz
+@@ -455,12 +364,12 @@
+ ExternalProject_Add(libbwa
+     DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external
+     #URL https://github.com/COMBINE-lab/bwa/archive/0.7.12.3.tar.gz
+-    #DOWNLOAD_NAME bwa-master.tar.gz
+-    DOWNLOAD_COMMAND curl -k -L 
https://github.com/COMBINE-lab/bwa/archive/v0.7.12.5.tar.gz -o 
bwa-master.tar.gz &&
+-                    ${SHASUM} 
1ac5661d9e12e9017a47f0264201a75d9128f28dbd9a26952925f7745ddf6036 
bwa-master.tar.gz &&
+-                    mkdir -p bwa-master &&
+-                    tar -xzvf bwa-master.tar.gz --strip-components=1 -C 
bwa-master
+-    SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/bwa-master
++    #DOWNLOAD_NAME bwa-0.7.12.5.tar.gz
++    DOWNLOAD_COMMAND cp ../../../distdir/bwa-0.7.12.5.tar.gz . &&
++                    ${SHASUM} 
1ac5661d9e12e9017a47f0264201a75d9128f28dbd9a26952925f7745ddf6036 
bwa-0.7.12.5.tar.gz &&
++                    mkdir -p bwa-0.7.12.5 &&
++                    tar -xzvf bwa-0.7.12.5.tar.gz --strip-components=1 -C 
bwa-0.7.12.5
++    SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/bwa-0.7.12.5
+     INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install
+     CONFIGURE_COMMAND ""
+     BUILD_COMMAND sh -c "make ${QUIET_MAKE} CC=${CMAKE_C_COMPILER} 
CXX=${CMAKE_CXX_COMPILER}"
+@@ -562,9 +471,9 @@
+ message("==================================================================")
+ ExternalProject_Add(libgff
+     DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external
+-    DOWNLOAD_COMMAND curl -k -L 
https://github.com/COMBINE-lab/libgff/archive/v1.1.tar.gz -o libgff.tgz &&
+-                     ${SHASUM} 
34597ecd3718e6d6e7a1dd4350220664be2c1cd992070d1218564a20d7aa5697  libgff.tgz &&
+-                     tar -xzvf libgff.tgz 
++    DOWNLOAD_COMMAND cp ../../../distdir/libgff-1.1.tgz . &&
++                     ${SHASUM} 
34597ecd3718e6d6e7a1dd4350220664be2c1cd992070d1218564a20d7aa5697 libgff-1.1.tgz 
&&
++                     tar -xzvf libgff-1.1.tgz
+     ##
+     #URL https://github.com/COMBINE-lab/libgff/archive/v1.1.tar.gz
+     #DOWNLOAD_NAME libff.tgz
+@@ -600,10 +509,10 @@
+ message("==================================================================")
+ ExternalProject_Add(libstadenio
+     DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external
+-    DOWNLOAD_COMMAND curl -k -L 
https://github.com/COMBINE-lab/staden-io_lib/archive/v1.14.8.1.tar.gz -o 
staden-io_lib-v1.14.8.tar.gz &&
+-                     ${SHASUM} 
f6f30eefa478cfb708f3109a35fb6ffa0e24951d9d971985df2cef5919dd0bc3 
staden-io_lib-v1.14.8.tar.gz &&
++    DOWNLOAD_COMMAND cp ../../../distdir/staden-io_lib-1.14.8.tar.gz . &&
++                     ${SHASUM} 
f6f30eefa478cfb708f3109a35fb6ffa0e24951d9d971985df2cef5919dd0bc3 
staden-io_lib-1.14.8.tar.gz &&
+                      mkdir -p staden-io_lib-1.14.8 &&
+-                     tar -xzf staden-io_lib-v1.14.8.tar.gz 
--strip-components=1 -C staden-io_lib-1.14.8 &&
++                     tar -xzf staden-io_lib-1.14.8.tar.gz 
--strip-components=1 -C staden-io_lib-1.14.8 &&
+                      rm -fr staden-io_lib &&
+                      mv -f staden-io_lib-1.14.8 staden-io_lib
+     SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/staden-io_lib
+@@ -620,9 +529,9 @@
+ message("==================================================================")
+ ExternalProject_Add(libspdlog
+     DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external
+-    DOWNLOAD_COMMAND curl -k -L 
https://github.com/COMBINE-lab/spdlog/archive/v0.16.1.tar.gz -o 
spdlog-v0.16.1.tar.gz &&
+-                     ${SHASUM} 
733260e1fbdcf1b3dc307fc585e4476240026de8be28eb905731d2ab0942deae 
spdlog-v0.16.1.tar.gz &&
+-                     tar -xzf spdlog-v0.16.1.tar.gz 
++    DOWNLOAD_COMMAND cp ../../../distdir/spdlog-0.16.1.tar.gz . &&
++                     ${SHASUM} 
733260e1fbdcf1b3dc307fc585e4476240026de8be28eb905731d2ab0942deae 
spdlog-0.16.1.tar.gz &&
++                     tar -xzf spdlog-0.16.1.tar.gz 
+     ##
+     #URL https://github.com/COMBINE-lab/spdlog/archive/v0.12.0.tar.gz
+     #DOWNLOAD_NAME spdlog-v0.12.0.tar.gz

diff --git a/sci-biology/salmon/salmon-0.10.2.ebuild 
b/sci-biology/salmon/salmon-0.10.2.ebuild
index 540225019..b3bdc6d53 100644
--- a/sci-biology/salmon/salmon-0.10.2.ebuild
+++ b/sci-biology/salmon/salmon-0.10.2.ebuild
@@ -8,7 +8,12 @@ inherit cmake-utils
 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/RapMap/archive/salmon-v0.10.2.zip -> 
${P}_RapMap.zip"
+       https://github.com/COMBINE-lab/RapMap/archive/salmon-v0.10.2.zip -> 
${P}_RapMap.zip
+       https://github.com/USCiLab/cereal/archive/v1.2.2.tar.gz -> 
cereal-1.2.2.tar.gz
+       https://github.com/COMBINE-lab/bwa/archive/v0.7.12.5.tar.gz -> 
bwa-0.7.12.5.tar.gz
+       https://github.com/COMBINE-lab/libgff/archive/v1.1.tar.gz -> 
libgff-1.1.tgz
+       https://github.com/COMBINE-lab/staden-io_lib/archive/v1.14.8.1.tar.gz 
-> staden-io_lib-1.14.8.tar.gz
+       https://github.com/COMBINE-lab/spdlog/archive/v0.16.1.tar.gz -> 
spdlog-0.16.1.tar.gz"
 
 LICENSE="GPL-3"
 SLOT="0"
@@ -16,7 +21,9 @@ KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
 IUSE=""
 
 PATCHES=( "${FILESDIR}"/${P}-no-boost-static.patch
-               "${FILESDIR}"/salmon-0.10.2_remove_curl_call.patch )
+               "${FILESDIR}"/salmon-0.10.2_remove_curl_call.patch
+               "${FILESDIR}"/salmon-0.10.2_remove_curl_calls.patch
+               "${FILESDIR}"/salmon-0.10.2_fix_lib_dir.patch )
 
 RDEPEND="${DEPEND}"
 # budled copies of:
@@ -31,15 +38,15 @@ RDEPEND="${DEPEND}"
 #
 # dev-libs/spdlog-0.16.1
 # cereal-1.2.2
-DEPEND="sys-libs/zlib
+
+# see the many curl executions:
+# salmon-0.10.2$ find . -type f | xargs grep curl 2>/dev/null
+#
+DEPEND="net-misc/curl
+               sys-libs/zlib
                app-arch/bzip2
                app-arch/xz-utils
                dev-libs/boost:0[threads]
                >=dev-libs/jemalloc-5.0.1
                >=dev-cpp/tbb-2018.20180312"
 RDEPEND="${DEPEND}"
-
-src_install() {
-       cmake-utils_src_install
-       rm -r "${ED}"/usr/tests || die
-}

diff --git a/sci-biology/salmon/salmon-9999.ebuild 
b/sci-biology/salmon/salmon-9999.ebuild
index 0083648fb..b5e748fd2 100644
--- a/sci-biology/salmon/salmon-9999.ebuild
+++ b/sci-biology/salmon/salmon-9999.ebuild
@@ -29,7 +29,8 @@ PATCHES=( "${FILESDIR}"/${P}-no-boost-static.patch
 #
 # dev-libs/spdlog-0.16.1
 # cereal-1.2.2
-DEPEND="sys-libs/zlib
+DEPEND="net-misc/curl
+               sys-libs/zlib
                app-arch/bzip2
                app-arch/xz-utils
                dev-libs/boost:0[threads]
@@ -53,6 +54,10 @@ RDEPEND="${DEPEND}"
 # and maybe more
 
 # See https://github.com/COMBINE-lab/salmon/issues/236 for Cmake tweaks needed 
by Debian
+
+# see the many curl executions:
+# salmon-0.10.2$ find . -type f | xargs grep curl 2>/dev/null
+#
 src_configure(){
        local mycmakeargs=(
                "-DBOOST_INCLUDEDIR=${EPREFIX}/usr/include/boost/"
@@ -67,5 +72,5 @@ src_configure(){
 
 src_install() {
        cmake-utils_src_install
-       rm -r "${ED}"/usr/tests || die
+       rm -rf "${ED}"/usr/tests || die
 }

Reply via email to