diff options
author | Michael Orlitzky <mjo@gentoo.org> | 2024-03-08 17:25:13 -0500 |
---|---|---|
committer | Michael Orlitzky <mjo@gentoo.org> | 2024-03-08 17:26:17 -0500 |
commit | da7bb1db5f5363a8688798e854f4dd181d6b4fa2 (patch) | |
tree | 4c4d38843a78351632c187af33b87beff4f2303f /sci-mathematics/plfit | |
parent | dev-lang/boogie: bump to 3.1.2 (diff) | |
download | gentoo-da7bb1db5f5363a8688798e854f4dd181d6b4fa2.tar.gz gentoo-da7bb1db5f5363a8688798e854f4dd181d6b4fa2.tar.bz2 gentoo-da7bb1db5f5363a8688798e854f4dd181d6b4fa2.zip |
sci-mathematics/plfit: add 0.9.4 to fix underlinking issue
Closes: https://bugs.gentoo.org/926433
Signed-off-by: Michael Orlitzky <mjo@gentoo.org>
Diffstat (limited to 'sci-mathematics/plfit')
-rw-r--r-- | sci-mathematics/plfit/Manifest | 1 | ||||
-rw-r--r-- | sci-mathematics/plfit/files/plfit-0.9.4-underlinking.patch | 37 | ||||
-rw-r--r-- | sci-mathematics/plfit/plfit-0.9.4.ebuild | 37 |
3 files changed, 75 insertions, 0 deletions
diff --git a/sci-mathematics/plfit/Manifest b/sci-mathematics/plfit/Manifest index 03611001ad5e..25316f83bbe3 100644 --- a/sci-mathematics/plfit/Manifest +++ b/sci-mathematics/plfit/Manifest @@ -1 +1,2 @@ DIST plfit-0.9.3.tar.gz 178880 BLAKE2B 611c4d30fa39cb05f8324670c484fd504abf2b1638602f5fede31438bf831f8aa3d7f3a5c6f2edbab377c99bf5f67763149f288581778fdd2fe9a1596a0d4a23 SHA512 6ca0fab75f607b27801576ff6752002079e11c736d0c3f6a669f20bb2869a254aa3ba124a5f6df1ad1daed25c59c8b0952838478cd42570e6d399958f0796e84 +DIST plfit-0.9.4.tar.gz 180432 BLAKE2B 9e7c7f6c4aaf014d9fbe7e2319e4294ec96753c10d9463436a191e7c17910b7bfd7a701b13c179b6125cb7f398f73951277272a4e40ca2ed841aed07c30b8cc1 SHA512 39cb644de20645b35b8ce6f95bb074276314f5fdc755e0d7eba8e69d1f0d65b784cd755b7a4481e933f8863c30f6b2957e7dba45fc9a695cef14ad4fef729885 diff --git a/sci-mathematics/plfit/files/plfit-0.9.4-underlinking.patch b/sci-mathematics/plfit/files/plfit-0.9.4-underlinking.patch new file mode 100644 index 000000000000..5574756e35f4 --- /dev/null +++ b/sci-mathematics/plfit/files/plfit-0.9.4-underlinking.patch @@ -0,0 +1,37 @@ +From 0559e4683ec72d7608560414d8d6797f83c74ea7 Mon Sep 17 00:00:00 2001 +From: Michael Orlitzky <michael@orlitzky.com> +Date: Fri, 8 Mar 2024 17:17:45 -0500 +Subject: [PATCH] src/CMakeLists.txt: link libplfit against $MATH_LIBRARY + +The libplfit library makes use of several math functions (exp, log, +...) , and so should be linked to libm directly when libm is required +for those functions. If it is not, then compilation may succeed +leaving the resulting library underlinked. This can lead to errors +like, + + test_discrete: symbol lookup error: .../src/libplfit.so.0: undefined + symbol: log + +when linking with lld and LDFLAGS="Wl,--as-needed". (The error above +comes from plfit's own test suite.) + +Gentoo-bug: https://bugs.gentoo.org/926433 +--- + src/CMakeLists.txt | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index fbfb3e8..3dd50fb 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -13,6 +13,7 @@ set(PLFIT_CORE_SRCS error.c gss.c kolmogorov.c lbfgs.c mt.c platform.c plfit.c o + add_library(plfit ${PLFIT_CORE_SRCS}) + target_include_directories(plfit PUBLIC ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}) + set_target_properties(plfit PROPERTIES SOVERSION 0) ++target_link_libraries(plfit ${MATH_LIBRARY}) + + if(PLFIT_USE_OPENMP AND OPENMP_FOUND) + target_link_libraries(plfit OpenMP::OpenMP_C) +-- +2.43.0 + diff --git a/sci-mathematics/plfit/plfit-0.9.4.ebuild b/sci-mathematics/plfit/plfit-0.9.4.ebuild new file mode 100644 index 000000000000..a01a4159554a --- /dev/null +++ b/sci-mathematics/plfit/plfit-0.9.4.ebuild @@ -0,0 +1,37 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="Fit power-law distributions to empirical data" +HOMEPAGE="https://github.com/ntamas/plfit" +SRC_URI="https://github.com/ntamas/${PN}/archive/refs/tags/${PV}.tar.gz + -> ${P}.tar.gz" +# plfit is gpl-2 and its source headers say "or later." The upstream +# doc/ directory contains MIT and BSD licenses for two components. +LICENSE="BSD GPL-2+ MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="cpu_flags_x86_sse cpu_flags_x86_sse2" + +PATCHES=( + "${FILESDIR}/${P}-underlinking.patch" +) + +DOCS=( CHANGELOG.md README.rst doc/THANKS ) + +src_configure() { + local mycmakeargs=( + -DPLFIT_COMPILE_PYTHON_MODULE=OFF + -DPLFIT_USE_SSE=OFF + -DPLFIT_USE_OPENMP=OFF + ) + if use cpu_flags_x86_sse || use cpu_flags_x86_sse2; then + # plfit chooses which to use at compile time based on the + # constants __SSE__ and __SSE2__. + mycmakeargs+=( -DPLFIT_USE_SSE=ON ) + fi + cmake_src_configure +} |