MrBayes icon indicating copy to clipboard operation
MrBayes copied to clipboard

Consider utilizing more make commands

Open nylander opened this issue 4 years ago • 1 comments

Consider utilizing more of the already available commands for make.

Perhaps (no particular priority order):

  • make uninstall
  • make dist
  • make dist-gzip
  • make install-man

nylander avatar Jul 03 '20 12:07 nylander

The uninstall target actually works when I test it, but leaves some directories in place:

$ tree -F MrBayes
MrBayes
|-- bin/
`-- share/
    |-- doc/
    |   `-- mrbayes/
    `-- examples/
        `-- mrbayes/

6 directories, 0 file

It can be argued that the two directories share/doc/mrbayes and share/examples/mrbayes should be removed. I'll look into that.

The dist target works and generates mrbayes-3.2.7a.tar.gz which is a tar archive containing the distribution sources, ready for distribution. The distcheck target does the same thing, but also builds the project (mb and documentation in our case), and runs make check.

Actually, the make check that the distcheck target runs is currently failing since the copy of the examples directory that it creates is read-only (it tests whether the project can be built from read-only sources). This is an issue that I will look into, and would be solved by telling MrBayes to write output files elsewhere than in the same directory as the Nexus file (I don't know if this is possible at the moment), or by simply coping the primates.nex file to the testing directory (or maybe even better, to $TMPDIR) when running the test.

The dist-gzip target is identical to dist. The dist-xz and dist-zip targets creates tar archives compressed by the corresponding compression software, if installed.

The install-man target is automatically invoked by the install target if the Makefile.am files define manual pages to install (I will make sure this is done with your new manual text).

kusalananda avatar Jul 03 '20 19:07 kusalananda