diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2026-05-06 19:40:37 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2026-05-06 19:40:37 +0000 |
| commit | 6c2c44c149dc52d1f72e760c171f73fa33c4ee45 (patch) | |
| tree | 3773e2585fde44992b91653203cbd021b1d82e2e /sci-libs | |
| parent | 5a1e2f874db05baac26359a99597859d0f575014 (diff) | |
| download | baldeagleos-repo-6c2c44c149dc52d1f72e760c171f73fa33c4ee45.tar.gz baldeagleos-repo-6c2c44c149dc52d1f72e760c171f73fa33c4ee45.tar.xz baldeagleos-repo-6c2c44c149dc52d1f72e760c171f73fa33c4ee45.zip | |
Adding metadata
Diffstat (limited to 'sci-libs')
6 files changed, 204 insertions, 77 deletions
diff --git a/sci-libs/libsemigroups/Manifest b/sci-libs/libsemigroups/Manifest index 0c7b984a221e..1390a2c5d18c 100644 --- a/sci-libs/libsemigroups/Manifest +++ b/sci-libs/libsemigroups/Manifest @@ -1,2 +1 @@ -DIST libsemigroups-2.7.4.tar.gz 8682905 BLAKE2B afe04ad3de2e7fde508c16aebad5e435f66332aff5a1b005774065a0f91166942c237ff0beb6c6878567a9c5446ea546534e1d4dc27b4cf33eccce4d93ea9378 SHA512 c1af30bef6ad3b2a6d49c0eff5d604b72f7b2dabce482382640a8eca0bdfc6a1be7474c21f5b75214496191590bee4f379ba54159cc2b6d09ae90bb3444f6d23 -DIST libsemigroups-3.0.3.tar.gz 12155044 BLAKE2B 32b8ad3485b44309712bb9aad26e9aa9e867bdc5910552f63af615a50c47834e49bad3282590917eb95f310f2d23e3d6b8cb3613f90c5050b7b530e935bf75f2 SHA512 5e3a9503bf7151c29aeff2a908219932796243acec2f4b91a1b3fa6e449e9cfbdfc6783c4ba46280ce1896b7c6410f13faf4db4f445bfe45d6538d1a68f2bef1 +DIST libsemigroups-3.5.5.tar.gz 13821323 BLAKE2B 1184d2239f900ea1e90341f66be0cbd27117f9c02c471a1633dae98c8406aafd0d297d76f80e6b5e690173930124350fe989503e32d6aa8cb86a89c00e4aac88 SHA512 946c054508311d16dd94c58c49739bd18fea3a5f289dcdf273ef676125eabc6d14f5c4de40e619e5ab155fa62ed385090c9f26aee2377cf03e03fadb41df6e95 diff --git a/sci-libs/libsemigroups/files/libsemigroups-3.5.5-unbundle-catch.patch b/sci-libs/libsemigroups/files/libsemigroups-3.5.5-unbundle-catch.patch new file mode 100644 index 000000000000..55d7169007e2 --- /dev/null +++ b/sci-libs/libsemigroups/files/libsemigroups-3.5.5-unbundle-catch.patch @@ -0,0 +1,40 @@ +This doesn't fully unbundle it, you also need to use sed to change all +of the + + test_foo_SOURCES += third_party/Catch2-3.14.0/catch_amalgamated_patch.cpp + +lines to + + test_foo_LDADD = $(LDADD) -lCatch2 -lCatch2Main + +diff --git a/Makefile.am b/Makefile.am +index 8141e769..550a25b4 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -4,7 +4,6 @@ + + AM_CXXFLAGS = -I$(abs_top_srcdir)/include + AM_CXXFLAGS += -I$(abs_top_srcdir)/third_party # for backward-cpp +-AM_CXXFLAGS += -I$(abs_top_srcdir)/third_party/Catch2-3.14.0 + AM_CXXFLAGS += -I$(abs_top_srcdir)/third_party/HPCombi-1.1.2/include + AM_CXXFLAGS += -I$(abs_top_srcdir)/third_party/HPCombi-1.1.2/third_party + AM_CXXFLAGS += -I$(abs_top_srcdir)/third_party/rx-ranges/include +@@ -216,9 +215,6 @@ detailinclude_HEADERS += include/libsemigroups/detail/word-graph-with-sources.hp + detailinclude_HEADERS += include/libsemigroups/detail/word-graph-with-sources.tpp + detailinclude_HEADERS += include/libsemigroups/detail/word-iterators.hpp + +-catch2includedir = $(includedir)/libsemigroups/Catch2-3.14.0/ +-catch2include_HEADERS = third_party/Catch2-3.14.0/catch_amalgamated.hpp +- + if USE_BUNDLED_MAGIC_ENUM + magicenumincludedir = $(includedir)/libsemigroups/magic_enum + magicenuminclude_HEADERS = third_party/magic_enum-0.9.7/include/magic_enum/magic_enum.hpp +@@ -1128,8 +1124,6 @@ EXTRA_DIST += hpcombi.mk.in + EXTRA_DIST += tests/bmat-data.hpp + EXTRA_DIST += tests/test-main.hpp + EXTRA_DIST += tests/word-graph-test-common.hpp +-EXTRA_DIST += third_party/Catch2-3.14.0/catch_amalgamated.cpp +-EXTRA_DIST += third_party/Catch2-3.14.0/catch_amalgamated.hpp + EXTRA_DIST += third_party/HPCombi-1.1.2/HPCOMBI_VERSION + EXTRA_DIST += third_party/HPCombi-1.1.2/LICENSE + EXTRA_DIST += third_party/HPCombi-1.1.2/README.md diff --git a/sci-libs/libsemigroups/files/libsemigroups-3.5.5-unbundle-magic_enum.patch b/sci-libs/libsemigroups/files/libsemigroups-3.5.5-unbundle-magic_enum.patch new file mode 100644 index 000000000000..75405693c4ac --- /dev/null +++ b/sci-libs/libsemigroups/files/libsemigroups-3.5.5-unbundle-magic_enum.patch @@ -0,0 +1,90 @@ +https://github.com/libsemigroups/libsemigroups/pull/969 + +diff --git a/Makefile.am b/Makefile.am +index 613b204e..f308f1c8 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -8,11 +8,14 @@ AM_CXXFLAGS += -I$(abs_top_srcdir)/third_party/Catch2-3.14.0 + AM_CXXFLAGS += -I$(abs_top_srcdir)/third_party/HPCombi-1.1.2/include + AM_CXXFLAGS += -I$(abs_top_srcdir)/third_party/HPCombi-1.1.2/third_party + AM_CXXFLAGS += -I$(abs_top_srcdir)/third_party/rx-ranges/include +-AM_CXXFLAGS += -I$(abs_top_srcdir)/third_party/magic_enum-0.9.7/include + AM_CXXFLAGS += -std=gnu++17 -O3 -Wall -Wextra + AM_CXXFLAGS += $(WARNING_CXXFLAGS) + AM_CXXFLAGS += $(FMT_CFLAGS) + AM_CXXFLAGS += $(EIGEN3_CFLAGS) ++AM_CXXFLAGS += $(MAGICENUM_CFLAGS) ++if USE_BUNDLED_MAGIC_ENUM ++AM_CXXFLAGS += -I$(abs_top_srcdir)/third_party/magic_enum-0.9.7/include ++endif + if LIBSEMIGROUPS_HPCOMBI_ENABLED + AM_CXXFLAGS += $(HPCOMBI_CXXFLAGS) + endif +@@ -217,6 +220,7 @@ detailinclude_HEADERS += include/libsemigroups/detail/word-iterators.hpp + catch2includedir = $(includedir)/libsemigroups/Catch2-3.14.0/ + catch2include_HEADERS = third_party/Catch2-3.14.0/catch_amalgamated.hpp + ++if USE_BUNDLED_MAGIC_ENUM + magicenumincludedir = $(includedir)/libsemigroups/magic_enum + magicenuminclude_HEADERS = third_party/magic_enum-0.9.7/include/magic_enum/magic_enum.hpp + magicenuminclude_HEADERS += third_party/magic_enum-0.9.7/include/magic_enum/magic_enum_all.hpp +@@ -227,6 +231,7 @@ magicenuminclude_HEADERS += third_party/magic_enum-0.9.7/include/magic_enum/magi + magicenuminclude_HEADERS += third_party/magic_enum-0.9.7/include/magic_enum/magic_enum_iostream.hpp + magicenuminclude_HEADERS += third_party/magic_enum-0.9.7/include/magic_enum/magic_enum_switch.hpp + magicenuminclude_HEADERS += third_party/magic_enum-0.9.7/include/magic_enum/magic_enum_utility.hpp ++endif + + rxrangesincludedir = $(includedir)/libsemigroups/rx + rxrangesinclude_HEADERS = third_party/rx-ranges/include/rx/ranges.hpp +diff --git a/configure.ac b/configure.ac +index 737103b5..92d9eba7 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -135,6 +135,9 @@ AX_CHECK_FMT() + # disabled altogether + AX_CHECK_EIGEN() + ++# Check for an external magic_enum ++AX_CHECK_MAGIC_ENUM() ++ + dnl Output configured files + + dnl compiler builtins +diff --git a/m4/ax_check_magic_enum.m4 b/m4/ax_check_magic_enum.m4 +new file mode 100644 +index 00000000..b364bb60 +--- /dev/null ++++ b/m4/ax_check_magic_enum.m4 +@@ -0,0 +1,32 @@ ++# handle magic_enum checks ++# ++AC_DEFUN([AX_CHECK_MAGIC_ENUM], [ ++ AC_ARG_WITH( ++ [external-magic-enum], ++ [AS_HELP_STRING([--with-external-magic-enum], [use external magic_enum (default: no)])], ++ [], ++ [with_external_magic_enum=no] ++ ) ++ AC_MSG_CHECKING([whether to use external magic_enum]) ++ AC_MSG_RESULT([$with_external_magic_enum]) ++ ++ AS_IF([test "x$with_external_magic_enum" = xyes], [ ++ # Check if we can use magic_enum from the system. If not, error. ++ # The version constraint is to ensure that the headers relative to ++ # $includedir are magic_enum/foo.hpp. In 0.9.6, the magic_enum/ ++ # prefix was not used. ++ m4_ifdef([PKG_CHECK_MODULES], [ ++ PKG_CHECK_MODULES(MAGICENUM, [magic_enum >= 0.9.7], [ ++ AC_MSG_NOTICE([external magic_enum will be used]) ++ ], [ ++ AC_MSG_ERROR([external magic_enum not found]) ++ ]) ++ ], [ ++ AC_MSG_ERROR(m4_normalize([ ++ cannot use flag --with-external-magic-enum, the libsemigroups configure file ++ was created on a system without m4 macros for pkg-config available... ++ ])) ++ ]) ++ ]) ++ AM_CONDITIONAL([USE_BUNDLED_MAGIC_ENUM], [test "x$with_external_magic_enum" != xyes]) ++]) diff --git a/sci-libs/libsemigroups/libsemigroups-2.7.4.ebuild b/sci-libs/libsemigroups/libsemigroups-2.7.4.ebuild deleted file mode 100644 index 729023d95c4a..000000000000 --- a/sci-libs/libsemigroups/libsemigroups-2.7.4.ebuild +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 2019-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="C++ library for semigroups and monoids" -HOMEPAGE="https://github.com/libsemigroups/libsemigroups" -SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz" - -# Source headers have "or any later version" -LICENSE="GPL-3+" -SLOT="0/2" -KEYWORDS="~amd64 ~riscv ~x86" -IUSE="cpu_flags_x86_popcnt" - -src_configure() { - econf \ - $(use_enable cpu_flags_x86_popcnt popcnt) \ - --disable-eigen \ - --disable-hpcombi \ - --disable-fmt -} - -src_install() { - default - find "${ED}" -type f -name '*.la' -delete || die -} diff --git a/sci-libs/libsemigroups/libsemigroups-3.0.3.ebuild b/sci-libs/libsemigroups/libsemigroups-3.0.3.ebuild deleted file mode 100644 index c463836802d5..000000000000 --- a/sci-libs/libsemigroups/libsemigroups-3.0.3.ebuild +++ /dev/null @@ -1,48 +0,0 @@ -# Copyright 2019-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DESCRIPTION="C++ library for semigroups and monoids" -HOMEPAGE="https://github.com/libsemigroups/libsemigroups" -SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz" - -# Source headers have "or any later version" -LICENSE="GPL-3+" -SLOT="0/3" -KEYWORDS="~amd64 ~riscv ~x86" -IUSE="cpu_flags_x86_popcnt eigen" - -# These two deps are packaged, but both are bundled in the third_party -# directory, and the build system hard-codes the location to them: -# -# * dev-cpp/catch -# * dev-cpp/magic_enum -# -# Eigen is a set of headers, not a shared library. -BDEPEND="eigen? ( dev-cpp/eigen )" -DEPEND="dev-libs/libfmt" -RDEPEND="${DEPEND}" - -src_prepare() { - # Remove bundled deps that we should not be using. - rm -rf third_party/fmt-* \ - third_party/eigen-* \ - third_party/HPCombi || die - - default -} - -src_configure() { - econf \ - $(use_enable cpu_flags_x86_popcnt popcnt) \ - $(use_enable eigen) \ - $(use_with eigen external-eigen) \ - --disable-hpcombi \ - --with-external-fmt -} - -src_install() { - default - find "${ED}" -type f -name '*.la' -delete || die -} diff --git a/sci-libs/libsemigroups/libsemigroups-3.5.5.ebuild b/sci-libs/libsemigroups/libsemigroups-3.5.5.ebuild new file mode 100644 index 000000000000..e2ab99b8d397 --- /dev/null +++ b/sci-libs/libsemigroups/libsemigroups-3.5.5.ebuild @@ -0,0 +1,73 @@ +# Copyright 2019-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=9 + +inherit autotools + +DESCRIPTION="C++ library for semigroups and monoids" +HOMEPAGE="https://github.com/libsemigroups/libsemigroups" +SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz" + +# Source headers have "or any later version" +LICENSE="GPL-3+" +SLOT="0/3" +KEYWORDS="~amd64 ~riscv ~x86" +IUSE="cpu_flags_x86_popcnt eigen test" + +RESTRICT="!test? ( test )" + +# eigen, magic_enum, and catch are header-only +BDEPEND=" + dev-cpp/magic_enum + eigen? ( >=dev-cpp/eigen-5.0.1 ) + test? ( =dev-cpp/catch-3* )" +DEPEND="dev-libs/libfmt" + +#...but magic_enum.hpp is included in one of the headers that +# libsemigroups installs, so it needs to be installed too +RDEPEND="${DEPEND} + dev-cpp/magic_enum" + +PATCHES=( + "${FILESDIR}/libsemigroups-3.5.5-unbundle-magic_enum.patch" + "${FILESDIR}/libsemigroups-3.5.5-unbundle-catch.patch" +) + +src_prepare() { + default + + # Remove the bundled Catch2 and magic_enum in concert with two + # patches. Unbundling magic_enum is pretty easy, the patch adds a + # ./configure flag. Unbundlng Catch2 is a little harder; first we + # have to update the include paths, and then we have to ensure that + # the tests link to the shared library on the system. + sed -e 's~".*catch_amalgamated.hpp"~<catch2/catch_all.hpp>~g' \ + -i tests/test*.cpp || die + local CATCH_LIBS='$(LDADD) -lCatch2 -lCatch2Main' + sed -e "s~_SOURCES .*_party/Catch2.*~_LDADD = $CATCH_LIBS~g" \ + -i Makefile.am || die + rm -r third_party/{Catch2-3.14.0,magic_enum-0.9.7} || die + + # Unbundle these normally. + rm -r third_party/{backward-cpp,eigen-5.0.1,fmt-11.1.4,HPCombi-1.1.2} \ + || die + + eautoreconf +} + +src_configure() { + econf \ + $(use_enable cpu_flags_x86_popcnt popcnt) \ + $(use_enable eigen) \ + $(use_with eigen external-eigen) \ + --disable-backward \ + --disable-hpcombi \ + --with-external-fmt \ + --with-external-magic-enum +} + +src_install() { + default + find "${ED}" -type f -name '*.la' -delete || die +} |
