sci-mathematics/clingo: new package, add 5.5.1

Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
Alessandro Barbieri 2022-04-28 07:37:18 +02:00
parent 2cf7a99ed1
commit 3820d604d8
No known key found for this signature in database
GPG Key ID: 4E4140121372C837
4 changed files with 152 additions and 0 deletions

View File

@ -0,0 +1 @@
DIST clingo-5.5.1.tar.gz 3031728 BLAKE2B 5d938f5974184b4dff63a8b6ae746059c8a3682c2b7ca3dfbecc020462a656608de3845b83fc1c55fe74be33d7641d4d3bc961026679c7a6b264481bbad81c89 SHA512 b142a869d25a188d9ecf4c62940bc73328dacd249dbcdf611c0b6fd7a15b6bb15357cef3ce9b52b863c51f2a79efd65ae405957fc6074023b0c48807d27c0e03

View File

@ -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
}

View File

@ -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)

View File

@ -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>lssndrbarbieri@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>