Skip to content

Commit

Permalink
Setup compilation of HMMER impl for NEON and VMX platforms
Browse files Browse the repository at this point in the history
  • Loading branch information
althonos committed Oct 27, 2024
1 parent aef8741 commit 67894e0
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 8 deletions.
10 changes: 2 additions & 8 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,8 @@ cmake.define.CMAKE_CXX_COMPILER_LAUNCHER = "sccache"
if.env.MOLD = true
cmake.define.CMAKE_LINKER_TYPE = "mold"

#[tool.coverage.run]
#plugins = ["Cython.Coverage"]
[tool.coverage.run]
plugins = ["Cython.Coverage"]

[tool.cibuildwheel]
before-build = "pip install scikit-build-core cython"
Expand All @@ -99,12 +99,6 @@ exclude_lines = [
"raise AllocationError",
]

[tool.coverage.paths]
source = [
"src/pyhmmer/",
"build/Debug/src/pyhmmer/",
]

[tool.mypy]
disallow_any_decorated = true
disallow_any_generics = true
Expand Down
33 changes: 33 additions & 0 deletions src/hmmer/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,39 @@ if(HMMER_IMPL STREQUAL "SSE")
impl_sse/stotrace.c
impl_sse/vitfilter.c
)
elseif(HMMER_IMPL STREQUAL "NEON")
set(HMMER_SOURCES
${HMMER_SOURCES}
impl_neon/decoding.c
impl_neon/fwdback.c
impl_neon/io.c
impl_neon/mpi.c
impl_neon/msvfilter.c
impl_neon/null2.c
impl_neon/optacc.c
impl_neon/p7_omx.c
impl_neon/p7_oprofile.c
impl_neon/ssvfilter.c
impl_neon/stotrace.c
impl_neon/vitfilter.c
)
elseif(HMMER_IMPL STREQUAL "VMX")
set(HMMER_SOURCES
${HMMER_SOURCES}
impl_vmx/decoding.c
impl_vmx/fwdback.c
impl_vmx/io.c
impl_vmx/mpi.c
impl_vmx/msvfilter.c
impl_vmx/null2.c
impl_vmx/optacc.c
impl_vmx/p7_omx.c
impl_vmx/p7_oprofile.c
impl_vmx/stotrace.c
impl_vmx/vitfilter.c
)
else()
message(FATAL_ERROR "No HMMER implementation defined")
endif()

add_library(libhmmer ${HMMER_SOURCES})
Expand Down

0 comments on commit 67894e0

Please sign in to comment.