repo/gentoo:master commit in: sci-mathematics/z3/

Michał Górny <[email protected]>
Newsgroups gmane.linux.gentoo.cvs
Message-ID <1786945336.f99bbab687300209447f8238139028bed7da5a6b.mgorny@gentoo>
commit:     f99bbab687300209447f8238139028bed7da5a6b
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 17 04:55:30 2026 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Aug 17 05:42:16 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f99bbab6

sci-mathematics/z3: Bump to 5.1.0

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 sci-mathematics/z3/Manifest        |   1 +
 sci-mathematics/z3/z3-5.1.0.ebuild | 119 +++++++++++++++++++++++++++++++++++++
 2 files changed, 120 insertions(+)

diff --git a/sci-mathematics/z3/Manifest b/sci-mathematics/z3/Manifest
index 64f788837314..35a41de82371 100644
--- a/sci-mathematics/z3/Manifest
+++ b/sci-mathematics/z3/Manifest
@@ -1,2 +1,3 @@
 DIST z3-4.16.0.tar.gz 6136396 BLAKE2B bd67a71d762f420eb1f146070b32e90cd8539c58bc0bac8e6eee6baf03327b19806c0444bc52ef15f77c8f247464ac5a97e4a51635a6b3eb0540609c0d382b9d SHA512 7dbcdd04a72f46bc3b6cbac2453b2a43f5ae126287b878ffe37f0573f910a1130c474c5edfa622dab09957f106cf425ab0f7cdfd34d41658599ad50a81ae39dd
 DIST z3-5.0.0.tar.gz 6777317 BLAKE2B 1a35863beb2fc194d5641c4073017e2e9c5730faec10e3fcb1b394898c345008caeac248b5b283f4eaf3d9e5d8901a8b4cf672f528b9301fcc22df979a12a0a3 SHA512 c6bed41313a643f2bcad6d6cfda241af948d81326bb41a5a18575170f51c1f4f75afc9e01022df9a6122e71fc54ef813ad2ac9745e40da68c892be68b4777baf
+DIST z3-5.1.0.tar.gz 6689265 BLAKE2B ff5c8bc0546fb79a66fd336480910103ce41aeb40d5846587a9a1f5247af506c50d3b8e178b224b329895f98f7299ea3de7fc306e6247a422ef6636580f6246e SHA512 03a854f720a56484ab99b8a5517150f1c9106400f54ad758cfa58e3ee2f95e349396a64d4f527a5bb9ee37f10ad9ecfa1916d1f5c921f04089deda409374491b

diff --git a/sci-mathematics/z3/z3-5.1.0.ebuild b/sci-mathematics/z3/z3-5.1.0.ebuild
new file mode 100644
index 000000000000..6dd2e5716037
--- /dev/null
+++ b/sci-mathematics/z3/z3-5.1.0.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{12..15} )
+
+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}
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~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-text/doxygen[dot] )
+"
+
+CMAKE_BUILD_TYPE=RelWithDebInfo
+
+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 "${@@Q}" >&2
+	"${@}" || die
+
+	if multilib_native_use python; then
+		for test in z3 z3num z3regex; do
+			set -- "${EPYTHON}" python/z3test.py z3
+			echo "${@@Q}" >&2
+			"${@}" || die
+		done
+	fi
+}
+
+multilib_src_install_all() {
+	dodoc README.md
+	use examples && dodoc -r examples
+	if use python; then
+		# stray symlink, sigh
+		rm "${D}$(python_get_sitedir)"/z3/lib* || die
+		python_optimize
+	fi
+
+	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
+}
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.