Skip to content

Commit

Permalink
dialign-tx: add arm64 build (#53700)
Browse files Browse the repository at this point in the history
  • Loading branch information
mencian authored Feb 5, 2025
1 parent 90d4480 commit 1ab0e1b
Show file tree
Hide file tree
Showing 6 changed files with 108 additions and 223 deletions.
39 changes: 39 additions & 0 deletions recipes/dialign-tx/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
CC=$(CC)
# debug
#CPPFLAGS=-g -O0 -Q -v -da
#CPPFLAGS=-g -O0 -fstack-check -Q -v -da

#CPPFLAGS=-g -D_REENTRANT

# THIS IS FOR THE OPTIMIZED ONE
#CPPFLAGS=-g
#CPPFLAGS=-O3 -march=i686 -funroll-loops
CPPFLAGS=-g -O3 -Wno-implicit-function-declaration -Wno-format -Wno-unused-comparison -Wno-return-type -funroll-loops -fcommon -march=i686 -mfpmath=sse -msse -mmmx
#CPPFLAGS=-march=athlon-mp -g -O0 -Wall -D_USE_XOPEN -D__unix__

OBJ_DIR=.
TARGET=.

OBJ = \
$(OBJ_DIR)/museq.o \
$(OBJ_DIR)/parameters.o \
$(OBJ_DIR)/io.o \
$(OBJ_DIR)/diag.o \
$(OBJ_DIR)/alig.o \
$(OBJ_DIR)/assemble.o \
$(OBJ_DIR)/prob.o \
$(OBJ_DIR)/orf.o \
$(OBJ_DIR)/translate.o \


all: museq

clean:
rm -rf *.o *rtl *jump *addre* *cfg *life *reg *reload *flow* *stack museq dialign-tx

museq: $(OBJ)
rm -f $(TARGET)/$@
$(CC) $(CPPFLAGS) -o $(TARGET)/$@ \
$(OBJ) \
-pipe -Wall -lm
mv museq dialign-tx
37 changes: 37 additions & 0 deletions recipes/dialign-tx/Makefile.MAC_OS
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
CC=$(CC)
# debug
#CPPFLAGS=-g -O0 -Q -v -da
#CPPFLAGS=-g -O0 -fstack-check -Q -v -da

#CPPFLAGS=-g -D_REENTRANT

# THIS IS FOR THE OPTIMIZED ONE
#CPPFLAGS=-g
CPPFLAGS=-g -O3 -Wno-implicit-function-declaration -Wno-format -Wno-unused-comparison -Wno-return-type -funroll-loops -fcommon

OBJ_DIR=.
TARGET=.

OBJ = \
$(OBJ_DIR)/museq.o \
$(OBJ_DIR)/parameters_MAC.o \
$(OBJ_DIR)/io.o \
$(OBJ_DIR)/diag.o \
$(OBJ_DIR)/alig.o \
$(OBJ_DIR)/assemble.o \
$(OBJ_DIR)/prob.o \
$(OBJ_DIR)/orf.o \
$(OBJ_DIR)/translate.o \


all: museq

clean:
rm -rf *.o *rtl *jump *addre* *cfg *life *reg *reload *flow* *stack museq dialign-tx

museq: $(OBJ)
rm -f $(TARGET)/$@
$(CC) $(CPPFLAGS) -o $(TARGET)/$@ \
$(OBJ) \
-pipe -Wall -lm
mv museq dialign-tx
21 changes: 17 additions & 4 deletions recipes/dialign-tx/build.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,20 @@
#!/bin/bash
set -euo pipefail

cd ./source
mkdir -p $PREFIX/bin
make CC="$CC -fcommon $CFLAGS $LDFLAGS" CPPFLAGS="$CPPFLAGS"
mv dialign-tx $PREFIX/bin/
export CFLAGS="${CFLAGS} -O3 -Wno-unused-command-line-argument -Wno-return-type -Wno-implicit-function-declaration -Wno-format -Wno-unused-comparison"
export LDFLAGS="${LDFLAGS} -L${PREFIX}/lib"

mkdir -p ${PREFIX}/bin
cd source

if [[ `uname` == "Darwin" ]]; then
rm Makefile.MAC_OS
cp -rf ${RECIPE_DIR}/Makefile.MAC_OS .
make -f Makefile.MAC_OS CC="${CC} -fcommon ${CFLAGS} ${LDFLAGS}" CPPFLAGS="${CPPFLAGS} -I${PREFIX}/include" -j"${CPU_COUNT}"
else
rm Makefile
cp -rf ${RECIPE_DIR}/Makefile .
make -f Makefile CC="${CC} -fcommon ${CFLAGS} ${LDFLAGS}" CPPFLAGS="${CPPFLAGS} -I${PREFIX}/include" -j"${CPU_COUNT}"
fi

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

This file was deleted.

104 changes: 0 additions & 104 deletions recipes/dialign-tx/build_failure.osx-64.yaml

This file was deleted.

26 changes: 15 additions & 11 deletions recipes/dialign-tx/meta.yaml
Original file line number Diff line number Diff line change
@@ -1,38 +1,42 @@
{% set version = "1.0.2" %}
{% set name = "dialign-tx" %}

package:
name: {{ name }}
version: {{ version }}

source:
# url: http://dialign-tx.gobics.de/DIALIGN-TX_{{ version }}.tar.gz -- deceased
url: https://master.dl.sourceforge.net/project/old-software-collection/DIALIGN-TX_{{ version }}.tar.gz
sha256: fb3940a48a12875332752a298f619f0da62593189cd257d28932463c7cebcb8f
patches:
- patch

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

requirements:
build:
- make
- {{ compiler('c') }}
run:

test:
commands:
- dialign-tx -h | grep 'Usage'

about:
home: "https://dialign.gobics.de"
license: "LGPL-2.1-or-later"
license_family: LGPL
license_file: "LICENSE.TXT"
summary: "DIALIGN-TX is a greedy and progressive approaches for segment-based multiple sequence alignment."
doc_url: "http://dialign-tx.gobics.de"

extra:
additional-platforms:
- linux-aarch64

about:
home: https://dialign-tx.gobics.de
license: LGPL
license_file: LICENSE.TXT
summary: DIALIGN-TX is a greedy and progressive approaches for segment-based multiple sequence alignment
- osx-arm64
identifiers:
- doi:10.1093/nar/gkq442
- biotools:dialign-tx

0 comments on commit 1ab0e1b

Please sign in to comment.