diff options
author | Andrew Ammerlaan <andrewammerlaan@gentoo.org> | 2023-11-06 12:53:59 +0100 |
---|---|---|
committer | Andrew Ammerlaan <andrewammerlaan@gentoo.org> | 2023-11-06 12:54:12 +0100 |
commit | b8f53371b9ad8919b2b78d2abf7b713a214726b3 (patch) | |
tree | 0ff20f77e1bd7fc76d81618e7fa35e1971279f5f /sci-mathematics | |
parent | dev-python/dirty-equals: Remove the dep on <dev-python/pydantic-2 (diff) | |
download | gentoo-b8f53371b9ad8919b2b78d2abf7b713a214726b3.tar.gz gentoo-b8f53371b9ad8919b2b78d2abf7b713a214726b3.tar.bz2 gentoo-b8f53371b9ad8919b2b78d2abf7b713a214726b3.zip |
sci-mathematics/z3: add 4.12.2
Closes: https://bugs.gentoo.org/916710
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Diffstat (limited to 'sci-mathematics')
-rw-r--r-- | sci-mathematics/z3/Manifest | 1 | ||||
-rw-r--r-- | sci-mathematics/z3/files/z3-4.12.2-gcc-13.patch | 12 | ||||
-rw-r--r-- | sci-mathematics/z3/z3-4.12.2.ebuild | 112 |
3 files changed, 125 insertions, 0 deletions
diff --git a/sci-mathematics/z3/Manifest b/sci-mathematics/z3/Manifest index 1a076bbe3a11..6092b10eed66 100644 --- a/sci-mathematics/z3/Manifest +++ b/sci-mathematics/z3/Manifest @@ -1 +1,2 @@ DIST z3-4.12.1.tar.gz 5470095 BLAKE2B 8840b2c3bea5ae409f52bd2db931f7c0d88f86e154c2bf7d1bed34a0c7b72a5596a20467259f37ad9cae3c7e24d2e04ddebe8dd539a2e1a1ed6445d59b6cef28 SHA512 031fba9cc000a8da0025f95fa3f1c7519071d1b7775b377ff3192c505bb4c7e3d267da246c9ae68c940224e055a3c30571d2c0d7fbb042ec9a3d5849543a385c +DIST z3-4.12.2.tar.gz 5401038 BLAKE2B e83bc4067360888da1be20dffbbd4b060118080e1f8a1b0424c169ad1aaaccf5ab645960418db7ce544829c7831da90edb0e38003d7a0261df699c9bd69ab1f0 SHA512 375477cbbc9837b44e752c89916409d07bf6a73830b52878aab4f376f08b37dd5ab485da225744d394ab15f2a7e1014edc3be5eb9962934c440a8d55259317e2 diff --git a/sci-mathematics/z3/files/z3-4.12.2-gcc-13.patch b/sci-mathematics/z3/files/z3-4.12.2-gcc-13.patch new file mode 100644 index 000000000000..74f8abed1e3b --- /dev/null +++ b/sci-mathematics/z3/files/z3-4.12.2-gcc-13.patch @@ -0,0 +1,12 @@ +diff --git a/src/util/tptr.h b/src/util/tptr.h +index 6213b2efa40..2a35af5353d 100644 +--- a/src/util/tptr.h ++++ b/src/util/tptr.h +@@ -20,6 +20,7 @@ Revision History: + #pragma once + + #include "util/machine.h" ++#include <cstdint> + + #define TAG_SHIFT PTR_ALIGNMENT + #define ALIGNMENT_VALUE (1 << PTR_ALIGNMENT) diff --git a/sci-mathematics/z3/z3-4.12.2.ebuild b/sci-mathematics/z3/z3-4.12.2.ebuild new file mode 100644 index 000000000000..d1cb32391790 --- /dev/null +++ b/sci-mathematics/z3/z3-4.12.2.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..12} ) + +inherit cmake-multilib java-pkg-opt-2 python-single-r1 + +DESCRIPTION="An efficient theorem prover" +HOMEPAGE="https://github.com/Z3Prover/z3/" +SRC_URI="https://github.com/Z3Prover/z3/archive/${P}.tar.gz" +S=${WORKDIR}/z3-${P} + +SLOT="0/$(ver_cut 1-2)" +LICENSE="MIT" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="doc examples gmp isabelle java python" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + gmp? ( dev-libs/gmp:0=[cxx(+),${MULTILIB_USEDEP}] ) +" +DEPEND=" + ${RDEPEND} + java? ( >=virtual/jdk-1.8 ) +" +BDEPEND=" + doc? ( app-doc/doxygen[dot] ) +" + +CMAKE_BUILD_TYPE=RelWithDebInfo + +PATCHES=( + # https://github.com/Z3Prover/z3/commit/520e692a43c41e8981eb091494bef0297ecbe3c6 + "${FILESDIR}/${P}-gcc-13.patch" +) + +src_prepare() { + cmake_src_prepare + java-pkg-opt-2_src_prepare +} + +multilib_src_configure() { + local mycmakeargs=( + -DCMAKE_INSTALL_DOCDIR="${EPREFIX}/usr/share/doc/${PF}" + -DZ3_USE_LIB_GMP=$(usex gmp) + -DZ3_ENABLE_EXAMPLE_TARGETS=OFF + -DZ3_BUILD_DOCUMENTATION=$(multilib_native_usex doc) + -DZ3_BUILD_PYTHON_BINDINGS=$(multilib_native_usex python) + -DZ3_BUILD_JAVA_BINDINGS=$(multilib_native_usex java) + -DZ3_INCLUDE_GIT_DESCRIBE=OFF + -DZ3_INCLUDE_GIT_HASH=OFF + ) + + multilib_is_native_abi && use java && mycmakeargs+=( -DJAVA_HOME="$(java-config -g JAVA_HOME )" ) + + cmake_src_configure +} + +multilib_src_test() { + cmake_build test-z3 + set -- "${BUILD_DIR}"/test-z3 /a + echo "${@}" >&2 + "${@}" || die +} + +multilib_src_install_all() { + dodoc README.md + use examples && dodoc -r examples + use python && python_optimize + + if use isabelle; then + insinto /usr/share/Isabelle/contrib/${P}/etc + newins - settings <<-EOF + Z3_COMPONENT="\$COMPONENT" + Z3_HOME="${EPREFIX}/usr/bin" + Z3_SOLVER="${EPREFIX}/usr/bin/z3" + Z3_REMOTE_SOLVER="z3" + Z3_VERSION="${PV}" + Z3_INSTALLED="yes" + Z3_NON_COMMERCIAL="yes" + EOF + fi +} + +pkg_postinst() { + if use isabelle; then + if [[ -f ${ROOT}/etc/isabelle/components ]]; then + sed -e "/contrib\/${PN}-[0-9.]*/d" \ + -i "${ROOT}/etc/isabelle/components" || die + cat <<-EOF >> "${ROOT}/etc/isabelle/components" || die + contrib/${P} + EOF + fi + fi +} + +pkg_postrm() { + if use isabelle; then + if [[ ! ${REPLACING_VERSIONS} ]]; then + if [[ -f "${ROOT}/etc/isabelle/components" ]]; then + # Note: this sed should only match the version of this ebuild + # Which is what we want as we do not want to remove the line + # of a new Isabelle component being installed during an upgrade. + sed -e "/contrib\/${P}/d" \ + -i "${ROOT}/etc/isabelle/components" || die + fi + fi + fi +} |