Skip to content
Snippets Groups Projects
Select Git revision
  • b49bb2d73fcbe98c94e69181d09c934ee79bc8d8
  • develop default protected
  • master
  • hts_opt_block_size
  • bz2-lzma-pkgconfig
  • exp/raw-index
  • cram_split_tags
  • configure
  • feature/contig_comma
  • parser-flags
  • irods_update
  • cigar-P-bis
  • cram_digests
  • CSIv2
  • ftype
  • lite
  • norm-indels
  • 1.8
  • 1.7
  • 1.6
  • 1.5
  • 1.4.1
  • 1.4
  • 1.3.2
  • 1.3.1
  • 1.3
  • 1.2.1
  • 1.2
  • 1.1
  • 1.0
  • 0.2.0-rc12
  • 0.2.0-rc11
  • 0.2.0-rc10
  • 0.2.0-rc9
  • 0.2.0-rc8
  • 0.2.0-rc7
  • 0.2.0-rc6
37 results

htslib

  • Clone with SSH
  • Clone with HTTPS
  • user avatar
    Rob Davies authored
    Netbsd's libc #defines uint16_t to __uint16_t (and similarly for
    other stdint types).  This was expanded by KSORT_INIT_GENERIC()
    resulting in functions being defined with slightly different names
    compared to the ones produced by using KSORT_INIT() directly.
    The names also no longer matched the results of expanding
    ks_mergesort() and friends.
    
    Fix this by adjusting where the underscore gets pasted into the
    names.  This means KSORT_INIT_GENERIC can use the argument
    in a token pasting operation, which prevents it from being
    expanded.
    b49bb2d7
    History

    HTSlib is an implementation of a unified C library for accessing common file formats, such as SAM, CRAM and VCF, used for high-throughput sequencing data, and is the core library used by samtools and bcftools. HTSlib only depends on zlib. It is known to be compatible with gcc, g++ and clang.

    HTSlib implements a generalized BAM index, with file extension .csi (coordinate-sorted index). The HTSlib file reader first looks for the new index and then for the old if the new index is absent.

    This project also includes the popular tabix indexer, which indexes both .tbi and .csi formats, and the bgzip compression utility.

    Building HTSlib

    See INSTALL for complete details. Release tarballs contain generated files that have not been committed to this repository, so building the code from a Git repository requires extra steps:

    autoheader     # If using configure, generate the header template...
    autoconf       # ...and configure script (or use autoreconf to do both)
    ./configure    # Optional, needed for choosing optional functionality
    make
    make install