This is an automated email from the git hooks/post-receive script. tille pushed a commit to branch master in repository salmon.
commit a87ef14253c9525a0d5912aaaa4d6ca7ae73c527 Author: Andreas Tille <[email protected]> Date: Tue Jan 24 14:05:53 2017 +0100 Try hard to adapt all patches --- ...007-Remove-unnecessarily-linked-libraries.patch | 39 +- debian/patches/0008-Remove-salmon_core-lib.patch | 18 +- ...emove-FIND_PACKAGE-for-liblzma-and-libbz2.patch | 68 +--- debian/patches/add_MEM_F_SELF_OVLP.patch | 4 +- debian/patches/cmake-typo-fixes | 2 +- debian/patches/dependency-fix | 412 ++++++--------------- debian/patches/disable-version-check | 6 +- debian/patches/fix-unittest.patch | 2 +- debian/patches/reproducible.patch | 6 +- debian/patches/use-system-pkg-config-tbb | 16 +- debian/patches/use_debian_packaged_rapmap.patch | 23 +- debian/rules | 2 + 12 files changed, 183 insertions(+), 415 deletions(-) diff --git a/debian/patches/0007-Remove-unnecessarily-linked-libraries.patch b/debian/patches/0007-Remove-unnecessarily-linked-libraries.patch index 1bf1677..1992028 100644 --- a/debian/patches/0007-Remove-unnecessarily-linked-libraries.patch +++ b/debian/patches/0007-Remove-unnecessarily-linked-libraries.patch @@ -7,9 +7,20 @@ Subject: Remove unnecessarily linked libraries src/CMakeLists.txt | 6 +----- 2 files changed, 2 insertions(+), 6 deletions(-) +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -264,7 +264,7 @@ endif() + # Set the latest version and look for what we need + ## + set(Boost_ADDITIONAL_VERSIONS "1.53" "1.53.0" "1.54" "1.55" "1.56" "1.57.0" "1.58" "1.59" "1.60" "1.61") +-find_package(Boost 1.61.0 COMPONENTS iostreams filesystem system thread timer chrono program_options) ++find_package(Boost 1.61.0 COMPONENTS iostreams filesystem system thread timer program_options) + message("BOOST_INCLUDEDIR = ${BOOST_INCLUDEDIR}") + message("BOOST_LIBRARYDIR = ${BOOST_LIBRARYDIR}") + message("Boost_FOUND = ${Boost_FOUND}") --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt -@@ -135,16 +135,12 @@ +@@ -135,9 +135,7 @@ target_link_libraries(salmon jellyfish-2.0 bwa m @@ -20,21 +31,11 @@ Subject: Remove unnecessarily linked libraries ${LIBSALMON_LINKER_FLAGS} ${NON_APPLECLANG_LIBS} ${FAST_MALLOC_LIB} - ) - --add_dependencies(salmon libbwa) -- - # Link the executable - target_link_libraries(unitTests - salmon_core ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -240,7 +240,7 @@ - # Set the latest version and look for what we need - ## - set(Boost_ADDITIONAL_VERSIONS "1.53" "1.53.0" "1.54" "1.55" "1.56" "1.57.0" "1.58" "1.59" "1.60" "1.61") --find_package(Boost 1.61.0 COMPONENTS iostreams filesystem system thread timer chrono program_options serialization) -+find_package(Boost 1.61.0 COMPONENTS iostreams filesystem system thread timer program_options) - message("BOOST_INCLUDEDIR = ${BOOST_INCLUDEDIR}") - message("BOOST_LIBRARYDIR = ${BOOST_LIBRARYDIR}") - message("Boost_FOUND = ${Boost_FOUND}") +@@ -173,6 +171,7 @@ add_dependencies(salmon_core libstadenio + add_dependencies(salmon libstadenio) + add_dependencies(salmon_core libspdlog) + add_dependencies(salmon libspdlog) ++## FIXME: This was commented in version 0.7.2 in a quilt patch + add_dependencies(salmon_core libbwa) + add_dependencies(salmon libbwa) + add_dependencies(salmon_core libgff) diff --git a/debian/patches/0008-Remove-salmon_core-lib.patch b/debian/patches/0008-Remove-salmon_core-lib.patch index 1bd87fd..8f59b1d 100644 --- a/debian/patches/0008-Remove-salmon_core-lib.patch +++ b/debian/patches/0008-Remove-salmon_core-lib.patch @@ -8,23 +8,17 @@ Subject: Remove salmon_core lib --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt -@@ -103,13 +103,10 @@ +@@ -102,9 +102,6 @@ else() set(CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE) endif() -# Build the Salmon library -add_library(salmon_core ${SALMON_LIB_SRCS} ) - - # Build the salmon executable --add_executable(salmon ${SALMON_MAIN_SRCS} ${SALMON_ALIGN_SRCS}) -+add_executable(salmon ${SALMON_LIB_SRCS} ${SALMON_MAIN_SRCS} ${SALMON_ALIGN_SRCS}) - --add_executable(unitTests ${UNIT_TESTS_SRCS}) -+add_executable(unitTests ${SALMON_LIB_SRCS} ${UNIT_TESTS_SRCS}) - #add_executable(salmon-read ${SALMON_READ_SRCS}) - #set_target_properties(salmon-read PROPERTIES COMPILE_FLAGS "${CMAKE_CXX_FLAGS} -DHAVE_LIBPTHREAD -D_PBGZF_USE -fopenmp" -@@ -124,7 +121,6 @@ + # Build the salmon executable + add_executable(salmon ${SALMON_MAIN_SRCS} ${SALMON_ALIGN_SRCS}) +@@ -124,7 +121,6 @@ set (SUFFARRAY64_LIB ${GAT_SOURCE_DIR}/e # Link the executable target_link_libraries(salmon @@ -32,7 +26,7 @@ Subject: Remove salmon_core lib gff ${PTHREAD_LIB} ${Boost_LIBRARIES} -@@ -143,7 +139,6 @@ +@@ -181,7 +177,6 @@ add_dependencies(salmon libdivsufsort) # Link the executable target_link_libraries(unitTests @@ -40,7 +34,7 @@ Subject: Remove salmon_core lib gff ${PTHREAD_LIB} ${Boost_LIBRARIES} -@@ -218,7 +213,7 @@ +@@ -259,7 +254,7 @@ install(DIRECTORY # install(FILES ${Boost_LIBRARIES} # DESTINATION ${INSTALL_LIB_DIR}) diff --git a/debian/patches/0009-Remove-FIND_PACKAGE-for-liblzma-and-libbz2.patch b/debian/patches/0009-Remove-FIND_PACKAGE-for-liblzma-and-libbz2.patch index a7b815c..05a7a4d 100644 --- a/debian/patches/0009-Remove-FIND_PACKAGE-for-liblzma-and-libbz2.patch +++ b/debian/patches/0009-Remove-FIND_PACKAGE-for-liblzma-and-libbz2.patch @@ -9,7 +9,7 @@ As these seem not to be required. --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -188,53 +188,53 @@ +@@ -209,57 +209,6 @@ if (NOT ZLIB_FOUND) message (FATAL_ERROR "zlib must be installed before configuration & building can proceed") endif() @@ -24,40 +24,21 @@ As these seem not to be required. - 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} -- BUILD_COMMAND make -- INSTALL_COMMAND make install +- BUILD_COMMAND make ${QUIET_MAKE} +- INSTALL_COMMAND make ${QUIET_MAKE} install -) -+#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 -+# URL http://tukaani.org/xz/xz-5.2.2.tar.gz -+# 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} -+# BUILD_COMMAND make -+# INSTALL_COMMAND make install -+#) - # Tell cmake that the external project generated a library so we can - # add dependencies here instead of later +- +-# 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) -else() - message("Found liblzma library: ${LIBLZMA_LIBRARIES}") - message("===========================================") -endif() -+#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") -+#else() -+# message("Found liblzma library: ${LIBLZMA_LIBRARIES}") -+# message("===========================================") -+#endif() - +- -find_package (BZip2) -if (NOT BZIP2_FOUND) - message ("Will attempt to fetch and build libbz2") @@ -69,39 +50,20 @@ As these seem not to be required. - INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install - BUILD_IN_SOURCE TRUE - CONFIGURE_COMMAND "" -- BUILD_COMMAND make CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} -- INSTALL_COMMAND make install PREFIX=<INSTALL_DIR> +- BUILD_COMMAND make ${QUIET_MAKE} CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} +- INSTALL_COMMAND make ${QUIET_MAKE} install PREFIX=<INSTALL_DIR> -) -+#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 -+# URL http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz -+# 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 CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} -+# INSTALL_COMMAND make install PREFIX=<INSTALL_DIR> -+#) - # Tell cmake that the external project generated a library so we can - # add dependencies here instead of later +-# 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) -else() - message("Found libbz2 library: ${BZIP2_LIBRARIES}") - message("===========================================") -endif() -+#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") -+#else() -+# message("Found libbz2 library: ${BZIP2_LIBRARIES}") -+# message("===========================================") -+#endif() - +- ## # Set the latest version and look for what we need + ## diff --git a/debian/patches/add_MEM_F_SELF_OVLP.patch b/debian/patches/add_MEM_F_SELF_OVLP.patch index af72306..2eaa0b9 100644 --- a/debian/patches/add_MEM_F_SELF_OVLP.patch +++ b/debian/patches/add_MEM_F_SELF_OVLP.patch @@ -5,7 +5,7 @@ Description: redefine MEM_F_SELF_OVLP Author: Sascha Steinbiss <[email protected]> --- a/src/SalmonQuantify.cpp +++ b/src/SalmonQuantify.cpp -@@ -56,6 +56,7 @@ +@@ -54,6 +54,7 @@ extern "C" { #include "ksort.h" #include "kvec.h" #include "utils.h" @@ -13,7 +13,7 @@ Author: Sascha Steinbiss <[email protected]> } // Jellyfish 2 include -@@ -128,6 +129,7 @@ +@@ -126,6 +127,7 @@ extern "C" { #include "RapMapUtils.hpp" //#include "TextBootstrapWriter.hpp" diff --git a/debian/patches/cmake-typo-fixes b/debian/patches/cmake-typo-fixes index 8dbd663..572c2da 100644 --- a/debian/patches/cmake-typo-fixes +++ b/debian/patches/cmake-typo-fixes @@ -2,7 +2,7 @@ Author: Michael R. Crusoe <[email protected]> Description: fix upstream's typos --- a/src/SalmonQuantify.cpp +++ b/src/SalmonQuantify.cpp -@@ -2088,7 +2088,7 @@ +@@ -2277,7 +2277,7 @@ int salmonQuantify(int argc, char* argv[ ( "maxOcc,m", po::value<int>(&(memOptions->max_occ))->default_value(200), diff --git a/debian/patches/dependency-fix b/debian/patches/dependency-fix index d85157b..00d19b5 100644 --- a/debian/patches/dependency-fix +++ b/debian/patches/dependency-fix @@ -2,34 +2,25 @@ Author: Michael R. Crusoe <[email protected]> Description: Use Debian version of dependencies, don't download them --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -23,7 +23,7 @@ - set (WARNING_IGNORE_FLAGS "-Wno-deprecated-register") - set (BOOST_CXX_FLAGS "-Wno-deprecated-register -std=c++11") +@@ -28,7 +28,7 @@ endif() + + set (BOOST_CXX_FLAGS "${WARNING_IGNORE_FLAGS} -std=c++11") ## Prefer static to dynamic libraries -SET(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) +# SET(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES}) ## Set the standard required compile flags # Nov 18th --- removed -DHAVE_CONFIG_H -@@ -176,7 +176,7 @@ - ## - # We want static, multithreaded boost libraries - ## --set (Boost_USE_STATIC_LIBS ON) -+set (Boost_USE_STATIC_LIBS OFF) - set (Boost_USE_MULTITHREADED ON) - #set (Boost_USE_STATIC_RUNTIME OFF) - -@@ -237,7 +237,7 @@ +@@ -261,7 +261,7 @@ endif() # Set the latest version and look for what we need ## set(Boost_ADDITIONAL_VERSIONS "1.53" "1.53.0" "1.54" "1.55" "1.56" "1.57.0" "1.58" "1.59" "1.60" "1.61") --find_package(Boost 1.53.0 COMPONENTS iostreams filesystem system thread timer chrono program_options serialization) -+find_package(Boost 1.61.0 COMPONENTS iostreams filesystem system thread timer chrono program_options serialization) +-find_package(Boost 1.53.0 COMPONENTS iostreams filesystem system thread timer chrono program_options) ++find_package(Boost 1.61.0 COMPONENTS iostreams filesystem system thread timer chrono program_options) message("BOOST_INCLUDEDIR = ${BOOST_INCLUDEDIR}") message("BOOST_LIBRARYDIR = ${BOOST_LIBRARYDIR}") message("Boost_FOUND = ${Boost_FOUND}") -@@ -333,70 +333,70 @@ +@@ -358,188 +358,17 @@ message("BOOST LIBRARIES = ${Boost_LIBRA set(EXTERNAL_LIBRARY_PATH $CMAKE_CURRENT_SOURCE_DIR/lib) @@ -41,12 +32,19 @@ Description: Use Debian version of dependencies, don't download them - URL ${CMAKE_CURRENT_SOURCE_DIR}/external/libdivsufsort.zip - SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/libdivsufsort-master - INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -- UPDATE_COMMAND sh -c "mkdir -p <SOURCE_DIR>/build" +- #UPDATE_COMMAND sh -c "mkdir -p <SOURCE_DIR>/build" - BINARY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/libdivsufsort-master/build - CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DBUILD_DIVSUFSORT64=TRUE -DUSE_OPENMP=TRUE -DBUILD_SHARED_LIBS=FALSE -) +-ExternalProject_Add_Step(libdivsufsort makedir +- COMMAND mkdir -p <SOURCE_DIR>/build +- COMMENT "Make build directory" +- DEPENDEES download +- DEPENDERS configure) +- -set(SUFFARRAY_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/external/install/include) - +- -message("Build system will fetch and build the Cereal serialization library") -message("==================================================================") -include(ExternalProject) @@ -56,12 +54,17 @@ Description: Use Debian version of dependencies, don't download them - tar -xzvf cereal-v1.1.2.tar.gz - SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/cereal-1.1.2 - INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -- UPDATE_COMMAND sh -c "mkdir -p <SOURCE_DIR>/build" +- #UPDATE_COMMAND sh -c "mkdir -p <SOURCE_DIR>/build" - BINARY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/cereal-1.1.2/build - CONFIGURE_COMMAND "" - BUILD_COMMAND "" - INSTALL_COMMAND sh -c "mkdir -p <INSTALL_DIR>/include && cp -r <SOURCE_DIR>/include/cereal <INSTALL_DIR>/include" -) +-ExternalProject_Add_Step(libcereal makedir +- COMMAND mkdir -p <SOURCE_DIR>/build +- COMMENT "Make build directory" +- DEPENDEES download +- DEPENDERS configure) - -message("Build system will fetch and build BWA (for Salmon)") -message("==================================================================") @@ -74,13 +77,13 @@ Description: Use Debian version of dependencies, don't download them - SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/bwa-master - INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install - CONFIGURE_COMMAND "" -- BUILD_COMMAND sh -c "make CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER}" +- BUILD_COMMAND sh -c "make ${QUIET_MAKE} CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER}" - INSTALL_COMMAND sh -c "mkdir -p <INSTALL_DIR>/lib && mkdir -p <INSTALL_DIR>/include/bwa && cp libbwa.a <INSTALL_DIR>/lib && cp *.h <INSTALL_DIR>/include/bwa && cp is.c bwtindex.c bwt_gen.c QSufSort.c ${CMAKE_CURRENT_SOURCE_DIR}/src/" - BUILD_IN_SOURCE TRUE -) - --find_package(Jellyfish 2.2.6) -- + find_package(Jellyfish 2.2.6) + -if (NOT JELLYFISH_FOUND) -message("Build system will fetch and build Jellyfish") -message("==================================================================") @@ -94,86 +97,23 @@ Description: Use Debian version of dependencies, don't download them - CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/external/jellyfish-2.2.6/configure --prefix=<INSTALL_DIR> CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} CXXFLAGS=${JELLYFISH_CXX_FLAGS} - BUILD_COMMAND ${MAKE} CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} CXXFLAGS=${JELLYFISH_CXX_FLAGS} - BUILD_IN_SOURCE 1 -- INSTALL_COMMAND make install +- INSTALL_COMMAND make ${QUIET_MAKE} install -) +-set (FETCHED_JELLYFISH TRUE) -endif() -+#message("Build system will build libdivsufsort") -+#message("==================================================================") -+#include(ExternalProject) -+#ExternalProject_Add(libdivsufsort -+# DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -+# URL ${CMAKE_CURRENT_SOURCE_DIR}/external/libdivsufsort.zip -+# SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/libdivsufsort-master -+# INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -+# UPDATE_COMMAND sh -c "mkdir -p <SOURCE_DIR>/build" -+# BINARY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/libdivsufsort-master/build -+# CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR> -DBUILD_DIVSUFSORT64=TRUE -DUSE_OPENMP=TRUE -DBUILD_SHARED_LIBS=FALSE -+#) -+#set(SUFFARRAY_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/external/install/include) -+ -+#message("Build system will fetch and build the Cereal serialization library") -+#message("==================================================================") -+#include(ExternalProject) -+#ExternalProject_Add(libcereal -+# DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -+# DOWNLOAD_COMMAND curl -k -L https://github.com/USCiLab/cereal/archive/v1.1.2.tar.gz -o cereal-v1.1.2.tar.gz && -+# tar -xzvf cereal-v1.1.2.tar.gz -+# SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/cereal-1.1.2 -+# INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -+# UPDATE_COMMAND sh -c "mkdir -p <SOURCE_DIR>/build" -+# BINARY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/cereal-1.1.2/build -+# CONFIGURE_COMMAND "" -+# BUILD_COMMAND "" -+# INSTALL_COMMAND sh -c "mkdir -p <INSTALL_DIR>/include && cp -r <SOURCE_DIR>/include/cereal <INSTALL_DIR>/include" -+#) -+# -+#message("Build system will fetch and build BWA (for Salmon)") -+#message("==================================================================") -+#include(ExternalProject) -+#ExternalProject_Add(libbwa -+# DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -+# DOWNLOAD_COMMAND curl -k -L https://github.com/COMBINE-lab/bwa/archive/0.7.12.3.tar.gz -o 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 -+# INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -+# CONFIGURE_COMMAND "" -+# BUILD_COMMAND sh -c "make CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER}" -+# INSTALL_COMMAND sh -c "mkdir -p <INSTALL_DIR>/lib && mkdir -p <INSTALL_DIR>/include/bwa && cp libbwa.a <INSTALL_DIR>/lib && cp *.h <INSTALL_DIR>/include/bwa && cp is.c bwtindex.c bwt_gen.c QSufSort.c ${CMAKE_CURRENT_SOURCE_DIR}/src/" -+# BUILD_IN_SOURCE TRUE -+#) -+# -+#find_package(Jellyfish 2.2.6) -+# -+#if (NOT JELLYFISH_FOUND) -+#message("Build system will fetch and build Jellyfish") -+#message("==================================================================") -+#ExternalProject_Add(libjellyfish -+# DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -+# DOWNLOAD_COMMAND curl -k -L https://github.com/gmarcais/Jellyfish/releases/download/v2.2.6/jellyfish-2.2.6.tar.gz -o jellyfish-2.2.6.tgz && -+# rm -fr jellyfish-2.2.6 && -+# tar -xzvf jellyfish-2.2.6.tgz -+# SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/jellyfish-2.2.6 -+# INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -+# CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/external/jellyfish-2.2.6/configure --prefix=<INSTALL_DIR> CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} CXXFLAGS=${JELLYFISH_CXX_FLAGS} -+# BUILD_COMMAND ${MAKE} CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} CXXFLAGS=${JELLYFISH_CXX_FLAGS} -+# BUILD_IN_SOURCE 1 -+# INSTALL_COMMAND make install -+#) -+#endif() - - find_package(TBB) - -@@ -405,94 +405,94 @@ - # Fetch and build Intel's Threading Building Blocks library. - # - ## --if(NOT TBB_FOUND) -+#if(NOT TBB_FOUND) +- + ## Try and find TBB first + find_package(TBB 4.4 COMPONENTS tbb tbbmalloc tbbmalloc_proxy ) +-## +-# +-# Fetch and build Intel's Threading Building Blocks library. +-# +-## +-if((NOT TBB_FOUND) OR (TBB_FOUND AND (TBB_VERSION VERSION_LESS 4.4))) +- -set(TBB_WILL_RECONFIGURE TRUE) -+#set(TBB_WILL_RECONFIGURE TRUE) - # Set the appropriate compiler +-# Set the appropriate compiler -if (CLANG) - set(TBB_COMPILER "clang") -else() @@ -183,38 +123,25 @@ Description: Use Debian version of dependencies, don't download them -message("Build system will fetch and build Intel Threading Building Blocks") -message("==================================================================") -# These are useful for the custom install step we'll do later --set(TBB_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/tbb44_20160526oss) +-set(TBB_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/tbb-2017_U3) -set(TBB_INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install) -+#if (CLANG) -+# set(TBB_COMPILER "clang") -+#else() -+# set(TBB_COMPILER "gcc") -+#endif() -+ -+#message("Build system will fetch and build Intel Threading Building Blocks") -+#message("==================================================================") -+## These are useful for the custom install step we'll do later -+#set(TBB_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/tbb44_20160526oss) -+#set(TBB_INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install) - +- -if ("${TBB_COMPILER}" STREQUAL "gcc") -+#if ("${TBB_COMPILER}" STREQUAL "gcc") ## Don't know why it's a problem yet, but if we're using ## GCC, get rid of the DO_ITT_NOTIFY flag set(TBB_CXXFLAGS "${TBB_CXXFLAGS} -UDO_ITT_NOTIFY") -endif() -+#endif() - +- -ExternalProject_Add(libtbb - DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -- URL https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb44_20160526oss_src_0.tgz -- DOWNLOAD_COMMAND curl -k -L https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb44_20160526oss_src_0.tgz -o tbb_20160526oss_src.tgz && -- tar -xzvf tbb_20160526oss_src.tgz -- SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/tbb44_20160526oss +- #URL https://github.com/01org/tbb/archive/2017_U3.tar.gz +- DOWNLOAD_COMMAND curl -k -L https://github.com/01org/tbb/archive/2017_U3.tar.gz -o tbb-2017_U3.tgz && +- tar -xzvf tbb-2017_U3.tgz +- SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/tbb-2017_U3 - INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install - PATCH_COMMAND "${TBB_PATCH_STEP}" - CONFIGURE_COMMAND "" -- BUILD_COMMAND make CXXFLAGS=${TBB_CXXFLAGS} lambdas=1 compiler=${TBB_COMPILER} cfg=release tbb_build_prefix=LIBS +- BUILD_COMMAND make ${QUIET_MAKE} CXXFLAGS=${TBB_CXXFLAGS} lambdas=1 compiler=${TBB_COMPILER} cfg=release tbb_build_prefix=LIBS - INSTALL_COMMAND sh -c "cp ${TBB_SOURCE_DIR}/build/LIBS_release/*.${SHARED_LIB_EXTENSION}* ${TBB_INSTALL_DIR}/lib && cp -r ${TBB_SOURCE_DIR}/include/* ${TBB_INSTALL_DIR}/include" - BUILD_IN_SOURCE 1 -) @@ -224,32 +151,14 @@ Description: Use Debian version of dependencies, don't download them - COMMAND ${CMAKE_COMMAND} ${CMAKE_CURRENT_SOURCE_DIR} ${RECONFIG_FLAGS} - DEPENDEES install -) +- +-set (FETCHED_TBB TRUE) -endif() -+#ExternalProject_Add(libtbb -+# DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -+# URL https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb44_20160526oss_src_0.tgz -+# DOWNLOAD_COMMAND curl -k -L https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb44_20160526oss_src_0.tgz -o tbb_20160526oss_src.tgz && -+# tar -xzvf tbb_20160526oss_src.tgz -+# SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/tbb44_20160526oss -+# INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -+# PATCH_COMMAND "${TBB_PATCH_STEP}" -+# CONFIGURE_COMMAND "" -+# BUILD_COMMAND make CXXFLAGS=${TBB_CXXFLAGS} lambdas=1 compiler=${TBB_COMPILER} cfg=release tbb_build_prefix=LIBS -+# INSTALL_COMMAND sh -c "cp ${TBB_SOURCE_DIR}/build/LIBS_release/*.${SHARED_LIB_EXTENSION}* ${TBB_INSTALL_DIR}/lib && cp -r ${TBB_SOURCE_DIR}/include/* ${TBB_INSTALL_DIR}/include" -+# BUILD_IN_SOURCE 1 -+#) -+ -+#SET( RECONFIG_FLAGS ${RECONFIG_FLAGS} -DTBB_WILL_RECONFIGURE=FALSE -DTBB_RECONFIGURE=TRUE) -+#ExternalProject_Add_Step(libtbb reconfigure -+# COMMAND ${CMAKE_COMMAND} ${CMAKE_CURRENT_SOURCE_DIR} ${RECONFIG_FLAGS} -+# DEPENDEES install -+#) -+#endif() - - ## - # If we're fetching tbb, we need to have dummy paths for these variables - # so that CMake won't complain - ## +- +-## +-# If we're fetching tbb, we need to have dummy paths for these variables +-# so that CMake won't complain +-## -if(TBB_WILL_RECONFIGURE) - set(TBB_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/external/install/include) - set(TBB_LIBRARY_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/external/install/lib) @@ -258,20 +167,12 @@ Description: Use Debian version of dependencies, don't download them - ${CMAKE_CURRENT_SOURCE_DIR}/external/install/lib/libtbbmalloc.${SHARED_LIB_EXTENSION} - ) -endif() -+#if(TBB_WILL_RECONFIGURE) -+# set(TBB_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/external/install/include) -+# set(TBB_LIBRARY_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/external/install/lib) -+# #set(TBB_LIBRARIES tbb tbbmalloc) -+# set(TBB_LIBRARIES ${CMAKE_CURRENT_SOURCE_DIR}/external/install/lib/libtbb.${SHARED_LIB_EXTENSION} -+# ${CMAKE_CURRENT_SOURCE_DIR}/external/install/lib/libtbbmalloc.${SHARED_LIB_EXTENSION} -+# ) -+#endif() - - ## - # Similar to the Boost trick above, the libtbb reconfigure should force this code - # to be run on the second configuration pass, where it should appropriately set the - # TBB_INSTALL_DIR variable. - ## +- +-## +-# Similar to the Boost trick above, the libtbb reconfigure should force this code +-# to be run on the second configuration pass, where it should appropriately set the +-# TBB_INSTALL_DIR variable. +-## -if (TBB_RECONFIGURE) - unset(TBB_FOUND CACHE) - unset(TBB_INSTALL_DIR CACHE) @@ -281,16 +182,7 @@ Description: Use Debian version of dependencies, don't download them - message("TBB_INSTALL_DIR = ${TBB_INSTALL_DIR}") - find_package(TBB) -endif() -+#if (TBB_RECONFIGURE) -+# unset(TBB_FOUND CACHE) -+# unset(TBB_INSTALL_DIR CACHE) -+# unset(CMAKE_PREFIX_PATH CACHE) -+# set(CMAKE_PREFIX_PATH ${CMAKE_CURRENT_SOURCE_DIR}/external/install) -+# set(TBB_INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install) -+# message("TBB_INSTALL_DIR = ${TBB_INSTALL_DIR}") -+# find_package(TBB) -+#endif() - +- message("TBB_LIBRARIES = ${TBB_LIBRARIES}") @@ -298,36 +190,28 @@ Description: Use Debian version of dependencies, don't download them -message("==================================================================") -ExternalProject_Add(libgff - DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -- DOWNLOAD_COMMAND curl -k -L https://github.com/Kingsford-Group/libgff/archive/v1.0.tar.gz -o libgff.tgz && +- DOWNLOAD_COMMAND curl -k -L https://github.com/COMBINE-lab/libgff/archive/v1.1.tar.gz -o libgff.tgz && - tar -xzvf libgff.tgz && - rm -fr libgff && -- mv libgff-1.0 libgff +- mv libgff-1.1 libgff - SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/libgff -- UPDATE_COMMAND sh -c "mkdir -p <SOURCE_DIR>/build" +- #UPDATE_COMMAND sh -c "mkdir -p <SOURCE_DIR>/build" - INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install - BINARY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/libgff/build - CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_CURRENT_SOURCE_DIR}/external/install -) -+#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/Kingsford-Group/libgff/archive/v1.0.tar.gz -o libgff.tgz && -+# tar -xzvf libgff.tgz && -+# rm -fr libgff && -+# mv libgff-1.0 libgff -+# SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/libgff -+# UPDATE_COMMAND sh -c "mkdir -p <SOURCE_DIR>/build" -+# INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -+# BINARY_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/libgff/build -+# CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_CURRENT_SOURCE_DIR}/external/install -+#) - - # Because of the way that Apple has changed SIP +-ExternalProject_Add_Step(libgff makedir +- COMMAND mkdir -p <SOURCE_DIR>/build +- COMMENT "Make build directory" +- DEPENDEES download +- DEPENDERS configure) +- + # Because of the way that Apple has changed SIP # in el capitan, some headers may be in a new location -@@ -502,39 +502,39 @@ - endif() - + if (APPLE) +@@ -553,40 +382,6 @@ else () + set(LZFLAG "") + endif (CONDA_BUILD) -message("Build system will compile Staden IOLib") -message("==================================================================") @@ -341,7 +225,7 @@ Description: Use Debian version of dependencies, don't download them - SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/staden-io_lib - INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install - CONFIGURE_COMMAND ./configure --enable-shared=no --without-libcurl --prefix=<INSTALL_DIR> LDFLAGS=${LIBSTADEN_LDFLAGS} CFLAGS=${LIBSTADEN_CFLAGS} CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} -- BUILD_COMMAND make CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} CFLAGS+=${STADEN_INC} CFLAGS+=${STADEN_LIB} +- BUILD_COMMAND make ${QUIET_MAKE} CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} CFLAGS+=${STADEN_INC} CFLAGS+=${STADEN_LIB} CFLAGS+=${LZFLAG} - - BUILD_IN_SOURCE 1 - INSTALL_COMMAND make install @@ -351,10 +235,10 @@ Description: Use Debian version of dependencies, don't download them -message("==================================================================") -ExternalProject_Add(libspdlog - DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -- DOWNLOAD_COMMAND curl -k -L https://github.com/COMBINE-lab/spdlog/archive/v1.12.tar.gz -o spdlog-v1.12.tar.gz && -- tar -xzf spdlog-v1.12.tar.gz && +- DOWNLOAD_COMMAND curl -k -L https://github.com/COMBINE-lab/spdlog/archive/v0.11.0.tar.gz -o spdlog-v0.11.0.tar.gz && +- tar -xzf spdlog-v0.11.0.tar.gz && - rm -fr spdlog && -- mv -f spdlog-1.12 spdlog +- mv -f spdlog-0.11.0 spdlog - SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/spdlog - INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install - CONFIGURE_COMMAND "" @@ -362,44 +246,12 @@ Description: Use Debian version of dependencies, don't download them - BUILD_IN_SOURCE 1 - INSTALL_COMMAND cp -r <SOURCE_DIR>/include/spdlog <INSTALL_DIR>/include -) -+#message("Build system will compile Staden IOLib") -+#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.tar.gz -o staden-io_lib-v1.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 && -+# 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 -+# INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -+# CONFIGURE_COMMAND ./configure --enable-shared=no --without-libcurl --prefix=<INSTALL_DIR> LDFLAGS=${LIBSTADEN_LDFLAGS} CFLAGS=${LIBSTADEN_CFLAGS} CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} -+# BUILD_COMMAND make CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} CFLAGS+=${STADEN_INC} CFLAGS+=${STADEN_LIB} -+# -+# BUILD_IN_SOURCE 1 -+# INSTALL_COMMAND make install -+#) -+ -+#message("Build system will fetch SPDLOG") -+#message("==================================================================") -+#ExternalProject_Add(libspdlog -+# DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -+# DOWNLOAD_COMMAND curl -k -L https://github.com/COMBINE-lab/spdlog/archive/v1.12.tar.gz -o spdlog-v1.12.tar.gz && -+# tar -xzf spdlog-v1.12.tar.gz && -+# rm -fr spdlog && -+# mv -f spdlog-1.12 spdlog -+# SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/spdlog -+# INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -+# CONFIGURE_COMMAND "" -+# BUILD_COMMAND "" -+# BUILD_IN_SOURCE 1 -+# INSTALL_COMMAND cp -r <SOURCE_DIR>/include/spdlog <INSTALL_DIR>/include -+#) - +- set (FAST_MALLOC_LIB "") set (HAVE_FAST_MALLOC FALSE) -@@ -558,40 +558,40 @@ - endif() + +@@ -615,50 +410,6 @@ else () + set (JEMALLOC_FLAGS "CC=${CMAKE_C_COMPILER}") endif() -if (NOT HAVE_FAST_MALLOC) @@ -407,67 +259,48 @@ Description: Use Debian version of dependencies, don't download them - message("==================================================================") - ExternalProject_Add(libjemalloc - DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -- DOWNLOAD_COMMAND curl -k -L https://github.com/COMBINE-lab/jemalloc/archive/4.0.4.tar.gz -o jemalloc-4.0.4.tar.gz && -- tar -xzf jemalloc-4.0.4.tar.gz -- SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/jemalloc-4.0.4 +- DOWNLOAD_COMMAND curl -k -L https://github.com/COMBINE-lab/jemalloc/archive/4.4.0.tar.gz -o jemalloc-4.4.0.tar.gz && +- tar -xzf jemalloc-4.4.0.tar.gz +- SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/jemalloc-4.4.0 - BUILD_IN_SOURCE TRUE - INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -- CONFIGURE_COMMAND sh -c "CC=${CMAKE_C_COMPILER} ./autogen.sh --prefix=<INSTALL_DIR>" +- CONFIGURE_COMMAND sh -c "${JEMALLOC_FLAGS} ./autogen.sh --prefix=<INSTALL_DIR>" - INSTALL_COMMAND cp -r lib <INSTALL_DIR>/ && cp -r include <INSTALL_DIR>/ - ) - - set (FAST_MALLOC_LIB ${CMAKE_CURRENT_SOURCE_DIR}/external/install/lib/libjemalloc.a) - set (HAVE_FAST_MALLOC TRUE) +- set (FETCHED_JEMALLOC TRUE) +- if (FETCHED_LIBBZ2) +- add_dependencies(libjemalloc libbz2) +- endif() +- +- if (FETCHED_LIBLZMA) +- add_dependencies(libjemalloc liblzma) +- endif() +- -endif () -+#if (NOT HAVE_FAST_MALLOC) -+# message("Build system will fetch and use JEMalloc") -+# message("==================================================================") -+# ExternalProject_Add(libjemalloc -+# DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -+# DOWNLOAD_COMMAND curl -k -L https://github.com/COMBINE-lab/jemalloc/archive/4.0.4.tar.gz -o jemalloc-4.0.4.tar.gz && -+# tar -xzf jemalloc-4.0.4.tar.gz -+# SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/jemalloc-4.0.4 -+# BUILD_IN_SOURCE TRUE -+# INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -+# CONFIGURE_COMMAND sh -c "CC=${CMAKE_C_COMPILER} ./autogen.sh --prefix=<INSTALL_DIR>" -+# INSTALL_COMMAND cp -r lib <INSTALL_DIR>/ && cp -r include <INSTALL_DIR>/ -+# ) -+# -+# set (FAST_MALLOC_LIB ${CMAKE_CURRENT_SOURCE_DIR}/external/install/lib/libjemalloc.a) -+# set (HAVE_FAST_MALLOC TRUE) -+#endif () - - - ## - ## This depenency is for RapMap - ## --message("Build system will fetch and build SparseHash") --message("==================================================================") --ExternalProject_Add(libsparsehash -- DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -- DOWNLOAD_COMMAND curl -k -L https://github.com/COMBINE-lab/sparsehash/archive/sparsehash-2.0.2.tar.gz -o sparsehash-2.0.2.tar.gz && -- tar -xzf sparsehash-2.0.2.tar.gz -- SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/sparsehash-sparsehash-2.0.2 -- BUILD_IN_SOURCE TRUE -- INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -- CONFIGURE_COMMAND sh -c "CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} ./configure --prefix=<INSTALL_DIR>" -- INSTALL_COMMAND make install --) -+#message("Build system will fetch and build SparseHash") -+#message("==================================================================") -+#ExternalProject_Add(libsparsehash -+# DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external -+# DOWNLOAD_COMMAND curl -k -L https://github.com/COMBINE-lab/sparsehash/archive/sparsehash-2.0.2.tar.gz -o sparsehash-2.0.2.tar.gz && -+# tar -xzf sparsehash-2.0.2.tar.gz -+# SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/sparsehash-sparsehash-2.0.2 -+# BUILD_IN_SOURCE TRUE -+# INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install -+# CONFIGURE_COMMAND sh -c "CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} ./configure --prefix=<INSTALL_DIR>" -+# INSTALL_COMMAND make install -+#) - +- +- +-## +-## This depenency is for RapMap +-## +-#message("Build system will fetch and build SparseHash") +-#message("==================================================================") +-#ExternalProject_Add(libsparsehash +-# DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external +-# DOWNLOAD_COMMAND curl -k -L https://github.com/COMBINE-lab/sparsehash/archive/sparsehash-2.0.2.tar.gz -o sparsehash-2.0.2.tar.gz && +-# tar -xzf sparsehash-2.0.2.tar.gz +-# SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/sparsehash-sparsehash-2.0.2 +-# BUILD_IN_SOURCE TRUE +-# INSTALL_DIR ${CMAKE_CURRENT_SOURCE_DIR}/external/install +-# CONFIGURE_COMMAND sh -c "CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} ./configure --prefix=<INSTALL_DIR>" +-# INSTALL_COMMAND make install +-#) +- ### # + # Done building external dependencies. --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,11 +1,7 @@ @@ -484,7 +317,7 @@ Description: Use Debian version of dependencies, don't download them ${ZLIB_INCLUDE_DIR} ${TBB_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS} -@@ -71,6 +67,7 @@ +@@ -70,6 +66,7 @@ SGSmooth.cpp set ( UNIT_TESTS_SRCS ${GAT_SOURCE_DIR}/tests/UnitTests.cpp FragmentLengthDistribution.cpp @@ -492,16 +325,16 @@ Description: Use Debian version of dependencies, don't download them ) -@@ -107,7 +104,7 @@ +@@ -106,7 +103,7 @@ else() endif() # Build the Salmon library -add_library(salmon_core STATIC ${SALMON_LIB_SRCS} ) +add_library(salmon_core ${SALMON_LIB_SRCS} ) + # Build the salmon executable - add_executable(salmon ${SALMON_MAIN_SRCS} ${SALMON_ALIGN_SRCS}) -@@ -131,12 +128,12 @@ +@@ -131,12 +128,12 @@ target_link_libraries(salmon gff ${PTHREAD_LIB} ${Boost_LIBRARIES} @@ -519,7 +352,7 @@ Description: Use Debian version of dependencies, don't download them m ${LIBLZMA_LIBRARIES} ${BZIP2_LIBRARIES} -@@ -154,12 +151,12 @@ +@@ -189,12 +186,12 @@ target_link_libraries(unitTests gff ${PTHREAD_LIB} ${Boost_LIBRARIES} @@ -537,12 +370,3 @@ Description: Use Debian version of dependencies, don't download them m ${LIBLZMA_LIBRARIES} ${BZIP2_LIBRARIES} -@@ -167,7 +164,7 @@ - ${LIBSALMON_LINKER_FLAGS} - ${NON_APPLECLANG_LIBS} - ${FAST_MALLOC_LIB} -- ) -+) - - ### No need for this, I think - ## This ensures that the salmon executable should work with or without `make install` diff --git a/debian/patches/disable-version-check b/debian/patches/disable-version-check index 6712c6b..bd48c5d 100644 --- a/debian/patches/disable-version-check +++ b/debian/patches/disable-version-check @@ -2,8 +2,8 @@ Author: Michael R. Crusoe <[email protected]> Description: Disable the newer version check --- a/src/Salmon.cpp +++ b/src/Salmon.cpp -@@ -179,10 +179,10 @@ - std::exit(0); +@@ -210,10 +210,10 @@ int main( int argc, char* argv[] ) { + std::exit(0); } - if (!vm.count("no-version-check")){ @@ -15,5 +15,5 @@ Description: Disable the newer version check + // std::cerr << versionMessage; + //} - po::notify(vm); + //po::notify(vm); diff --git a/debian/patches/fix-unittest.patch b/debian/patches/fix-unittest.patch index 12d2d5c..c11599d 100644 --- a/debian/patches/fix-unittest.patch +++ b/debian/patches/fix-unittest.patch @@ -2,7 +2,7 @@ Description: fix path of unittest executable Author: Sascha Steinbiss <[email protected]> --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt -@@ -237,7 +237,7 @@ +@@ -279,7 +279,7 @@ install( ) include(InstallRequiredSystemLibraries) diff --git a/debian/patches/reproducible.patch b/debian/patches/reproducible.patch index 085c77d..61ad7a6 100644 --- a/debian/patches/reproducible.patch +++ b/debian/patches/reproducible.patch @@ -4,12 +4,12 @@ Description: make build reproducible Author: Sascha Steinbiss <[email protected]> --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -27,7 +27,7 @@ +@@ -32,7 +32,7 @@ set (BOOST_CXX_FLAGS "${WARNING_IGNORE_F ## Set the standard required compile flags # Nov 18th --- removed -DHAVE_CONFIG_H --set (CMAKE_CXX_FLAGS "-pthread -ftree-vectorize -funroll-loops -fPIC -fomit-frame-pointer -Ofast -DRAPMAP_SALMON_SUPPORT -DHAVE_ANSI_TERM -DHAVE_SSTREAM -Wall -Wno-unknown-pragmas -Wno-reorder -Wno-unused-variable -std=c++11 -Wreturn-type -Werror=return-type") -+set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread -ftree-vectorize -funroll-loops -fPIC -fomit-frame-pointer -Ofast -DRAPMAP_SALMON_SUPPORT -DHAVE_ANSI_TERM -DHAVE_SSTREAM -Wall -Wno-unknown-pragmas -Wno-reorder -Wno-unused-variable -std=c++11 -Wreturn-type -Werror=return-type") +-set (CMAKE_CXX_FLAGS "-pthread -ftree-vectorize -funroll-loops -fPIC -fomit-frame-pointer -O3 -DRAPMAP_SALMON_SUPPORT -DHAVE_ANSI_TERM -DHAVE_SSTREAM -Wall -Wno-unknown-pragmas -Wno-reorder -Wno-unused-variable -std=c++11 -Wreturn-type -Werror=return-type") ++set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread -ftree-vectorize -funroll-loops -fPIC -fomit-frame-pointer -O3 -DRAPMAP_SALMON_SUPPORT -DHAVE_ANSI_TERM -DHAVE_SSTREAM -Wall -Wno-unknown-pragmas -Wno-reorder -Wno-unused-variable -std=c++11 -Wreturn-type -Werror=return-type") ## # OSX is strange (some might say, stupid in this regard). Deal with it's quirkines here. diff --git a/debian/patches/use-system-pkg-config-tbb b/debian/patches/use-system-pkg-config-tbb index 0abb43c..0c99814 100644 --- a/debian/patches/use-system-pkg-config-tbb +++ b/debian/patches/use-system-pkg-config-tbb @@ -2,7 +2,7 @@ Description: Use pkgconfig to find the system library for tbb Author: Michael R. Crusoe <[email protected]> --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -180,6 +180,9 @@ set (Boost_USE_STATIC_LIBS OFF) +@@ -201,6 +201,9 @@ endif(CONDA_BUILD) set (Boost_USE_MULTITHREADED ON) #set (Boost_USE_STATIC_RUNTIME OFF) @@ -12,13 +12,11 @@ Author: Michael R. Crusoe <[email protected]> find_package (ZLIB) if (NOT ZLIB_FOUND) message (FATAL_ERROR "zlib must be installed before configuration & building can proceed") -@@ -398,7 +401,8 @@ set(SUFFARRAY_INCLUDE_DIRS ${CMAKE_CURRE - #) - #endif() +@@ -361,6 +364,7 @@ set(EXTERNAL_LIBRARY_PATH $CMAKE_CURRENT + find_package(Jellyfish 2.2.6) --find_package(TBB) -+#find_package(TBB) -+ + ## Try and find TBB first ++## FIXME: This was commented in version 0.7.2 in a quilt patch + find_package(TBB 4.4 COMPONENTS tbb tbbmalloc tbbmalloc_proxy ) - ## - # + ## Don't know why it's a problem yet, but if we're using diff --git a/debian/patches/use_debian_packaged_rapmap.patch b/debian/patches/use_debian_packaged_rapmap.patch index 60f8dd6..5f8fe20 100644 --- a/debian/patches/use_debian_packaged_rapmap.patch +++ b/debian/patches/use_debian_packaged_rapmap.patch @@ -5,7 +5,7 @@ Description: use debian packaged RapMap Author: Sascha Steinbiss <[email protected]> --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt -@@ -5,7 +5,6 @@ +@@ -5,7 +5,6 @@ ${GAT_SOURCE_DIR}/include ${ZLIB_INCLUDE_DIR} ${TBB_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS} @@ -13,14 +13,13 @@ Author: Sascha Steinbiss <[email protected]> ) if (JELLYFISH_FOUND) -@@ -20,14 +19,6 @@ +@@ -20,13 +19,6 @@ is.c bwt_gen.c bwtindex.c xxhash.c -${GAT_SOURCE_DIR}/external/install/src/rapmap/RapMapFileSystem.cpp -${GAT_SOURCE_DIR}/external/install/src/rapmap/RapMapSAIndexer.cpp -${GAT_SOURCE_DIR}/external/install/src/rapmap/RapMapSAIndex.cpp --${GAT_SOURCE_DIR}/external/install/src/rapmap/RapMapSAMapper.cpp -${GAT_SOURCE_DIR}/external/install/src/rapmap/RapMapUtils.cpp -${GAT_SOURCE_DIR}/external/install/src/rapmap/HitManager.cpp -${GAT_SOURCE_DIR}/external/install/src/rapmap/rank9b.cpp @@ -28,7 +27,7 @@ Author: Sascha Steinbiss <[email protected]> CollapsedEMOptimizer.cpp CollapsedGibbsSampler.cpp Salmon.cpp -@@ -38,7 +29,6 @@ +@@ -37,7 +29,6 @@ FragmentStartPositionDistribution.cpp SequenceBiasModel.cpp TranscriptGroup.cpp GZipWriter.cpp @@ -36,7 +35,7 @@ Author: Sascha Steinbiss <[email protected]> ) set (SALMON_ALIGN_SRCS -@@ -64,6 +54,16 @@ +@@ -63,6 +54,16 @@ SimplePosBias.cpp SGSmooth.cpp ) @@ -53,21 +52,9 @@ Author: Sascha Steinbiss <[email protected]> set ( UNIT_TESTS_SRCS ${GAT_SOURCE_DIR}/tests/UnitTests.cpp FragmentLengthDistribution.cpp -@@ -104,9 +104,9 @@ - endif() - - # Build the salmon executable --add_executable(salmon ${SALMON_LIB_SRCS} ${SALMON_MAIN_SRCS} ${SALMON_ALIGN_SRCS}) -+add_executable(salmon ${SALMON_LIB_SRCS} ${SALMON_MAIN_SRCS} ${SALMON_ALIGN_SRCS} ${RAPMAP_EMBED_SRCS}) - --add_executable(unitTests ${SALMON_LIB_SRCS} ${UNIT_TESTS_SRCS}) -+add_executable(unitTests ${SALMON_LIB_SRCS} ${UNIT_TESTS_SRCS} ${RAPMAP_EMBED_SRCS}) - - #add_executable(salmon-read ${SALMON_READ_SRCS}) - #set_target_properties(salmon-read PROPERTIES COMPILE_FLAGS "${CMAKE_CXX_FLAGS} -DHAVE_LIBPTHREAD -D_PBGZF_USE -fopenmp" --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -161,7 +161,7 @@ +@@ -177,7 +177,7 @@ set (GAT_SOURCE_DIR ${CMAKE_CURRENT_SOUR # #### if(NOT FETCHED_RAPMAP) diff --git a/debian/rules b/debian/rules index 6d8ceb0..0497961 100755 --- a/debian/rules +++ b/debian/rules @@ -8,6 +8,8 @@ VERSION := $(shell echo '$(DEBVERS)' | sed -e 's/^[0-9]*://' -e 's/-.*//' # Fails to build when trying to enhance hardening export DEB_BUILD_MAINT_OPTIONS = hardening=+bindnow +CMAKE_EXTRA_FLAGS += -DCONDA_BUILD=1 + %: dh $@ --with sphinxdoc --parallel -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/salmon.git _______________________________________________ debian-med-commit mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-med-commit
