muscle: 3.8.31 -> 5.1.0

This commit is contained in:
thyol 2022-11-22 20:00:14 +01:00
parent df6d9466c2
commit d7c8595f62
2 changed files with 13 additions and 43 deletions

View file

@ -1,36 +1,27 @@
{ lib, stdenv, fetchurl }:
{ lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
_name = "muscle";
name = "${_name}-${version}";
version = "3.8.31";
name = "muscle";
version = "5.1.0";
src = fetchurl {
url = "https://www.drive5.com/muscle/downloads${version}/${_name}${version}_src.tar.gz";
sha256 = "1b89z0x7h098g99g00nqadgjnb2r5wpi9s11b7ddffqkh9m9dia3";
src = fetchFromGitHub {
owner = "rcedgar";
repo = "${name}";
rev = "${version}";
hash = "sha256-NpnJziZXga/T5OavUt3nQ5np8kJ9CFcSmwyg4m6IJsk=";
};
patches = [
./muscle-3.8.31-no-static.patch
];
preBuild = ''
cd ./src/
patchShebangs mk
'';
sourceRoot = "source/src";
installPhase = ''
install -vD muscle $out/bin/muscle
install -m755 -D Linux/muscle $out/bin/muscle
'';
meta = with lib; {
broken = (stdenv.isLinux && stdenv.isAarch64);
description = "A multiple sequence alignment method with reduced time and space complexity";
license = licenses.publicDomain;
description = "Multiple sequence alignment with top benchmark scores scalable to thousands of sequences";
license = licenses.gpl3Plus;
homepage = "https://www.drive5.com/muscle/";
maintainers = [ maintainers.unode ];
# NOTE: Supposed to be compatible with darwin/intel & PPC but currently fails.
# Anyone with access to these platforms is welcome to give it a try
platforms = lib.platforms.linux;
};
}

View file

@ -1,21 +0,0 @@
--- a/src/mk 2010-05-02 01:15:42.000000000 +0200
+++ b/src/mk 2018-01-27 17:07:23.539092748 +0100
@@ -5,14 +5,14 @@
rm -f *.o muscle.make.stdout.txt muscle.make.stderr.txt
for CPPName in $CPPNames
do
- echo $CPPName >> /dev/tty
+ echo $CPPName
g++ $ENV_GCC_OPTS -c -O3 -msse2 -mfpmath=sse -D_FILE_OFFSET_BITS=64 -DNDEBUG=1 $CPPName.cpp -o $CPPName.o >> muscle.make.stdout.txt 2>> muscle.make.stderr.txt
done
LINK_OPTS=
-if [ `uname -s` == Linux ] ; then
- LINK_OPTS=-static
-fi
+#if [ `uname -s` == Linux ] ; then
+# LINK_OPTS=-static
+#fi
g++ $LINK_OPTS $ENV_LINK_OPTS -g -o muscle $ObjNames >> muscle.make.stdout.txt 2>> muscle.make.stderr.txt
tail muscle.make.stderr.txt