dev-cpp: Remove *-fbsd KEYWORDS
[gentoo.git] / dev-cpp / gtest / gtest-1.10.0.ebuild
1 # Copyright 1999-2019 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=7
5
6 # Python is required for tests and some build tasks.
7 PYTHON_COMPAT=( python2_7 pypy )
8
9 inherit cmake-multilib python-any-r1
10
11 MY_PV=1.10.x
12
13 if [[ ${PV} == "9999" ]]; then
14         inherit git-r3
15         EGIT_REPO_URI="https://github.com/google/googletest"
16 else
17         if [[ -z ${GOOGLETEST_COMMIT} ]]; then
18                 URI_PV=v${MY_PV:-${PV}}
19         else
20                 URI_PV=${MY_PV:=${GOOGLETEST_COMMIT}}
21         fi
22         SRC_URI="https://github.com/google/googletest/archive/${URI_PV}.tar.gz -> ${P}.tar.gz"
23         KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
24         S="${WORKDIR}"/googletest-${MY_PV}
25 fi
26
27 DESCRIPTION="Google C++ Testing Framework"
28 HOMEPAGE="https://github.com/google/googletest"
29
30 LICENSE="BSD"
31 SLOT="0"
32 IUSE="doc examples test"
33
34 DEPEND="test? ( ${PYTHON_DEPS} )"
35 RDEPEND="!dev-cpp/gmock"
36
37 PATCHES=(
38         "${FILESDIR}"/${PN}-1.9.0_pre20190607-increase-clone-stack-size.patch
39 )
40
41 pkg_setup() {
42         use test && python-any-r1_pkg_setup
43 }
44
45 src_prepare() {
46         cmake-utils_src_prepare
47
48         sed -i -e '/set(cxx_base_flags /s:-Werror::' \
49                 googletest/cmake/internal_utils.cmake || die "sed failed!"
50 }
51
52 multilib_src_configure() {
53         local mycmakeargs=(
54                 -DBUILD_GMOCK=ON
55                 -DINSTALL_GTEST=ON
56
57                 # tests
58                 -Dgmock_build_tests=$(usex test)
59                 -Dgtest_build_tests=$(usex test)
60                 -DPYTHON_EXECUTABLE="${PYTHON}"
61         )
62         cmake-utils_src_configure
63 }
64
65 multilib_src_install_all() {
66         einstalldocs
67
68         if use doc; then
69                 docinto googletest
70                 dodoc -r googletest/docs/.
71                 docinto googlemock
72                 dodoc -r googlemock/docs/.
73         fi
74
75         if use examples; then
76                 docinto examples
77                 dodoc googletest/samples/*.{cc,h}
78         fi
79 }