diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/Manifest b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/Manifest index 991727f450..3b3e722caa 100644 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/Manifest +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/Manifest @@ -1,2 +1,2 @@ -DIST gtest-1.7.0.tar.gz 1001582 BLAKE2B 3d10c1e502c2fac1500d07301031a9328b29027a3f9719137e09d2c47556cf52bbc978a8fb7b37330a94beafa27d24c3bfc247b2f0d51306b53f43e7ae2373b4 SHA512 a9f5c047b39efb2d11b55ee9913662ca402ac6837b3ad2d278ecfbd1caf32ed4546f169e3e92503d57bf3b62ccf89cd062da1c7ea3638aae98e868d2766363c3 -DIST gtest-1.8.0.tar.gz 1281617 BLAKE2B ac052b4d0eb0d8ded03a8c7dff05177818627b8a51f2dbc2c162b2ee2a5d1323539e7d0d02236d9ebb799995e018f0171c2fdaeb4de3bb339548265e50de79e6 SHA512 1dbece324473e53a83a60601b02c92c089f5d314761351974e097b2cf4d24af4296f9eb8653b6b03b1e363d9c5f793897acae1f0c7ac40149216035c4d395d9d +DIST gtest-1.10.0_p20200702.tar.gz 866900 BLAKE2B c162d47868583ba270675abe5df935b8f4b9a9c00dbdc80dd88afa7f2b98266640b32b2ea5e8f9f6d6227196b5d2f79dbfda4e9585106224e814cc1503cf777d SHA512 715d887b59b47d4691c7c90ef0cf0ffc3d1e758e500263c76b50fd506e90a9d1c390af745933cfe3f55e1edac5d72dccedef3cb9a50b71a5b796424471a3017b +DIST gtest-1.11.0.tar.gz 886330 BLAKE2B d11fdd485f292d96508cbc27a9a444ab69b86571cc594298fd3f0e6d4bd8d6ec20dea848fe11be165d34054b2251ad377f0930f852914feaa1416ff156986a9c SHA512 6fcc7827e4c4d95e3ae643dd65e6c4fc0e3d04e1778b84f6e06e390410fe3d18026c131d828d949d2f20dde6327d30ecee24dcd3ef919e21c91e010d149f3a28 diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/configure-fix-pthread-linking.patch b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/configure-fix-pthread-linking.patch deleted file mode 100644 index 75e5219b7a..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/configure-fix-pthread-linking.patch +++ /dev/null @@ -1,93 +0,0 @@ -From fb71154012e634a5e780e93af5434bcdafaf2b24 Mon Sep 17 00:00:00 2001 -From: Justin Bronder -Date: Mon, 15 Oct 2012 17:25:07 -0400 -Subject: [PATCH] configure: fix pthread linking - -- Update the pthread check to make sure that we don't need -lpthread when -compiling with -nostdlib. - -- Make sure that the necessary pthread library is passed to libtool. - -Fixes: - -$ ldd -r /usr/lib/libgtest.so - linux-vdso.so.1 (0x00007fffe7dff000) - libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/libstdc++.so.6 (0x00007fbe09a9f000) - libc.so.6 => /lib64/libc.so.6 (0x00007fbe096f7000) - libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/libgcc_s.so.1 (0x00007fbe094e1000) - libm.so.6 => /lib64/libm.so.6 (0x00007fbe091ee000) - /lib64/ld-linux-x86-64.so.2 (0x00007fbe0a005000) -undefined symbol: pthread_key_create (/usr/lib/libgtest.so) -undefined symbol: pthread_getspecific (/usr/lib/libgtest.so) -undefined symbol: pthread_key_delete (/usr/lib/libgtest.so) -undefined symbol: pthread_setspecific (/usr/lib/libgtest.so) ---- - Makefile.am | 1 + - m4/acx_pthread.m4 | 39 ++++++++++++++++++++++++++++++++++++++- - 2 files changed, 39 insertions(+), 1 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index cb350b7..db2606e 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -181,6 +181,7 @@ endif - lib_LTLIBRARIES = lib/libgtest.la lib/libgtest_main.la - - lib_libgtest_la_SOURCES = src/gtest-all.cc -+lib_libgtest_la_LIBADD = $(AM_LIBS) - - pkginclude_HEADERS = \ - include/gtest/gtest-death-test.h \ -diff --git a/m4/acx_pthread.m4 b/m4/acx_pthread.m4 -index 2cf20de..7fba4d9 100644 ---- a/m4/acx_pthread.m4 -+++ b/m4/acx_pthread.m4 -@@ -339,7 +339,44 @@ if test "x$acx_pthread_ok" = xyes; then - # so it's not safe to assume that we may use pthreads - acx_pthread_ok=no - fi -- -+ -+ AC_MSG_CHECKING([whether what we have so far is sufficient with -nostdlib]) -+ CFLAGS="-nostdlib $CFLAGS" -+ # we need c with nostdlib -+ LIBS="$LIBS -lc" -+ AC_TRY_LINK([#include ], -+ [pthread_t th; pthread_join(th, 0); -+ pthread_attr_init(0); pthread_cleanup_push(0, 0); -+ pthread_create(0,0,0,0); pthread_cleanup_pop(0); ], -+ [done=yes],[done=no]) -+ -+ if test "x$done" = xyes; then -+ AC_MSG_RESULT([yes]) -+ else -+ AC_MSG_RESULT([no]) -+ fi -+ -+ if test x"$done" = xno; then -+ AC_MSG_CHECKING([whether -lpthread saves the day]) -+ LIBS="-lpthread $LIBS" -+ AC_TRY_LINK([#include ], -+ [pthread_t th; pthread_join(th, 0); -+ pthread_attr_init(0); pthread_cleanup_push(0, 0); -+ pthread_create(0,0,0,0); pthread_cleanup_pop(0); ], -+ [done=yes],[done=no]) -+ -+ if test "x$done" = xyes; then -+ AC_MSG_RESULT([yes]) -+ PTHREAD_LIBS="$PTHREAD_LIBS -lpthread" -+ else -+ AC_MSG_RESULT([no]) -+ AC_MSG_WARN([Impossible to determine how to use pthreads with shared libraries and -nostdlib]) -+ fi -+ fi -+ -+ CFLAGS="$save_CFLAGS" -+ LIBS="$save_LIBS" -+ CC="$save_CC" - CFLAGS="$save_CFLAGS" - LIBS="$save_LIBS" - CC="$save_CC" --- -1.7.8.6 - diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.8.0-increase-clone-stack-size.patch b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.10.0_p20200702-increase-clone-stack-size.patch similarity index 67% rename from sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.8.0-increase-clone-stack-size.patch rename to sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.10.0_p20200702-increase-clone-stack-size.patch index 22ac0b6d4a..3e06777ac9 100644 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.8.0-increase-clone-stack-size.patch +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.10.0_p20200702-increase-clone-stack-size.patch @@ -1,5 +1,4 @@ -Bug: https://bugs.gentoo.org/629620 -Upstream PR: https://github.com/google/googletest/pull/1274 +Bug: https://bugs.gentoo.org/692464 --- a/googletest/src/gtest-death-test.cc +++ b/googletest/src/gtest-death-test.cc @@ -7,8 +6,8 @@ Upstream PR: https://github.com/google/googletest/pull/1274 if (!use_fork) { static const bool stack_grows_down = StackGrowsDown(); -- const size_t stack_size = getpagesize(); -+ const size_t stack_size = getpagesize() * 10; +- const auto stack_size = static_cast(getpagesize() * 2); ++ const auto stack_size = static_cast(getpagesize() * 10); // MMAP_ANONYMOUS is not defined on Mac, so we use MAP_ANON instead. void* const stack = mmap(NULL, stack_size, PROT_READ | PROT_WRITE, MAP_ANON | MAP_PRIVATE, -1, 0); diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.8.0-fix-doublefree.patch b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.8.0-fix-doublefree.patch deleted file mode 100644 index 40fa1f6668..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.8.0-fix-doublefree.patch +++ /dev/null @@ -1,98 +0,0 @@ -Bug: https://bugs.gentoo.org/631698 -Upstream PR: https://github.com/google/googletest/pull/1339 - -From 0663ce9024c9b78ddf6eb3fc1ceb45361ed91767 Mon Sep 17 00:00:00 2001 -From: Romain Geissler -Date: Sat, 2 Dec 2017 22:47:20 +0100 -Subject: [PATCH] Fix double free when building Gtest/GMock in shared libraries - and linking a test executable with both. - ---- - googlemock/CMakeLists.txt | 63 ++++++++++++++++++++++++++++++----------------- - 1 file changed, 40 insertions(+), 23 deletions(-) - -diff --git a/googlemock/CMakeLists.txt b/googlemock/CMakeLists.txt -index 724fdd5f0..f7bad8afc 100644 ---- a/googlemock/CMakeLists.txt -+++ b/googlemock/CMakeLists.txt -@@ -86,16 +86,23 @@ endif() - # Google Mock libraries. We build them using more strict warnings than what - # are used for other targets, to ensure that Google Mock can be compiled by - # a user aggressive about warnings. --cxx_library(gmock -- "${cxx_strict}" -- "${gtest_dir}/src/gtest-all.cc" -- src/gmock-all.cc) -- --cxx_library(gmock_main -- "${cxx_strict}" -- "${gtest_dir}/src/gtest-all.cc" -- src/gmock-all.cc -- src/gmock_main.cc) -+if (MSVC) -+ cxx_library(gmock -+ "${cxx_strict}" -+ "${gtest_dir}/src/gtest-all.cc" -+ src/gmock-all.cc) -+ -+ cxx_library(gmock_main -+ "${cxx_strict}" -+ "${gtest_dir}/src/gtest-all.cc" -+ src/gmock-all.cc -+ src/gmock_main.cc) -+else() -+ cxx_library(gmock "${cxx_strict}" src/gmock-all.cc) -+ target_link_libraries(gmock gtest) -+ cxx_library(gmock_main "${cxx_strict}" src/gmock_main.cc) -+ target_link_libraries(gmock_main gmock) -+endif() - - # If the CMake version supports it, attach header directory information - # to the targets for when we are part of a parent build (ie being pulled -@@ -175,23 +182,33 @@ if (gmock_build_tests) - ############################################################ - # C++ tests built with non-standard compiler flags. - -- cxx_library(gmock_main_no_exception "${cxx_no_exception}" -- "${gtest_dir}/src/gtest-all.cc" src/gmock-all.cc src/gmock_main.cc) -- -- cxx_library(gmock_main_no_rtti "${cxx_no_rtti}" -- "${gtest_dir}/src/gtest-all.cc" src/gmock-all.cc src/gmock_main.cc) -+ if (MSVC) -+ cxx_library(gmock_main_no_exception "${cxx_no_exception}" -+ "${gtest_dir}/src/gtest-all.cc" src/gmock-all.cc src/gmock_main.cc) - -- if (NOT MSVC OR MSVC_VERSION LESS 1600) # 1600 is Visual Studio 2010. -- # Visual Studio 2010, 2012, and 2013 define symbols in std::tr1 that -- # conflict with our own definitions. Therefore using our own tuple does not -- # work on those compilers. -- cxx_library(gmock_main_use_own_tuple "${cxx_use_own_tuple}" -+ cxx_library(gmock_main_no_rtti "${cxx_no_rtti}" - "${gtest_dir}/src/gtest-all.cc" src/gmock-all.cc src/gmock_main.cc) - -- cxx_test_with_flags(gmock_use_own_tuple_test "${cxx_use_own_tuple}" -- gmock_main_use_own_tuple test/gmock-spec-builders_test.cc) -+ if (MSVC_VERSION LESS 1600) # 1600 is Visual Studio 2010. -+ # Visual Studio 2010, 2012, and 2013 define symbols in std::tr1 that -+ # conflict with our own definitions. Therefore using our own tuple does not -+ # work on those compilers. -+ cxx_library(gmock_main_use_own_tuple "${cxx_use_own_tuple}" -+ "${gtest_dir}/src/gtest-all.cc" src/gmock-all.cc src/gmock_main.cc) -+ -+ cxx_test_with_flags(gmock_use_own_tuple_test "${cxx_use_own_tuple}" -+ gmock_main_use_own_tuple test/gmock-spec-builders_test.cc) -+ endif() -+ else() -+ cxx_library(gmock_main_no_exception "${cxx_no_exception}" src/gmock_main.cc) -+ target_link_libraries(gmock_main_no_exception gmock) -+ -+ cxx_library(gmock_main_no_rtti "${cxx_no_rtti}" src/gmock_main.cc) -+ target_link_libraries(gmock_main_no_rtti gmock) -+ -+ cxx_library(gmock_main_use_own_tuple "${cxx_use_own_tuple}" src/gmock_main.cc) -+ target_link_libraries(gmock_main_use_own_tuple gmock) - endif() -- - cxx_test_with_flags(gmock-more-actions_no_exception_test "${cxx_no_exception}" - gmock_main_no_exception test/gmock-more-actions_test.cc) - diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.8.0-multilib-strict.patch b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.8.0-multilib-strict.patch deleted file mode 100644 index c18b58e16f..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-1.8.0-multilib-strict.patch +++ /dev/null @@ -1,40 +0,0 @@ ---- a/googlemock/CMakeLists.txt -+++ b/googlemock/CMakeLists.txt -@@ -11,6 +11,8 @@ - - option(gmock_build_tests "Build all of Google Mock's own tests." OFF) - -+set(LIB_INSTALL_DIR lib CACHE STRING "Library install directory") -+ - # A directory to find Google Test sources. - if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/gtest/CMakeLists.txt") - set(gtest_dir gtest) -@@ -104,7 +106,7 @@ - # - # Install rules - install(TARGETS gmock gmock_main -- DESTINATION lib) -+ DESTINATION ${LIB_INSTALL_DIR}) - install(DIRECTORY ${gmock_SOURCE_DIR}/include/gmock - DESTINATION include) - ---- a/googletest/CMakeLists.txt -+++ b/googletest/CMakeLists.txt -@@ -27,6 +27,8 @@ - "Build gtest with internal symbols hidden in shared libraries." - OFF) - -+set(LIB_INSTALL_DIR lib CACHE STRING "Library install directory") -+ - # Defines pre_project_set_up_hermetic_build() and set_up_hermetic_build(). - include(cmake/hermetic_build.cmake OPTIONAL) - -@@ -103,7 +105,7 @@ - # - # Install rules - install(TARGETS gtest gtest_main -- DESTINATION lib) -+ DESTINATION ${LIB_INSTALL_DIR}) - install(DIRECTORY ${gtest_SOURCE_DIR}/include/gtest - DESTINATION include) - diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch deleted file mode 100644 index eadfe61973..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch +++ /dev/null @@ -1,21 +0,0 @@ -Fix build with GCC 6 due to lifetime issues. - ---- a/googletest/src/gtest.cc -+++ b/googletest/src/gtest.cc -@@ -2654,10 +2654,12 @@ - test->Run(); - } - -- // Deletes the test object. -- impl->os_stack_trace_getter()->UponLeavingGTest(); -- internal::HandleExceptionsInMethodIfSupported( -- test, &Test::DeleteSelf_, "the test fixture's destructor"); -+ if (test != NULL) { -+ // Deletes the test object. -+ impl->os_stack_trace_getter()->UponLeavingGTest(); -+ internal::HandleExceptionsInMethodIfSupported( -+ test, &Test::DeleteSelf_, "the test fixture's destructor"); -+ } - - result_.set_elapsed_time(internal::GetTimeInMillis() - start); - diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-9999-fix-py-tests.patch b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-9999-fix-py-tests.patch deleted file mode 100644 index ba63c7b3ee..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/files/gtest-9999-fix-py-tests.patch +++ /dev/null @@ -1,19 +0,0 @@ -Fix python tests that use broken generator expressions - ---- a/googletest/cmake/internal_utils.cmake -+++ b/googletest/cmake/internal_utils.cmake -@@ -247,12 +247,12 @@ - add_test( - NAME ${name} - COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py -- --build_dir=${CMAKE_CURRENT_BINARY_DIR}/$) -+ --build_dir=${CMAKE_CURRENT_BINARY_DIR}) - else (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1) - add_test( - ${name} - ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py -- --build_dir=${CMAKE_CURRENT_BINARY_DIR}/\${CTEST_CONFIGURATION_TYPE}) -+ --build_dir=${CMAKE_CURRENT_BINARY_DIR}) - endif (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1) - endif() - endfunction() diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.10.0_p20200702.ebuild b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.10.0_p20200702.ebuild new file mode 100644 index 0000000000..58067c7a09 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.10.0_p20200702.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +# Python is required for tests and some build tasks. +PYTHON_COMPAT=( python3_{8..10} ) + +CMAKE_ECLASS=cmake +inherit cmake-multilib python-any-r1 + +GOOGLETEST_COMMIT=aee0f9d9b5b87796ee8a0ab26b7587ec30e8858e + +if [[ ${PV} == "9999" ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/google/googletest" +else + if [[ -z ${GOOGLETEST_COMMIT} ]]; then + URI_PV=v${MY_PV:-${PV}} + else + URI_PV=${MY_PV:=${GOOGLETEST_COMMIT}} + fi + SRC_URI="https://github.com/google/googletest/archive/${URI_PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" + S="${WORKDIR}"/googletest-${MY_PV} +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} )" + +PATCHES=( + "${FILESDIR}"/${PN}-1.10.0_p20200702-increase-clone-stack-size.patch +) + +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_install_all() { + einstalldocs + + if use doc; then + docinto googletest + dodoc -r googletest/docs/. + docinto googlemock + dodoc -r googlemock/docs/. + fi + + if use examples; then + docinto examples + dodoc googletest/samples/*.{cc,h} + fi +} diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.11.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.11.0.ebuild new file mode 100644 index 0000000000..89518bffd1 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.11.0.ebuild @@ -0,0 +1,78 @@ +# Copyright 1999-2021 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..10} ) + +CMAKE_ECLASS=cmake +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 ~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} )" + +PATCHES=( + "${FILESDIR}"/${PN}-1.10.0_p20200702-increase-clone-stack-size.patch +) + +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_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 +} diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.7.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.7.0-r1.ebuild deleted file mode 100644 index f1185b2db0..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.7.0-r1.ebuild +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="5" - -AUTOTOOLS_AUTORECONF=1 -AUTOTOOLS_IN_SOURCE_BUILD=1 -# Python is required for tests and some build tasks. -PYTHON_COMPAT=( python2_7 ) - -inherit eutils python-any-r1 autotools-multilib - -DESCRIPTION="Google C++ Testing Framework" -HOMEPAGE="https://github.com/google/googletest" -SRC_URI="https://github.com/google/googletest/archive/release-${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos" -IUSE="examples static-libs" - -DEPEND="${PYTHON_DEPS}" -RDEPEND="" - -PATCHES=( - "${FILESDIR}/configure-fix-pthread-linking.patch" #371647 -) - -src_prepare() { - sed -i -e "s|/tmp|${T}|g" test/gtest-filepath_test.cc || die - sed -i -r \ - -e '/^install-(data|exec)-local:/s|^.*$|&\ndisabled-&|' \ - Makefile.am || die - autotools-multilib_src_prepare -} - -multilib_src_install() { - default - multilib_is_native_abi && dobin scripts/gtest-config -} - -multilib_src_install_all() { - prune_libtool_files --all - einstalldocs - - if use examples ; then - insinto /usr/share/doc/${PF}/examples - doins samples/*.{cc,h} - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.8.0-r1.ebuild b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.8.0-r1.ebuild deleted file mode 100644 index 68dc26c492..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.8.0-r1.ebuild +++ /dev/null @@ -1,68 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -# Python is required for tests and some build tasks. -PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy ) - -inherit python-any-r1 cmake-multilib - -DESCRIPTION="Google C++ Testing Framework" -HOMEPAGE="https://github.com/google/googletest" -SRC_URI="https://github.com/google/googletest/archive/release-${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="alpha amd64 ~arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos" -IUSE="doc examples test" - -DEPEND="test? ( ${PYTHON_DEPS} )" -RDEPEND="!dev-cpp/gmock" - -PATCHES=( - "${FILESDIR}"/${PN}-9999-fix-py-tests.patch - "${FILESDIR}"/${PN}-9999-fix-gcc6-undefined-behavior.patch - "${FILESDIR}"/${PN}-1.8.0-multilib-strict.patch - "${FILESDIR}"/${PN}-1.8.0-increase-clone-stack-size.patch - "${FILESDIR}"/${PN}-1.8.0-fix-doublefree.patch -) - -S="${WORKDIR}"/googletest-release-${PV} - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -multilib_src_configure() { - local mycmakeargs=( - -DBUILD_GMOCK=ON - -DBUILD_GTEST=ON - -DLIB_INSTALL_DIR=$(get_libdir) - -Dgtest_build_samples=OFF - -Dgtest_disable_pthreads=OFF - -DBUILD_SHARED_LIBS=ON - - # tests - -Dgmock_build_tests=$(usex test) - -Dgtest_build_tests=$(usex test) - -DPYTHON_EXECUTABLE="${PYTHON}" - ) - cmake-utils_src_configure mycmakeargs -} - -multilib_src_install_all() { - einstalldocs - - if use doc; then - docinto googletest - dodoc -r googletest/docs/* - docinto googlemock - dodoc -r googlemock/docs/* - fi - - if use examples; then - docinto examples - dodoc googletest/samples/*.{cc,h} - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.8.0.ebuild b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.8.0.ebuild deleted file mode 100644 index 3dbd8e1a06..0000000000 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-1.8.0.ebuild +++ /dev/null @@ -1,67 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -# Python is required for tests and some build tasks. -PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy ) - -inherit python-any-r1 cmake-multilib - -DESCRIPTION="Google C++ Testing Framework" -HOMEPAGE="https://github.com/google/googletest" -SRC_URI="https://github.com/google/googletest/archive/release-${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos" -IUSE="doc examples test" - -DEPEND="test? ( ${PYTHON_DEPS} )" -RDEPEND="!dev-cpp/gmock" - -PATCHES=( - "${FILESDIR}"/${PN}-9999-fix-py-tests.patch - "${FILESDIR}"/${PN}-9999-fix-gcc6-undefined-behavior.patch - "${FILESDIR}"/${PN}-1.8.0-multilib-strict.patch - "${FILESDIR}"/${PN}-1.8.0-increase-clone-stack-size.patch -) - -S="${WORKDIR}"/googletest-release-${PV} - -pkg_setup() { - use test && python-any-r1_pkg_setup -} - -multilib_src_configure() { - local mycmakeargs=( - -DBUILD_GMOCK=ON - -DBUILD_GTEST=ON - -DLIB_INSTALL_DIR=$(get_libdir) - -Dgtest_build_samples=OFF - -Dgtest_disable_pthreads=OFF - -DBUILD_SHARED_LIBS=ON - - # tests - -Dgmock_build_tests=$(usex test) - -Dgtest_build_tests=$(usex test) - -DPYTHON_EXECUTABLE="${PYTHON}" - ) - cmake-utils_src_configure mycmakeargs -} - -multilib_src_install_all() { - einstalldocs - - if use doc; then - docinto googletest - dodoc -r googletest/docs/* - docinto googlemock - dodoc -r googlemock/docs/* - fi - - if use examples; then - docinto examples - dodoc googletest/samples/*.{cc,h} - fi -} diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-9999.ebuild b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-9999.ebuild index 06c94dbd49..89518bffd1 100644 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-9999.ebuild +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/gtest-9999.ebuild @@ -1,20 +1,28 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI="6" +EAPI=8 # Python is required for tests and some build tasks. -PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy ) +PYTHON_COMPAT=( python3_{8..10} ) -inherit python-any-r1 cmake-multilib +CMAKE_ECLASS=cmake +inherit cmake-multilib python-any-r1 if [[ ${PV} == "9999" ]]; then inherit git-r3 EGIT_REPO_URI="https://github.com/google/googletest" else - SRC_URI="https://github.com/google/googletest/archive/release-${PV}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos" - S="${WORKDIR}"/googletest-release-${PV} + 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 ~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" @@ -23,51 +31,45 @@ HOMEPAGE="https://github.com/google/googletest" LICENSE="BSD" SLOT="0" IUSE="doc examples test" +RESTRICT="!test? ( test )" -DEPEND="test? ( ${PYTHON_DEPS} )" -RDEPEND="!dev-cpp/gmock" +BDEPEND="test? ( ${PYTHON_DEPS} )" PATCHES=( - "${FILESDIR}"/${PN}-9999-fix-gcc6-undefined-behavior.patch - "${FILESDIR}"/${PN}-1.8.0-increase-clone-stack-size.patch - "${FILESDIR}"/${PN}-1.8.0-fix-doublefree.patch + "${FILESDIR}"/${PN}-1.10.0_p20200702-increase-clone-stack-size.patch ) 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 - -DBUILD_GTEST=ON - -DINSTALL_GMOCK=ON -DINSTALL_GTEST=ON - -Dgtest_build_samples=OFF - -Dgtest_disable_pthreads=OFF - - # currently only static libs work - # due to numerous ODR violations - # https://github.com/google/googletest/issues/930 - -DBUILD_SHARED_LIBS=OFF # tests -Dgmock_build_tests=$(usex test) -Dgtest_build_tests=$(usex test) -DPYTHON_EXECUTABLE="${PYTHON}" ) - cmake-utils_src_configure + cmake_src_configure } multilib_src_install_all() { einstalldocs - if use doc; then - docinto googletest - dodoc -r googletest/docs/* - docinto googlemock - dodoc -r googlemock/docs/* - fi + 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 diff --git a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/metadata.xml b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/metadata.xml index f40cfed12c..c870874aad 100644 --- a/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/dev-cpp/gtest/metadata.xml @@ -1,11 +1,11 @@ - + - + plevine457@gmail.com Peter Levine - + proxy-maint@gentoo.org Proxy Maintainers