diff --git a/pkgs/applications/science/biology/genmap/default.nix b/pkgs/applications/science/biology/genmap/default.nix new file mode 100644 index 000000000000..c2d1b8da7af1 --- /dev/null +++ b/pkgs/applications/science/biology/genmap/default.nix @@ -0,0 +1,40 @@ +{ lib +, stdenv +, fetchFromGitHub +, cmake +, gtest +, which +}: + +stdenv.mkDerivation rec { + pname = "genmap"; + version = "1.3.0"; + + src = fetchFromGitHub { + owner = "cpockrandt"; + repo = "genmap"; + rev = "genmap-v${version}"; + fetchSubmodules = true; + sha256 = "sha256-7sIKBRMNzyCrZ/c2nXkknb6a5YsXe6DRE2IFhp6AviY="; + }; + + nativeBuildInputs = [ cmake ]; + + doCheck = true; + patches = [ ./gtest.patch ]; + checkInputs = [ gtest which ]; + preCheck = "make genmap_algo_test"; + + # disable benchmarks + preConfigure = '' + echo > benchmarks/CMakeLists.txt + ''; + + meta = { + description = "Ultra-fast computation of genome mappability"; + license = lib.licenses.bsd3; + homepage = "https://github.com/cpockrandt/genmap"; + maintainers = with lib.maintainers; [ jbedo ]; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/applications/science/biology/genmap/gtest.patch b/pkgs/applications/science/biology/genmap/gtest.patch new file mode 100644 index 000000000000..f01d0e115eb5 --- /dev/null +++ b/pkgs/applications/science/biology/genmap/gtest.patch @@ -0,0 +1,30 @@ +diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt +index 67ec8f9..ed0b2e0 100644 +--- a/tests/CMakeLists.txt ++++ b/tests/CMakeLists.txt +@@ -2,23 +2,14 @@ + # GenMap tests + # =========================================================================== + +-include (ExternalProject) +-ExternalProject_Add (googletest +- PREFIX "${CMAKE_CURRENT_BINARY_DIR}/googletest" +- GIT_REPOSITORY "https://github.com/google/googletest.git" +- INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}" +- CMAKE_ARGS "-DCMAKE_INSTALL_PREFIX=${CMAKE_CURRENT_BINARY_DIR}" +- GIT_TAG release-1.10.0 +- UPDATE_DISCONNECTED YES) + + set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") # TODO: --coverage + add_executable (genmap_algo_test tests.cpp) +-add_dependencies (genmap_algo_test googletest) + + include_directories (${CMAKE_CURRENT_BINARY_DIR}/include) + target_link_libraries (genmap_algo_test ${SEQAN_LIBRARIES}) +-target_link_libraries (genmap_algo_test ${CMAKE_CURRENT_BINARY_DIR}/lib/libgtest.a) +-target_link_libraries (genmap_algo_test ${CMAKE_CURRENT_BINARY_DIR}/lib/libgtest_main.a) ++target_link_libraries (genmap_algo_test -lgtest) ++target_link_libraries (genmap_algo_test -lgtest_main) + target_link_libraries (genmap_algo_test pthread) + + add_test(NAME algo_test COMMAND genmap_algo_test) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ee5dffa4bf6f..f561dcccda68 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5510,6 +5510,8 @@ with pkgs; genimage = callPackage ../tools/filesystems/genimage { }; + genmap = callPackage ../applications/science/biology/genmap { }; + geonkick = callPackage ../applications/audio/geonkick {}; gerrit = callPackage ../applications/version-management/gerrit { };