commit: 8ee8fd95880516f79f8693c728d0ec218fa82277 Author: Martin Mokrejs <mmokrejs <AT> fold <DOT> natur <DOT> cuni <DOT> cz> AuthorDate: Sun Apr 22 11:45:10 2018 +0000 Commit: Martin Mokrejs <mmokrejs <AT> fold <DOT> natur <DOT> cuni <DOT> cz> CommitDate: Sun Apr 22 11:45:10 2018 +0000 URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=8ee8fd95
sci-biology/kat: ignore site-wide boost-build/site-config.jam Introduce -8888 ebuild which zaps bundled stuff altogether and uses system-wide boost and jellyfish2 files. Package-Manager: Portage-2.3.28, Repoman-2.3.9 .../kat/files/kat-2.4.1-ignore-bundled-deps.patch | 120 ++++++++++++++++ .../kat/files/kat-2.4.1-rename-jellyfish.patch | 159 +++++++++++++++++++++ sci-biology/kat/kat-2.4.1.ebuild | 7 +- .../kat/{kat-9999.ebuild => kat-8888.ebuild} | 23 +-- sci-biology/kat/kat-9999.ebuild | 7 +- 5 files changed, 300 insertions(+), 16 deletions(-) diff --git a/sci-biology/kat/files/kat-2.4.1-ignore-bundled-deps.patch b/sci-biology/kat/files/kat-2.4.1-ignore-bundled-deps.patch new file mode 100644 index 000000000..d1816498e --- /dev/null +++ b/sci-biology/kat/files/kat-2.4.1-ignore-bundled-deps.patch @@ -0,0 +1,120 @@ +--- configure.ac.ori 2018-04-22 12:19:37.318794996 +0200 ++++ configure.ac 2018-04-22 12:20:43.310663598 +0200 +@@ -172,8 +172,8 @@ + + + AC_CONFIG_HEADERS([config.h]) +-AC_CONFIG_FILES([Makefile doc/Makefile doc/source/conf.py lib/kat.pc lib/Makefile src/Makefile tests/Makefile tests/compat.sh deps/seqan-library-2.0.0/Makefile scripts/setup.py scripts/kat/__init__.py scripts/Makefile]) +-AC_CONFIG_SUBDIRS([deps/jellyfish-2.2.0]) ++AC_CONFIG_FILES([Makefile doc/Makefile doc/source/conf.py lib/kat.pc lib/Makefile src/Makefile tests/Makefile tests/compat.sh scripts/setup.py scripts/kat/__init__.py scripts/Makefile]) ++AC_CONFIG_SUBDIRS([]) + AC_OUTPUT + + pystr="detected ${PYTHON_VERSION}. Plotting and downstream analysis enabled." +--- Makefile.am.ori 2018-04-22 12:23:58.756197763 +0200 ++++ Makefile.am 2018-04-22 12:24:21.176832618 +0200 +@@ -19,7 +19,7 @@ + dist_noinst_SCRIPTS = autogen.sh antigen.sh build_boost.sh + + # SRC DIRS +-make_dirs=deps/jellyfish-2.2.0 deps/seqan-library-2.0.0 lib src tests ++make_dirs=lib src tests + + if MAKE_PYKAT + make_dirs += scripts +--- tests/Makefile.am.ori 2018-04-22 12:31:02.738203085 +0200 ++++ tests/Makefile.am 2018-04-22 12:34:15.043648336 +0200 +@@ -29,8 +29,7 @@ + + AM_CPPFLAGS = \ + -I$(top_srcdir)/lib/include \ +- -I$(top_srcdir)/deps/seqan-library-2.0.0/include \ +- -I$(top_srcdir)/deps/jellyfish-2.2.0/include \ ++ -I$(top_srcdir)/usr/include/seqan-2.2 \ + -I$(top_srcdir)/deps/boost/build/include \ + -DDATADIR=\"$(srcdir)/data\" \ + -DKAT_SITE_PKGS='"$(libdir)/python$(PYTHON_VERSION)/site-packages"' \ +@@ -60,7 +59,6 @@ + -static \ + -L. \ + -L../lib \ +- -L../deps/jellyfish-2.2.0 \ + -L../deps/boost/build/lib \ + @AM_LDFLAGS@ + +@@ -69,11 +67,11 @@ + -lgtest \ + -lkat \ + -lkat_jellyfish \ +- ../deps/boost/build/lib/libboost_timer.a \ +- ../deps/boost/build/lib/libboost_chrono.a \ +- ../deps/boost/build/lib/libboost_filesystem.a \ +- ../deps/boost/build/lib/libboost_program_options.a \ +- ../deps/boost/build/lib/libboost_system.a \ ++ -lboost_timer \ ++ -lboost_chrono \ ++ -lboost_filesystem \ ++ -lboost_program_options \ ++ -lboost_system \ + @AM_LIBS@ + + include gtest.mk +--- src/Makefile.am.ori 2018-04-22 12:34:41.874408065 +0200 ++++ src/Makefile.am 2018-04-22 12:36:33.567570728 +0200 +@@ -12,9 +12,7 @@ + @AM_CXXFLAGS@ + + kat_CPPFLAGS = \ +- -I$(top_srcdir)/deps/seqan-library-2.0.0/include \ +- -I$(top_srcdir)/deps/jellyfish-2.2.0/include \ +- -I$(top_srcdir)/deps/boost/build/include \ ++ -I/usr/include/seqan-2.2 \ + -I$(top_srcdir)/lib/include \ + -DKAT_SITE_PKGS='"$(libdir)/python$(PYTHON_VERSION)/site-packages"' \ + @AM_CPPFLAGS@ +@@ -22,18 +20,16 @@ + kat_LDFLAGS = \ + -static \ + -L../lib \ +- -L../deps/jellyfish-2.2.0 \ +- -L../deps/boost/build/lib \ + @AM_LDFLAGS@ + + kat_LDADD = \ + -lkat \ + -lkat_jellyfish \ +- ../deps/boost/build/lib/libboost_timer.a \ +- ../deps/boost/build/lib/libboost_chrono.a \ +- ../deps/boost/build/lib/libboost_filesystem.a \ +- ../deps/boost/build/lib/libboost_program_options.a \ +- ../deps/boost/build/lib/libboost_system.a \ ++ -lboost_timer \ ++ -lboost_chrono \ ++ -lboost_filesystem \ ++ -lboost_program_options \ ++ -lboost_system \ + @AM_LIBS@ + + noinst_HEADERS = \ +--- lib/Makefile.am.ori 2018-04-22 12:38:29.680858551 +0200 ++++ lib/Makefile.am 2018-04-22 12:38:58.401671799 +0200 +@@ -6,9 +6,7 @@ + lib_LTLIBRARIES = libkat.la + + libkat_la_LDFLAGS = \ +- -version-info 2:4:0 \ +- -L../deps/jellyfish-2.2.0 \ +- -L../deps/boost/build/lib ++ -version-info 2:4:0 + + libkat_la_SOURCES = \ + src/matrix_metadata_extractor.cc \ +@@ -30,8 +28,6 @@ + $(KI)/comp_counters.hpp + + libkat_la_CPPFLAGS = \ +- -I$(top_srcdir)/deps/jellyfish-2.2.0/include \ +- -I$(top_srcdir)/deps/boost/build/include \ + -I$(top_srcdir)/lib/include \ + -DKAT_SITE_PKGS='"$(libdir)/python$(PYTHON_VERSION)/site-packages"' \ + @AM_CPPFLAGS@ diff --git a/sci-biology/kat/files/kat-2.4.1-rename-jellyfish.patch b/sci-biology/kat/files/kat-2.4.1-rename-jellyfish.patch new file mode 100644 index 000000000..81d4f7d18 --- /dev/null +++ b/sci-biology/kat/files/kat-2.4.1-rename-jellyfish.patch @@ -0,0 +1,159 @@ +--- lib/include/kat/jellyfish_helper.hpp.ori 2018-04-22 12:47:42.296506217 +0200 ++++ lib/include/kat/jellyfish_helper.hpp 2018-04-22 12:49:22.209335310 +0200 +@@ -41,18 +41,18 @@ + using boost::lexical_cast; + using boost::timer::auto_cpu_timer; + +-#include <jellyfish/err.hpp> +-#include <jellyfish/file_header.hpp> +-#include <jellyfish/hash_counter.hpp> +-#include <jellyfish/mapped_file.hpp> +-#include <jellyfish/mer_dna.hpp> +-#include <jellyfish/jellyfish.hpp> +-#include <jellyfish/large_hash_array.hpp> +-#include <jellyfish/large_hash_iterator.hpp> +-#include <jellyfish/mer_iterator.hpp> +-#include <jellyfish/mer_overlap_sequence_parser.hpp> +-#include <jellyfish/storage.hpp> +-#include <jellyfish/stream_manager.hpp> ++#include <jellyfish2/err.hpp> ++#include <jellyfish2/file_header.hpp> ++#include <jellyfish2/hash_counter.hpp> ++#include <jellyfish2/mapped_file.hpp> ++#include <jellyfish2/mer_dna.hpp> ++#include <jellyfish2/jellyfish.hpp> ++#include <jellyfish2/large_hash_array.hpp> ++#include <jellyfish2/large_hash_iterator.hpp> ++#include <jellyfish2/mer_iterator.hpp> ++#include <jellyfish2/mer_overlap_sequence_parser.hpp> ++#include <jellyfish2/storage.hpp> ++#include <jellyfish2/stream_manager.hpp> + using jellyfish::mer_dna; + using jellyfish::file_header; + using jellyfish::mapped_file; +--- lib/src/jellyfish_helper.cc.ori 2018-04-22 12:47:50.166729065 +0200 ++++ lib/src/jellyfish_helper.cc 2018-04-22 12:49:28.379510022 +0200 +@@ -35,15 +35,15 @@ + using boost::lexical_cast; + using boost::timer::auto_cpu_timer; + +-#include <jellyfish/binary_dumper.hpp> +-#include <jellyfish/err.hpp> +-#include <jellyfish/file_header.hpp> +-#include <jellyfish/mapped_file.hpp> +-#include <jellyfish/mer_dna.hpp> +-#include <jellyfish/jellyfish.hpp> +-#include <jellyfish/large_hash_array.hpp> +-#include <jellyfish/large_hash_iterator.hpp> +-#include <jellyfish/storage.hpp> ++#include <jellyfish2/binary_dumper.hpp> ++#include <jellyfish2/err.hpp> ++#include <jellyfish2/file_header.hpp> ++#include <jellyfish2/mapped_file.hpp> ++#include <jellyfish2/mer_dna.hpp> ++#include <jellyfish2/jellyfish.hpp> ++#include <jellyfish2/large_hash_array.hpp> ++#include <jellyfish2/large_hash_iterator.hpp> ++#include <jellyfish2/storage.hpp> + using jellyfish::large_hash::reprobe_limit_t; + using jellyfish::Offsets; + using jellyfish::quadratic_reprobes; +--- src/sect.cc.ori 2018-04-22 12:47:57.906948236 +0200 ++++ src/sect.cc 2018-04-22 12:49:33.479654437 +0200 +@@ -53,7 +53,7 @@ + using bfs::path; + using boost::lexical_cast; + +-#include <jellyfish/mer_dna.hpp> ++#include <jellyfish2/mer_dna.hpp> + + #include <kat/jellyfish_helper.hpp> + #include <kat/matrix_metadata_extractor.hpp> +--- src/histogram.cc.ori 2018-04-22 12:48:06.427189490 +0200 ++++ src/histogram.cc 2018-04-22 12:49:37.719774498 +0200 +@@ -44,7 +44,7 @@ + using bfs::path; + using boost::lexical_cast; + +-#include <jellyfish/mer_dna.hpp> ++#include <jellyfish2/mer_dna.hpp> + + #include <kat/matrix_metadata_extractor.hpp> + #include <kat/jellyfish_helper.hpp> +--- src/sect.hpp.ori 2018-04-22 12:48:13.167380343 +0200 ++++ src/sect.hpp 2018-04-22 12:49:41.549882951 +0200 +@@ -45,7 +45,7 @@ + using bfs::path; + using boost::lexical_cast; + +-#include <jellyfish/mer_dna.hpp> ++#include <jellyfish2/mer_dna.hpp> + + #include <kat/matrix_metadata_extractor.hpp> + #include <kat/jellyfish_helper.hpp> +--- src/gcp.cc.ori 2018-04-22 12:48:20.457586772 +0200 ++++ src/gcp.cc 2018-04-22 12:49:45.469993952 +0200 +@@ -44,7 +44,7 @@ + using bfs::path; + using boost::lexical_cast; + +-#include <jellyfish/mer_dna.hpp> ++#include <jellyfish2/mer_dna.hpp> + + #include <kat/jellyfish_helper.hpp> + #include <kat/sparse_matrix.hpp> +--- src/comp.cc.ori 2018-04-22 12:48:28.447813020 +0200 ++++ src/comp.cc 2018-04-22 12:49:50.720142612 +0200 +@@ -48,7 +48,7 @@ + namespace bfs = boost::filesystem; + using bfs::path; + +-#include <jellyfish/large_hash_iterator.hpp> ++#include <jellyfish2/large_hash_iterator.hpp> + + #include <kat/matrix_metadata_extractor.hpp> + #include <kat/sparse_matrix.hpp> +--- src/cold.cc.ori 2018-04-22 12:27:18.151843779 +0200 ++++ src/cold.cc 2018-04-22 12:27:35.482334502 +0200 +@@ -53,7 +53,7 @@ + using bfs::path; + using boost::lexical_cast; + +-#include <jellyfish/mer_dna.hpp> ++#include <jellyfish2/mer_dna.hpp> + + #include <kat/jellyfish_helper.hpp> + #include <kat/matrix_metadata_extractor.hpp> +--- src/comp.hpp.ori 2018-04-22 12:27:53.022831172 +0200 ++++ src/comp.hpp 2018-04-22 12:28:10.173316799 +0200 +@@ -33,7 +33,7 @@ + namespace bfs = boost::filesystem; + using bfs::path; + +-#include <jellyfish/large_hash_iterator.hpp> ++#include <jellyfish2/large_hash_iterator.hpp> + + #include <kat/matrix_metadata_extractor.hpp> + #include <kat/sparse_matrix.hpp> +--- src/cold.hpp.ori 2018-04-22 12:29:23.725399473 +0200 ++++ src/cold.hpp 2018-04-22 12:29:33.885687168 +0200 +@@ -45,7 +45,7 @@ + using bfs::path; + using boost::lexical_cast; + +-#include <jellyfish/mer_dna.hpp> ++#include <jellyfish2/mer_dna.hpp> + + #include <kat/matrix_metadata_extractor.hpp> + #include <kat/jellyfish_helper.hpp> +--- src/gcp.hpp.ori 2018-04-22 12:30:06.576612834 +0200 ++++ src/gcp.hpp 2018-04-22 12:30:13.056796324 +0200 +@@ -36,7 +36,7 @@ + using bfs::path; + using boost::lexical_cast; + +-#include <jellyfish/mer_dna.hpp> ++#include <jellyfish2/mer_dna.hpp> + + #include <kat/pyhelper.hpp> + #include <kat/jellyfish_helper.hpp> diff --git a/sci-biology/kat/kat-2.4.1.ebuild b/sci-biology/kat/kat-2.4.1.ebuild index 1df9f4430..f1635e9e8 100644 --- a/sci-biology/kat/kat-2.4.1.ebuild +++ b/sci-biology/kat/kat-2.4.1.ebuild @@ -41,7 +41,7 @@ src_prepare(){ src_configure(){ local myconf=() myconf+=( --disable-gnuplot ) # python3 does better image rendering, no need for gnuplot - use cpu_flags_x86_sse && myconf+=( $(use_with cpu_flags_x86_sse sse) ) # pass down to jellyfish-2.20/configure + use cpu_flags_x86_sse && myconf+=( $(use_with cpu_flags_x86_sse sse) ) # pass down to jellyfish-2.2.0/configure PYTHON_VERSION=3 econf ${myconf[@]} } @@ -49,7 +49,8 @@ src_compile(){ # build_boost.sh cd deps/boost || die ./bootstrap.sh --prefix=build --with-libraries=chrono,exception,program_options,timer,filesystem,system,stacktrace || die - ./b2 headers || die - ./b2 install || die + # https://github.com/TGAC/KAT/issues/92#issuecomment-383373418 + ./b2 headers --ignore-site-config || die + ./b2 install --ignore-site-config || die cd ../.. || die } diff --git a/sci-biology/kat/kat-9999.ebuild b/sci-biology/kat/kat-8888.ebuild similarity index 67% copy from sci-biology/kat/kat-9999.ebuild copy to sci-biology/kat/kat-8888.ebuild index d46f6d3e8..c59669fc5 100644 --- a/sci-biology/kat/kat-9999.ebuild +++ b/sci-biology/kat/kat-8888.ebuild @@ -30,9 +30,12 @@ RDEPEND="${DEPEND}" src_prepare(){ default + rm -rf deps || die "Failed to zap bundled seqan-library-2.0.0 jellyfish-2.2.0 boost" + epatch "${FILESDIR}"/kat-2.4.1-ignore-bundled-deps.patch + epatch "${FILESDIR}"/kat-2.4.1-rename-jellyfish.patch # autogen.sh - test -n "$srcdir" || local srcdir=`dirname "$0"` - test -n "$srcdir" || local srcdir=. + #test -n "$srcdir" || local srcdir=`dirname "$0"` + #test -n "$srcdir" || local srcdir=. eautoreconf --force --install --verbose "$srcdir" } @@ -43,11 +46,11 @@ src_configure(){ PYTHON_VERSION=3 econf ${myconf[@]} } -src_compile(){ - # build_boost.sh - cd deps/boost || die - ./bootstrap.sh --prefix=build --with-libraries=chrono,exception,program_options,timer,filesystem,system,stacktrace || die - ./b2 headers || die - ./b2 install || die - cd ../.. || die -} +#src_compile(){ +# # build_boost.sh +# cd deps/boost || die +# ./bootstrap.sh --prefix=build --with-libraries=chrono,exception,program_options,timer,filesystem,system,stacktrace || die +# ./b2 headers --prefix=build || die +# ./b2 install --prefix=build || die +# cd ../.. || die +#} diff --git a/sci-biology/kat/kat-9999.ebuild b/sci-biology/kat/kat-9999.ebuild index d46f6d3e8..8fe79a34b 100644 --- a/sci-biology/kat/kat-9999.ebuild +++ b/sci-biology/kat/kat-9999.ebuild @@ -39,7 +39,7 @@ src_prepare(){ src_configure(){ local myconf=() myconf+=( --disable-gnuplot ) # python3 does better image rendering, no need for gnuplot - use cpu_flags_x86_sse && myconf+=( $(use_with cpu_flags_x86_sse sse) ) # pass down to jellyfish-2.20/configure + use cpu_flags_x86_sse && myconf+=( $(use_with cpu_flags_x86_sse sse) ) # pass down to jellyfish-2.2.0/configure PYTHON_VERSION=3 econf ${myconf[@]} } @@ -47,7 +47,8 @@ src_compile(){ # build_boost.sh cd deps/boost || die ./bootstrap.sh --prefix=build --with-libraries=chrono,exception,program_options,timer,filesystem,system,stacktrace || die - ./b2 headers || die - ./b2 install || die + # https://github.com/TGAC/KAT/issues/92#issuecomment-383373418 + ./b2 headers --ignore-site-config || die + ./b2 install --ignore-site-config || die cd ../.. || die }