summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz93@gmail.com>2024-03-19 23:59:32 -0400
committerSam James <sam@gentoo.org>2024-03-20 06:17:03 +0000
commit676077c732029914876df94a29591ae5ed6b4ba2 (patch)
tree3061e1350cfbfa0df82fa671f11e382f64217ee5
parentsci-biology/muscle: mark as LTO-unsafe, strict-aliasing unsafe (diff)
downloadgentoo-676077c732029914876df94a29591ae5ed6b4ba2.tar.gz
gentoo-676077c732029914876df94a29591ae5ed6b4ba2.tar.bz2
gentoo-676077c732029914876df94a29591ae5ed6b4ba2.zip
sci-biology/muscle: add 5.1.0
Major new release, major new build system that is majorly broken. <3 scientific code. This package has not been updated since before the import of gentoo into git, so I shall simply assume this major version is safe. From the homepage, it is a "major rewrite", "based on new algorithms", which is "much more accurate, is often faster, and scales to much larger datasets". I think that's another way of saying "same old program but with fixes". Signed-off-by: Eli Schwartz <eschwartz93@gmail.com> Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r--sci-biology/muscle/Manifest1
-rw-r--r--sci-biology/muscle/files/0001-Makefile-fix-horribleness-so-that-it-respects-build-.patch49
-rw-r--r--sci-biology/muscle/muscle-5.1.0.ebuild33
3 files changed, 83 insertions, 0 deletions
diff --git a/sci-biology/muscle/Manifest b/sci-biology/muscle/Manifest
index f1ec094f5a69..0741cc695e2f 100644
--- a/sci-biology/muscle/Manifest
+++ b/sci-biology/muscle/Manifest
@@ -1 +1,2 @@
+DIST muscle-5.1.0.tar.gz 185437 BLAKE2B b3742c37179fc8c36fb6160be4c3a8b4afa2f686bc018ec8e97a10834c1f1901b54b489faa9c365aa65c8514f378b7b5518d91a4e2fb067492e32202a06c4f64 SHA512 0cafc7ce07e5d0c261811e085e0fec8e44318a3d2604ad530ad95b370d6386143a4eeb59012e17cfc703f54bde5ee0752c3ce7fc8bb489748dbe89b2229dd6eb
DIST muscle3.8.31_src.tar.gz 515267 BLAKE2B 79a8517f7a14d8ee907104e9035e1284fcabec556544508fd9b712789759448969ce39ecbefcedac62c435dc91e109b3b5b7027120691310ffebda80ca80dd9e SHA512 2baf2aae354ae1e3f529e627be2ace86e89dd15567e1f642a625b63f08ebe3d4bd7315080c7d786d95e3eda8703545ec74af9fe83ad1523d55d00137fb7274ce
diff --git a/sci-biology/muscle/files/0001-Makefile-fix-horribleness-so-that-it-respects-build-.patch b/sci-biology/muscle/files/0001-Makefile-fix-horribleness-so-that-it-respects-build-.patch
new file mode 100644
index 000000000000..a8604239105b
--- /dev/null
+++ b/sci-biology/muscle/files/0001-Makefile-fix-horribleness-so-that-it-respects-build-.patch
@@ -0,0 +1,49 @@
+From 9ef231e4612263524a4c41ecb841cdcf0e17d011 Mon Sep 17 00:00:00 2001
+From: Eli Schwartz <eschwartz93@gmail.com>
+Date: Tue, 19 Mar 2024 23:44:43 -0400
+Subject: [PATCH] Makefile: fix horribleness so that it respects build system
+ environment
+
+Do not strip, that is portage's job. Respect $CXX, don't override use
+-O.
+---
+ Makefile | 15 ++++-----------
+ 1 file changed, 4 insertions(+), 11 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index df16673..086aba3 100644
+--- a/Makefile
++++ b/Makefile
+@@ -19,14 +19,10 @@ OS := $(shell uname)
+
+ CPPFLAGS := $(CPPFLAGS) -DNDEBUG -pthread
+
+-CXX := g++
+-ifeq ($(OS),Darwin)
+- CXX := g++-11
+-endif
++CXX ?= g++
++CXXFLAGS := $(CXXFLAGS) -fopenmp -ffast-math
+
+-CXXFLAGS := $(CXXFLAGS) -O3 -fopenmp -ffast-math
+-
+-LDFLAGS := $(LDFLAGS) -O3 -fopenmp -pthread -lpthread ${LDFLAGS2}
++LDFLAGS := $(LDFLAGS) -fopenmp -pthread -lpthread ${LDFLAGS2}
+
+ HDRS := $(shell echo *.h)
+ OBJS := $(shell echo *.cpp | sed "-es/^/$(OS)\//" | sed "-es/ / $(OS)\//g" | sed "-es/\.cpp/.o/g")
+@@ -35,10 +31,7 @@ SRCS := $(shell ls *.cpp *.h)
+ .PHONY: clean
+
+ $(OS)/muscle : gitver.txt $(OS)/ $(OBJS)
+- $(CXX) $(LDFLAGS) $(OBJS) -o $@
+-
+- # Warning: do not add -d option to strip, this is not portable
+- strip $(OS)/muscle
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) $(OBJS) -o $@
+
+ gitver.txt : $(SRCS)
+ bash ./gitver.bash
+--
+2.43.2
+
diff --git a/sci-biology/muscle/muscle-5.1.0.ebuild b/sci-biology/muscle/muscle-5.1.0.ebuild
new file mode 100644
index 000000000000..033c35b8ee1a
--- /dev/null
+++ b/sci-biology/muscle/muscle-5.1.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="Multiple sequence comparison by log-expectation"
+HOMEPAGE="https://www.drive5.com/muscle/"
+SRC_URI="https://github.com/rcedgar/muscle/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="public-domain"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+RDEPEND="!sci-libs/libmuscle"
+
+S="${WORKDIR}"/${P}/src
+
+PATCHES=(
+ "${FILESDIR}"/0001-Makefile-fix-horribleness-so-that-it-respects-build-.patch
+)
+
+src_configure() {
+ tc-export CXX
+ printf '"%s"\n' "${PV}" > gitver.txt
+}
+
+src_install() {
+ local OS=$(uname) || die
+ dobin ${OS}/muscle
+ dodoc *.txt
+}