Enable Minimap2 compilation on ARM64 platforms #284
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The bundled Minimap2 aligner in QUAST fails to compile on 64-bit ARM architectures (e.g., Apple Silicon Macs, Linux aarch64) due to the attempted compilation of SSE-specific code (like in ksw2_ll_sse.c). This results in a general 'ERROR! Compilation of contig aligner software was unsuccessful!'.
This commit modifies QUAST's function. It now detects if the system is a 64-bit ARM architecture and if the tool being compiled is 'Minimap2'. If these conditions are met, the and flags are added to the command for Minimap2.
This approach utilizes Minimap2's standard Makefile, which includes support for ARM NEON compilation when these flags are provided (likely via sse2neon for relevant C files). This resolves the SSE-related compilation errors and enables QUAST to successfully compile and use its bundled Minimap2 on these ARM platforms.
Closes #283