commit: 3820d604d8ff4840b528a9ec38406ffcdf87d1be Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> AuthorDate: Thu Apr 28 05:37:18 2022 +0000 Commit: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> CommitDate: Thu Apr 28 05:57:31 2022 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=3820d604
sci-mathematics/clingo: new package, add 5.5.1 Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com> sci-mathematics/clingo/Manifest | 1 + sci-mathematics/clingo/clingo-5.5.1.ebuild | 79 ++++++++++++++++++++++ .../clingo/files/clingo-5.5.1-system-clasp.patch | 56 +++++++++++++++ sci-mathematics/clingo/metadata.xml | 16 +++++ 4 files changed, 152 insertions(+) diff --git a/sci-mathematics/clingo/Manifest b/sci-mathematics/clingo/Manifest new file mode 100644 index 000000000..f65222b9f --- /dev/null +++ b/sci-mathematics/clingo/Manifest @@ -0,0 +1 @@ +DIST clingo-5.5.1.tar.gz 3031728 BLAKE2B 5d938f5974184b4dff63a8b6ae746059c8a3682c2b7ca3dfbecc020462a656608de3845b83fc1c55fe74be33d7641d4d3bc961026679c7a6b264481bbad81c89 SHA512 b142a869d25a188d9ecf4c62940bc73328dacd249dbcdf611c0b6fd7a15b6bb15357cef3ce9b52b863c51f2a79efd65ae405957fc6074023b0c48807d27c0e03 diff --git a/sci-mathematics/clingo/clingo-5.5.1.ebuild b/sci-mathematics/clingo/clingo-5.5.1.ebuild new file mode 100644 index 000000000..f49bad27d --- /dev/null +++ b/sci-mathematics/clingo/clingo-5.5.1.ebuild @@ -0,0 +1,79 @@ +# Copyright 1999-2022 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +LUA_COMPAT=( lua5-{3..4} ) +PYTHON_COMPAT=( python3_{8..10} ) # IDK how to pass pypy3 + +inherit cmake lua-single python-single-r1 toolchain-funcs + +DESCRIPTION="Integrated grounder and solver for answer set logic programs" +HOMEPAGE=" + https://github.com/potassco/clingo + https://potassco.org/clingo +" +SRC_URI="https://github.com/potassco/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" + +IUSE="examples lua python test +tools" + +RDEPEND=" + sci-mathematics/clasp:=[tools] + sci-mathematics/libpotassco:= + lua? ( ${LUA_DEPS} ) + python? ( ${PYTHON_DEPS} ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + >=dev-util/re2c-0.13.5 + >=sys-devel/bison-2.5 + virtual/pkgconfig +" + +PATCHES=( "${FILESDIR}/${P}-system-clasp.patch" ) +RESTRICT="!test? ( test )" +REQUIRED_USE=" + lua? ( ${LUA_REQUIRED_USE} ) + python? ( ${PYTHON_REQUIRED_USE} ) +" + +pkg_setup() { + use lua && lua-single_pkg_setup + use python && python-single-r1_pkg_setup +} + +src_prepare() { + rm -r clasp || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DCLINGO_BUILD_APPS=$(usex tools) + -DCLINGO_BUILD_EXAMPLES=$(usex examples) + -DCLINGO_BUILD_TESTS=$(usex test) + -DCLINGO_BUILD_WITH_LUA=$(usex lua) + -DCLINGO_BUILD_WITH_PYTHON=$(usex python) + + -DCLINGO_BUILD_STATIC=OFF + -DCLINGO_BUILD_WEB=OFF + -DCLINGO_CMAKE_AR="$(tc-getAR)" + -DCLINGO_CMAKE_RANLIB="$(tc-getRANLIB)" + -DCLINGO_INSTALL_LIB=ON + -DCLINGO_USE_LIB=OFF + ) + if use lua; then + mycmakeargs+=( "-DCLINGO_LUA_VERSION:LIST=$(lua_get_version);EXACT" ) + mycmakeargs+=( "-DLUACLINGO_INSTALL_DIR=$(lua_get_cmod_dir)" ) + fi + if use python; then + local pyversion="${EPYTHON/python/}" + mycmakeargs+=( "-DCLINGO_PYTHON_VERSION:LIST=${pyversion};EXACT" ) + mycmakeargs+=( "-DPYCLINGO_INSTALL_DIR=$(python_get_sitedir)" ) + fi + cmake_src_configure +} diff --git a/sci-mathematics/clingo/files/clingo-5.5.1-system-clasp.patch b/sci-mathematics/clingo/files/clingo-5.5.1-system-clasp.patch new file mode 100644 index 000000000..0eadf4fda --- /dev/null +++ b/sci-mathematics/clingo/files/clingo-5.5.1-system-clasp.patch @@ -0,0 +1,56 @@ +diff '--color=auto' -ru /var/tmp/portage/sci-mathematics/clingo-5.5.1/work/clingo-5.5.1/CMakeLists.txt clingo-5.5.1/CMakeLists.txt +--- /var/tmp/portage/sci-mathematics/clingo-5.5.1/work/clingo-5.5.1/CMakeLists.txt 2022-04-28 06:09:26.673973864 +0200 ++++ clingo-5.5.1/CMakeLists.txt 2022-04-28 06:27:47.090303346 +0200 +@@ -232,20 +232,15 @@ + + enable_testing() + +-# NOTE: assumes that submodule has been initialized +-set(CLASP_BUILD_APP ${CLINGO_BUILD_APPS} CACHE BOOL "") + if (CLINGO_USE_LIB) + set(clingo_library_targets) + add_library(libclingo INTERFACE IMPORTED) + set_property(TARGET libclingo PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${CLINGO_SOURCE_DIR}/libclingo") + set_property(TARGET libclingo PROPERTY INTERFACE_LINK_LIBRARIES "clingo") + else() ++ find_package(Potassco REQUIRED) ++ find_package(Clasp REQUIRED) + set(clingo_library_targets libgringo libpotassco libclasp libreify) +- set(CLASP_USE_LOCAL_LIB_POTASSCO ON CACHE BOOL "" FORCE) +- if (NOT CLINGO_BUILD_SHARED AND CLINGO_INSTALL_LIB) +- set(CLASP_INSTALL_LIB ${CLINGO_INSTALL_LIB} CACHE BOOL "" FORCE) +- endif() +- add_subdirectory(clasp) + add_subdirectory(libreify) + add_subdirectory(libgringo) + add_subdirectory(libclingo) +diff '--color=auto' -ru /var/tmp/portage/sci-mathematics/clingo-5.5.1/work/clingo-5.5.1/libclingo/CMakeLists.txt clingo-5.5.1/libclingo/CMakeLists.txt +--- /var/tmp/portage/sci-mathematics/clingo-5.5.1/work/clingo-5.5.1/libclingo/CMakeLists.txt 2022-04-28 06:09:26.590972375 +0200 ++++ clingo-5.5.1/libclingo/CMakeLists.txt 2022-04-28 07:12:59.047212489 +0200 +@@ -37,9 +37,6 @@ + ${source-group}) + # ]]] + +-list(APPEND header "${CLASP_SOURCE_DIR}/app/clasp_app.h") +-list(APPEND source "${CLASP_SOURCE_DIR}/app/clasp_app.cpp") +- + set(clingo_public_scope_ PUBLIC) + set(clingo_private_scope_ PRIVATE) + if (CLINGO_BUILD_SHARED) +@@ -56,13 +53,14 @@ + + add_library(libclingo ${clingo_lib_type}) + target_sources(libclingo ${clingo_private_scope_} ${header} ${source}) +-target_link_libraries(libclingo ${clingo_private_scope_} libgringo libclasp) ++target_link_libraries(libclingo ${clingo_private_scope_} libgringo libclasp -lclasp_app) + target_include_directories(libclingo + ${clingo_public_scope_} + "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>" + "$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>" + ${clingo_private_scope_} +- "$<BUILD_INTERFACE:${CLASP_SOURCE_DIR}/app>") ++ "/usr/include/clasp/app" ++) + target_compile_definitions(libclingo ${clingo_private_scope_} CLINGO_BUILD_LIBRARY) + + if (NOT CLINGO_BUILD_SHARED) diff --git a/sci-mathematics/clingo/metadata.xml b/sci-mathematics/clingo/metadata.xml new file mode 100644 index 000000000..f20bd00a3 --- /dev/null +++ b/sci-mathematics/clingo/metadata.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <description>co-maintainers welcome</description> + <email>lssndrbarbi...@gmail.com</email> + <name>Alessandro Barbieri</name> + </maintainer> + <use> + <flag name="tools">whether or not to build the clingo tool</flag> + </use> + <upstream> + <bugs-to>https://github.com/potassco/clingo/issues</bugs-to> + <remote-id type="github">potassco/clingo</remote-id> + </upstream> +</pkgmetadata>