Merge remote-tracking branch 'remotes/origin/master'

This commit is contained in:
Heng Li
2025-03-29 22:44:26 -04:00
2 changed files with 53 additions and 5 deletions
+50 -3
View File
@@ -7,7 +7,8 @@ on:
pull_request:
jobs:
build:
build-linux-x8664:
name: Linux x86_64
runs-on: ubuntu-latest
strategy:
matrix:
@@ -15,7 +16,53 @@ jobs:
steps:
- name: Checkout minimap2
uses: actions/checkout@v2
uses: actions/checkout@v4
- name: Compile with ${{ matrix.compiler }}
run: make CC=${{ matrix.compiler }}
run: |
make CC=${{ matrix.compiler }}
file minimap2 | grep x86-64
build-linux-aarch64:
name: Linux aarch64
runs-on: ubuntu-latest
strategy:
matrix:
compiler: [gcc]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Compile with ${{ matrix.compiler }}
uses: uraimo/run-on-arch-action@v2
with:
arch: aarch64
distro: ubuntu22.04
githubToken: ${{ github.token }}
dockerRunArgs: |
--volume "${PWD}:/minimap2"
install: |
apt-get update -q -y
apt-get install -q -y make ${{ matrix.compiler }} zlib1g-dev file
run: |
cd /minimap2
make CC=${{ matrix.compiler }} arm_neon=1 aarch64=1 -j
file minimap2 | grep aarch64
build-mac-arm64:
name: Mac ARM64
runs-on: macos-14
strategy:
matrix:
compiler: [clang]
steps:
- name: Checkout minimap2
uses: actions/checkout@v4
- name: Compile with ${{ matrix.compiler }}
run: |
make CC=${{ matrix.compiler }} arm_neon=1 aarch64=1 -j
file minimap2 | grep arm64
+3 -2
View File
@@ -211,11 +211,12 @@ cdef class Aligner:
c = h.cigar32[k]
cigar.append([c>>4, c&0xf])
if cs or MD: # generate the cs and/or the MD tag, if requested
_cur_seq = _seq2 if h.seg_id > 0 and seq2 is not None else _seq
if cs:
l_cs_str = cmappy.mm_gen_cs(km, &cs_str, &m_cs_str, self._idx, &regs[i], _seq, 1)
l_cs_str = cmappy.mm_gen_cs(km, &cs_str, &m_cs_str, self._idx, &regs[i], _cur_seq, 1)
_cs = cs_str[:l_cs_str] if isinstance(cs_str, str) else cs_str[:l_cs_str].decode()
if MD:
l_cs_str = cmappy.mm_gen_MD(km, &cs_str, &m_cs_str, self._idx, &regs[i], _seq)
l_cs_str = cmappy.mm_gen_MD(km, &cs_str, &m_cs_str, self._idx, &regs[i], _cur_seq)
_MD = cs_str[:l_cs_str] if isinstance(cs_str, str) else cs_str[:l_cs_str].decode()
yield Alignment(h.ctg, h.ctg_len, h.ctg_start, h.ctg_end, h.strand, h.qry_start, h.qry_end, h.mapq, cigar, h.is_primary, h.mlen, h.blen, h.NM, h.trans_strand, h.seg_id, _cs, _MD)
cmappy.mm_free_reg1(&regs[i])