COMBINE-lab / salmon

🐟 🍣 🍱 Highly-accurate & wicked fast transcript-level quantification from RNA-seq reads using selective alignment
https://combine-lab.github.io/salmon
GNU General Public License v3.0
779 stars 165 forks source link

fix cmake to find hts #866

Open pabloaledo opened 1 year ago

pabloaledo commented 1 year ago

Is the bug primarily related to salmon (bulk mode) or alevin (single-cell mode)? salmon

Describe the bug Errors compiling salmon in spack with cmake

To Reproduce spack install salmon

Specifically, please provide at least the following information:

Expected behavior Program would compile correctly

Desktop (please complete the following information):

Additional context During the update of the spack package for salmon we found hts is needed, and cmake could not find the module. We are wondering if you want/plan to use this by default.

https://github.com/spack/spack/pull/39202/commits/c3357a64a9697be4058feb555a2c4e4138793f17

rob-p commented 1 year ago

Hi @pabloaledo,

Thanks for the report! I am not familiar with spack. However, the bigget issue here is that I don't believe that salmon, by itself, should require/depend upon libhts. It uses libstaden for its sam/bam parsing, but that should be a self-contained dependency. We should figure out why libhts is being pulled in here.

Best, Rob

pabloaledo commented 1 year ago

Do you think I should redirect my question to https://github.com/jkbonfield/io_lib ?

Thanks a lot for the help !

rob-p commented 1 year ago

Hi Pablo,

It is probably worth checking upstream in the io_lib repo to see what the expected behavior is. I'll note that io_lib itself is not a CMake based build, so it's possible that I messed something up when creating the relevant CMake module to find libstaden. However, I believe I am correct in the assessment that the full htslib should not be necessary to build libstaden. Let's get @jkbonfield's read on this. Feel free to tag me if you open an issue in that Github repo.

--Rob