Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 646478 - sci-biology/abyss-2.0.2-r1 - add USE=sqlite and other ebuild tweaks
Summary: sci-biology/abyss-2.0.2-r1 - add USE=sqlite and other ebuild tweaks
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Science Biology related packages
Keywords: EBUILD
Depends on:
Reported: 2018-02-03 09:43 UTC by Martin Mokrejš
Modified: 2018-10-31 02:40 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---

abyss-2.0.2-r1.ebuild (abyss-2.0.2-r1.ebuild,1.71 KB, text/plain)
2018-02-03 09:43 UTC, Martin Mokrejš
build.log (build.log,111.00 KB, text/plain)
2018-02-03 11:28 UTC, Martin Mokrejš

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Mokrejš 2018-02-03 09:43:11 UTC
Sorry, my git repo is unusable and this either disappears soon from my /tmp or you take it.

sci-biology/abyss: ebuild tweaks

Improve description line.

Add github-hosted homepage.

Introduce IUSE=sqlite optional dependency. Currently the binaries
are silently linked against -lsqlite3 and -lmpi, which is bad.
This change should at least make them recorded through portage.

Add runtime dependency on sci-biology/bwa.

Document current default k-mer size value.

Try to respect USE=mpi although it seems configure ignores that
and sniffs out openmpi headers and libs.

Somebody could improve further the other MPI implementations
and come up with proper USE dependencies.
Comment 1 Martin Mokrejš 2018-02-03 09:43:54 UTC
Created attachment 517640 [details]

I know, a patch would be preferred ...
Comment 2 Martin Mokrejš 2018-02-03 11:25:48 UTC
If you want to tackle also the MPI depencies, see .

Furthermore, let me say that if I have openmpi installed but run abysss's configure it sniffs out my mpi headers and libs and practically creates a MPI-dependent binaries, like /usr/bin/ABYSS-P. That is maybe why there was IUSE=+mpi in the ebuild so far?

Also the existing haskell tweak (not by me) does not work for me, you can see:

Making all in Misc
make[2]: Entering directory '/scratch/var/tmp/portage/sci-biology/abyss-2.0.2-r1/work/abyss-2.0.2/Misc'
make -O2 -hidir ./ -odir ./ -o abyss-samtobreak samtobreak.hs
Usage: make [options] [target] ...
  -b, -m                      Ignored for compatibility.
  -B, --always-make           Unconditionally make all targets.
                              Change to DIRECTORY before doing anything.
  -d                          Print lots of debugging information.
  --debug[=FLAGS]             Print various types of debugging information.
  -e, --environment-overrides
                              Environment variables override makefiles.
  --eval=STRING               Evaluate STRING as a makefile statement.
  -f FILE, --file=FILE, --makefile=FILE
                              Read FILE as a makefile.
  -h, --help                  Print this message and exit.
  -i, --ignore-errors         Ignore errors from recipes.
  -I DIRECTORY, --include-dir=DIRECTORY
                              Search DIRECTORY for included makefiles.
  -j [N], --jobs[=N]          Allow N jobs at once; infinite jobs with no arg.
  -k, --keep-going            Keep going when some targets can't be made.
  -l [N], --load-average[=N], --max-load[=N]
                              Don't start multiple jobs unless load is below N.
  -L, --check-symlink-times   Use the latest mtime between symlinks and target.
  -n, --just-print, --dry-run, --recon
                              Don't actually run any recipe; just print them.
  -o FILE, --old-file=FILE, --assume-old=FILE
                              Consider FILE to be very old and don't remake it.
  -O[TYPE], --output-sync[=TYPE]
                              Synchronize output of parallel jobs by TYPE.
  -p, --print-data-base       Print make's internal database.
  -q, --question              Run no recipe; exit status says if up to date.
  -r, --no-builtin-rules      Disable the built-in implicit rules.
  -R, --no-builtin-variables  Disable the built-in variable settings.
  -s, --silent, --quiet       Don't echo recipes.
  -S, --no-keep-going, --stop
                              Turns off -k.
  -t, --touch                 Touch targets instead of remaking them.
  --trace                     Print tracing information.
  -v, --version               Print the version number of make and exit.
  -w, --print-directory       Print the current directory.
  --no-print-directory        Turn off -w, even if it was turned on implicitly.
  -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE
                              Consider FILE to be infinitely new.
  --warn-undefined-variables  Warn when an undefined variable is referenced.

This program built for x86_64-pc-linux-gnu
Report bugs to <>
make[2]: Leaving directory '/scratch/var/tmp/portage/sci-biology/abyss-2.0.2-r1/work/abyss-2.0.2/Misc'
Comment 3 Martin Mokrejš 2018-02-03 11:28:38 UTC
Created attachment 517650 [details]

# emerge -pv abyss

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] sci-biology/abyss-2.0.2-r1::gentoo  USE="openmp sqlite -misc-haskell -mpi" 0 KiB

Note below:

# ldd /usr/bin/ABYSS-P (0x00007ffd48366000) => /usr/lib64/ (0x00007fb056a62000) => /lib64/ (0x00007fb05685e000) => /usr/lib64/ (0x00007fb056574000) => /lib64/ (0x00007fb05622a000) => /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/ (0x00007fb055e25000) => /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/ (0x00007fb055c0e000) => /lib64/ (0x00007fb055846000) => /lib64/ (0x00007fb055626000)
	/lib64/ (0x00007fb056e31000) => /usr/lib64/ (0x00007fb0553a1000) => /usr/lib64/ (0x00007fb055107000) => /lib64/ (0x00007fb054eff000) => /lib64/ (0x00007fb054cfc000) => /usr/lib64/ (0x00007fb054abd000) => /usr/lib64/ (0x00007fb0548b1000) => /lib64/ (0x00007fb05468e000) => /usr/lib64/ (0x00007fb054484000) => /usr/lib64/ (0x00007fb054121000) => /usr/lib64/ (0x00007fb053ecd000) => /usr/lib64/ (0x00007fb053cca000) => /lib64/ (0x00007fb053ab2000) => /usr/lib64/ (0x00007fb0536f7000) => /usr/lib64/ (0x00007fb051b4e000)
Comment 4 Martin Mokrejš 2018-02-03 11:30:54 UTC
And why there is /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/ and /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/ in the ldd output I have no clue. I used gcc-6.3.0 to build.

# gcc-config -l
 [1] x86_64-pc-linux-gnu-4.3.6
 [2] x86_64-pc-linux-gnu-4.4.7
 [3] x86_64-pc-linux-gnu-4.6.4
 [4] x86_64-pc-linux-gnu-4.7.4
 [5] x86_64-pc-linux-gnu-4.8.5
 [6] x86_64-pc-linux-gnu-4.9.4
 [7] x86_64-pc-linux-gnu-5.3.0
 [8] x86_64-pc-linux-gnu-5.4.0
 [9] x86_64-pc-linux-gnu-6.2.0
 [10] x86_64-pc-linux-gnu-6.3.0 *
 [11] x86_64-pc-linux-gnu-7.1.0
 [12] x86_64-pc-linux-gnu-7.2.0
 [13] x86_64-pc-linux-gnu-7.3.0
Comment 5 Martin Mokrejš 2018-02-09 16:36:55 UTC
Comment 6 Virgil Dupras gentoo-dev 2018-10-31 02:40:54 UTC
Ping sci-biology. This has been sitting there for a long time.