Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update reseek to 2.3 #53281

Open
wants to merge 22 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions recipes/reseek/arm_support.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
--- a/src/myutils.h
+++ b/src/myutils.h
@@ -5,7 +5,7 @@
#define TRACK_ALLOC 0
#define USE_OMP 0

-#if defined(__x86_64__) || defined(_M_X64)
+#if defined(__x86_64__) || defined(_M_X64) || defined(__arm64__) || defined(__aarch64__)
#define BITS 64
#else
#define BITS 32
32 changes: 27 additions & 5 deletions recipes/reseek/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,39 @@
set -e

mkdir -p ${PREFIX}/bin

export LDFLAGS="${LDFLAGS} -L${PREFIX}/lib"
export CXXFLAGS="${CXXFLAGS} -O3 -I${PREFIX}/include"
export CFLAGS="${CFLAGS} -O3"

cd src || exit 1
echo "0" > gitver.txt

cp ${RECIPE_DIR}/vcxproj_make.py .
chmod +x vcxproj_make.py
./vcxproj_make.py --openmp --cppcompiler ${CXX} --ccompiler ${CC}
OS=$(uname)
ARCH=$(uname -m)

case $(uname -m) in
arm64|aarch64) cp -rfv ${RECIPE_DIR}/sse2neon.h ${SRC_DIR}/src/ ;;
esac

if [[ "${OS}" == "Darwin" && "${ARCH}" == "x86_64" ]]; then
cp -rf ${RECIPE_DIR}/vcxproj_make_osx.py .
chmod 0755 vcxproj_make_osx.py
python ./vcxproj_make_osx.py --openmp --lrt --pthread --cppcompiler "${CXX}" --ccompiler "${CC}"
elif [[ "${OS}" == "Darwin" && "${ARCH}" == "arm64" ]]; then
cp -rf ${RECIPE_DIR}/vcxproj_make_osx.py .
chmod 0755 vcxproj_make_osx.py
python ./vcxproj_make_osx.py --openmp --lrt --pthread --nonative --cppcompiler "${CXX}" --ccompiler "${CC}"
else
cp -rf ${RECIPE_DIR}/vcxproj_make.py .
chmod 0755 vcxproj_make.py
python ./vcxproj_make.py --openmp --lrt --pthread --std "c++17" --cppcompiler "${CXX}" --ccompiler "${CC}"
fi

# Verify binary exists and is executable
if [ ! -f ../bin/reseek ]; then
if [[ ! -f ../bin/reseek ]]; then
echo "Error: reseek binary not found"
exit 1
fi

cp ../bin/reseek ${PREFIX}/bin/reseek
install -v -m 0755 ../bin/reseek ${PREFIX}/bin
104 changes: 0 additions & 104 deletions recipes/reseek/build_failure.linux-64.yaml

This file was deleted.

30 changes: 23 additions & 7 deletions recipes/reseek/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,32 +1,48 @@
{% set name = "reseek" %}
{% set version = "2.02" %}
{% set version = "2.3" %}

package:
name: {{ name|lower }}
version: {{ version }}

source:
url: https://github.com/rcedgar/reseek/archive/refs/tags/v{{ version }}.tar.gz
sha256: 83296e5edcdccdf4848f52ff34f35b753fa9ae1d383c3347eee41ef7d26888b1
sha256: 2c0fc59a0f54af067e80e607c28399978c17ec21cb02773e522cc792db696312
patches:
- arm_support.patch
- parasail.patch # [aarch64 or arm64]

build:
number: 1
skip: True #[osx]
number: 0
run_exports:
- {{ pin_subpackage(name, max_pin="x.x") }}

- {{ pin_subpackage(name, max_pin="x") }}

requirements:
build:
- {{ compiler("cxx") }}
- {{ compiler("c") }}
- make
host:
- libgomp # [linux]
- llvm-openmp # [osx]
run:
- libgomp # [linux]
- llvm-openmp # [osx]

test:
commands:
- reseek -version

about:
home: https://github.com/rcedgar/reseek
license: GPL-3.0-only
license_file: LICENSE
summary: Protein structure alignment and search algorithm
license_family: GPL3
summary: "Protein structure alignment and search algorithm."
dev_url: https://github.com/rcedgar/reseek
doc_url: https://drive5.com/reseek/doc.html

extra:
additional-platforms:
- linux-aarch64
- osx-arm64
20 changes: 20 additions & 0 deletions recipes/reseek/parasail.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
diff --git a/src/parasail.h b/src/parasail.h
index 950a4a5..6d58ba2 100644
--- a/src/parasail.h
+++ b/src/parasail.h
@@ -7,7 +7,15 @@ Author [email protected]
Copyright (c) 2015 Battelle Memorial Institute.
***/

+#include <stdio.h>
+#include <stdint.h>
+#include <string.h>
+#ifdef __ARM_NEON
+#include "sse2neon.h"
+#else
#include <immintrin.h>
+#endif
+
/* 3 2 1 */
/* 10987654321098765432109876543210*/
#define PARASAIL_FLAG_NW (1 << 0) /*00000000000000000000000000000001*/
Loading
Loading