bcgsc / abyss

:microscope: Assemble large genomes using short reads
http://www.bcgsc.ca/platform/bioinfo/software/abyss
Other
310 stars 108 forks source link

subcommand gives incorrect version #61

Closed yannickwurm closed 9 years ago

yannickwurm commented 9 years ago

After git clone, autoconf, configure & make, ./bin/abyss-pe -v returns the version of GNU make rather than the version of abyss. This is a bit surprising. (I haven't tested other subcommands)

kmnip commented 9 years ago

-v is indeed the option for printing the version of GNU make because abyss-pe is a makefile. Correct me if I am wrong, but I don't think the GNU make options can be overridden. So, this is the intended behavior.

To list the version of abyss-pe: abyss-pe version

To list the version of all utilities in ABySS: abyss-pe versions

On Fri, Dec 5, 2014 at 1:54 AM, Yannick Wurm notifications@github.com wrote:

After git clone, autoconf, configure & make, ./bin/abyss-pe -v returns the version of GNU make rather than the version of abyss. This is a bit surprising. (I haven't tested other subcommands)

— Reply to this email directly or view it on GitHub https://github.com/bcgsc/abyss/issues/61.

yannickwurm commented 9 years ago

Ah - maybe its confusing then that makefiles are in a /bin directory?

traymond commented 9 years ago

Hi @yannickwurm, this is known behaviour. As @kmnip says, abyss-pe is a make script, which means you can use other make options like -n to dry-run abyss-pe commands, and -C to specify the working directory for an assembly. See man make for a full list. Unfortunately, this means that other confusing make options like -v work as well.

sjackman commented 9 years ago

Hi, Yannick. Yes, I agree this situation is not ideal. As Tony mentioned there are big benefits to abyss-pe being a Makefile script that allows the use of standard Make options, but includes the drawback of responding to other Make options, like -v in an unintuitive and surprising manner.

We've discussed adding an abyss wrapper script that would have subcommands, similar to bwa and samtools, which would resolve this issue. It's a good idea, but isn't currently high on our priority list.