summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Ammerlaan <andrewammerlaan@gentoo.org>2022-08-26 11:10:20 +0200
committerAndrew Ammerlaan <andrewammerlaan@gentoo.org>2022-08-26 11:11:29 +0200
commit7ef0bccddedc1d4299db077b8e0633f72ca64f94 (patch)
tree228e62272f4d3d2ee299d73a9dd6af2f76321136 /sci-mathematics
parentsci-mathematics/sha1-polyml: Update package metadata (diff)
downloadgentoo-7ef0bccddedc1d4299db077b8e0633f72ca64f94.tar.gz
gentoo-7ef0bccddedc1d4299db077b8e0633f72ca64f94.tar.bz2
gentoo-7ef0bccddedc1d4299db077b8e0633f72ca64f94.zip
sci-mathematics/sha1-polyml: add 5.9
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Diffstat (limited to 'sci-mathematics')
-rw-r--r--sci-mathematics/sha1-polyml/Manifest1
-rw-r--r--sci-mathematics/sha1-polyml/sha1-polyml-5.9.ebuild56
2 files changed, 57 insertions, 0 deletions
diff --git a/sci-mathematics/sha1-polyml/Manifest b/sci-mathematics/sha1-polyml/Manifest
index 1c96d60f6037..a52585dc8b64 100644
--- a/sci-mathematics/sha1-polyml/Manifest
+++ b/sci-mathematics/sha1-polyml/Manifest
@@ -1 +1,2 @@
DIST polyml-5.6-1.tar.gz 22041657 BLAKE2B c097dda273b12dfe013706e5fa313f210f1f0bf6b32766db6e459ce1bca46f93504baef3d7644922c60d119431d659cbd69d8cd273fcc94609eadff058d3cb9b SHA512 3107f4a5b17283dc3873b0ecf7eb1c607c42e14e859b50345b666f19412a2592e359ea29f03e56d390491e9104a71e0bf80eb39884f51d8724b37f8f935fa7d2
+DIST polyml-5.9.tar.gz 30801508 BLAKE2B d9a12b4a9734d2d663947e8699e6813b9c5f0a85f7527ebd73d578559ed4432a51ed8542733213c137c8235a2f6eebc28af77570c42234220d2993169340fd16 SHA512 da03c0759d633814b860fdc4051a010882b187444c0de1375f90e02ce26cb5e09cbbb48445da9f7d84d8af92352efcd9b509e863a915517e90e3fa6147bcbd0a
diff --git a/sci-mathematics/sha1-polyml/sha1-polyml-5.9.ebuild b/sci-mathematics/sha1-polyml/sha1-polyml-5.9.ebuild
new file mode 100644
index 000000000000..3ba8223e0408
--- /dev/null
+++ b/sci-mathematics/sha1-polyml/sha1-polyml-5.9.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+MY_PN="polyml"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="implementation of SHA1 is taken from the GNU coreutils package"
+HOMEPAGE="https://isabelle.in.tum.de/"
+SRC_URI="https://isabelle.in.tum.de/components/${MY_P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+S="${WORKDIR}/${MY_P}/sha1"
+
+# sci-mathematics/isabelle requires sci-mathematics/sha1-polyml, to avoid
+# this warning:
+# ### load_lib </usr/bin/libsha1.so> : /usr/bin/libsha1.so: cannot open shared
+# object file: No such file or directory
+# ### Using slow ML implementation of SHA1.digest
+# sci-mathematics/sha1-polyml supplies the library libsha1.so. Which
+# is the implementation of SHA1 taken from the GNU coreutils package
+# as described in the sci-mathematics/sha1-polyml README. Isabelle
+# builds libsha1.so in the contrib/polyml/$ML_PLATFORM directory.
+# isabelle dynamically loads libsha1.so as a plugin. The Isabelle-2012
+# linux binary bundle places libsha1.so in the contrib/polyml directory, which
+# is referred to as ML_HOME in the Isabelle Pure/General/sha1_polyml.ML source file.
+# ML_HOME is /usr/bin on Gentoo, and we want isabelle to depend o sha1-polyml.
+# For these reasons isabelle is patched to load it from
+# /usr/$(get_libdir)/sha1-polyml/libsha1.so
+
+src_compile() {
+ $(tc-getCC) \
+ ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} -I. -fPIC -shared \
+ -o libsha1.so sha1.c || die "compile libsha1.so failed"
+ $(tc-getCC) \
+ ${CPPFLAGS} ${CFLAGS} ${LDFLAGS} -I. \
+ -o test_sha1 test_sha1.c -ldl || die "compile test_sha1 failed"
+}
+
+src_test() {
+ ./test_sha1 ./libsha1.so || die "tests failed"
+}
+
+src_install() {
+ dodoc README
+
+ local ld="${EPREFIX}/usr/$(get_libdir)/${PN}"
+ exeinto "${ld}"
+ doexe libsha1.so
+}