summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Levine <plevine457@gmail.com>2022-11-20 04:23:17 -0500
committerSam James <sam@gentoo.org>2022-11-23 01:43:39 +0000
commit0b1ac3582a4cb07b4d6a6079e712279335f64ca8 (patch)
tree04a46ecb973dc6d5964c83784a6ed264d498359b /dev-cpp
parentdev-cpp/gtest: exclude tests that fail due to usersandbox (diff)
downloadgentoo-0b1ac3582a4cb07b4d6a6079e712279335f64ca8.tar.gz
gentoo-0b1ac3582a4cb07b4d6a6079e712279335f64ca8.tar.bz2
gentoo-0b1ac3582a4cb07b4d6a6079e712279335f64ca8.zip
dev-cpp/gtest: add 1.12.1
Closes: https://bugs.gentoo.org/881845 Signed-off-by: Peter Levine <plevine457@gmail.com> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-cpp')
-rw-r--r--dev-cpp/gtest/Manifest1
-rw-r--r--dev-cpp/gtest/gtest-1.12.1.ebuild78
2 files changed, 79 insertions, 0 deletions
diff --git a/dev-cpp/gtest/Manifest b/dev-cpp/gtest/Manifest
index cb7e7695b146..3aff3c058b8f 100644
--- a/dev-cpp/gtest/Manifest
+++ b/dev-cpp/gtest/Manifest
@@ -1 +1,2 @@
DIST gtest-1.11.0.tar.gz 886330 BLAKE2B d11fdd485f292d96508cbc27a9a444ab69b86571cc594298fd3f0e6d4bd8d6ec20dea848fe11be165d34054b2251ad377f0930f852914feaa1416ff156986a9c SHA512 6fcc7827e4c4d95e3ae643dd65e6c4fc0e3d04e1778b84f6e06e390410fe3d18026c131d828d949d2f20dde6327d30ecee24dcd3ef919e21c91e010d149f3a28
+DIST gtest-1.12.1.tar.gz 854944 BLAKE2B 7b121fb95bb19efec1387a83da2201a139197225f79f7649ceac04695ff06fc4148319ae928d79ced413a9cfd42e68b56bfda1ee6bfdbf07fdd22795e9974388 SHA512 a9104dc6c53747e36e7dd7bb93dfce51a558bd31b487a9ef08def095518e1296da140e0db263e0644d9055dbd903c0cb69380cb2322941dbfb04780ef247df9c
diff --git a/dev-cpp/gtest/gtest-1.12.1.ebuild b/dev-cpp/gtest/gtest-1.12.1.ebuild
new file mode 100644
index 000000000000..0895416d2312
--- /dev/null
+++ b/dev-cpp/gtest/gtest-1.12.1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Python is required for tests and some build tasks.
+PYTHON_COMPAT=( python3_{8..11} )
+
+inherit cmake-multilib python-any-r1
+
+if [[ ${PV} == "9999" ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/google/googletest"
+else
+ if [[ -z ${GOOGLETEST_COMMIT} ]]; then
+ SRC_URI="https://github.com/google/googletest/archive/refs/tags/release-${PV}.tar.gz
+ -> ${P}.tar.gz"
+ S="${WORKDIR}"/googletest-release-${PV}
+ else
+ SRC_URI="https://github.com/google/googletest/archive/${GOOGLETEST_COMMIT}.tar.gz
+ -> ${P}.tar.gz"
+ S="${WORKDIR}"/googletest-${GOOGLETEST_COMMIT}
+ fi
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="Google C++ Testing Framework"
+HOMEPAGE="https://github.com/google/googletest"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="doc examples test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="test? ( ${PYTHON_DEPS} )"
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ cmake_src_prepare
+
+ sed -i -e '/set(cxx_base_flags /s:-Werror::' \
+ googletest/cmake/internal_utils.cmake || die "sed failed!"
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DBUILD_GMOCK=ON
+ -DINSTALL_GTEST=ON
+
+ # tests
+ -Dgmock_build_tests=$(usex test)
+ -Dgtest_build_tests=$(usex test)
+ -DPYTHON_EXECUTABLE="${PYTHON}"
+ )
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ # Exclude tests that fail with FEATURES="usersandbox"
+ cmake_src_test -E "googletest-death-test-test"
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ newdoc googletest/README.md README.googletest.md
+ newdoc googlemock/README.md README.googlemock.md
+
+ use doc && dodoc -r docs/.
+
+ if use examples; then
+ docinto examples
+ dodoc googletest/samples/*.{cc,h}
+ fi
+}