Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Convert HapCUT2 to use the HTSlib API instead of the legacy samtools API #87

Merged
merged 1 commit into from
Nov 6, 2019
Merged

Conversation

jmarshall
Copy link
Contributor

This pull request converts the hairs-src/*.c source code to use HTSlib for its BAM-reading needs rather than the old samtools 0.1.x API. The old API has been unmaintained for many years and this means that the code needs only HTSlib, not HTSlib and Samtools.

This compiles against just HTSlib (both 1.2.1 and the current release), but I have not tested it or even tried to run it.

With this change, the only reference to the samtools submodule code is in the install-samtools rule. If you changed this to a README recommending installing a current Samtools, you could remove the samtools submodule entirely.

This also paves the way to building HapCUT2 against current HTSlib instead of 1.2.1 — which is now almost 5 years old.

Change to include htslib/*.h headers; use HTSlib-style type and
function names; use sam_hdr_read() and pass bam_hdr_t headers
explicitly to sam_read1().

Remove references to libbam.a and don't build it. The only remaining
use of submodules/samtools is in the install-samtools rule.

Use HTSlib's kseq.h instead of a local copy.
@pjedge pjedge merged commit 48bb718 into vibansal:master Nov 6, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants