Date: Tuesday, September 25, 2018 @ 22:02:52 Author: anthraxx Revision: 385099
archrelease: copy trunk to community-x86_64 Added: gtest/repos/community-x86_64/PKGBUILD (from rev 385098, gtest/trunk/PKGBUILD) gtest/repos/community-x86_64/gtest-1.8.1-libversion.patch (from rev 385098, gtest/trunk/gtest-1.8.1-libversion.patch) gtest/repos/community-x86_64/gtest-1.8.1-null-pointer.patch (from rev 385098, gtest/trunk/gtest-1.8.1-null-pointer.patch) Deleted: gtest/repos/community-x86_64/PKGBUILD gtest/repos/community-x86_64/gmock-install.patch gtest/repos/community-x86_64/gmock.pc.in gtest/repos/community-x86_64/gtest-pkgconfig.patch gtest/repos/community-x86_64/gtest.pc.in --------------------------------+ PKGBUILD | 213 ++++++++++++++++++++------------------- gmock-install.patch | 79 -------------- gmock.pc.in | 10 - gtest-1.8.1-libversion.patch | 29 +++++ gtest-1.8.1-null-pointer.patch | 17 +++ gtest-pkgconfig.patch | 27 ---- gtest.pc.in | 10 - 7 files changed, 156 insertions(+), 229 deletions(-) Deleted: PKGBUILD =================================================================== --- PKGBUILD 2018-09-25 22:02:16 UTC (rev 385098) +++ PKGBUILD 2018-09-25 22:02:52 UTC (rev 385099) @@ -1,103 +0,0 @@ -# Maintainer: Felix Yan <felixonm...@archlinux.org> -# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org> -# Contributor: Alexandre Bique <bique.alexan...@gmail.com> -# Contributor: Louis R. Marascio <l...@fitnr.com> -# Contributor: Cody Maloney <cmalo...@theoreticalchaos.com> - -pkgbase=gtest -pkgname=('gtest' 'gmock') -pkgver=1.8.1 -pkgrel=1 -pkgdesc='Google Test - C++ testing utility' -url='https://github.com/google/googletest/' -arch=('x86_64') -license=('BSD') -makedepends=('python2' 'cmake' 'gcc-libs' 'sh') -options=(!makeflags) -source=(${pkgbase}-${pkgver}.tar.gz::https://github.com/google/googletest/archive/release-${pkgver}.tar.gz - gtest-pkgconfig.patch - gtest.pc.in - gmock-install.patch - gmock.pc.in) -sha512sums=('e6283c667558e1fd6e49fa96e52af0e415a3c8037afe1d28b7ff1ec4c2ef8f49beb70a9327b7fc77eb4052a58c4ccad8b5260ec90e4bceeac7a46ff59c4369d7' - '7e9ad4cd470eaab7ed5fb1cce1d5721d40fc03a62b0c895b8f9657679ffa43f91b99800bb1e02a6c5c2d0a72e94bb8ea008aa6e74fdb1460b1326a84da5e9f91' - 'df3d23bc53c3b4ab5bacb4b6fad8823870b2ba6b86017e1e99067fb547533a649f2c8e8a8634e3583b344230e1afc280a047d41330cbc7510cfd0c5e843594c3' - '2c2417c178485a590695f7d37b26fad3a1a1993fdc9a0c869c34fec83d51769b8057b4f67000e0585f61919c092175186252704a032e9b06bfc1f0e7c0b900f9' - '3e4c2e96139292818d97b52536776b656bea30f119124dab4d5c2cb2f31098a3bfac928b74297f7c77229d3eb5fa3b734931c64d8bef2f867b585e43b390a59c') - -prepare() { - cd googletest-release-${pkgver} - find -name '*.py' -exec sed -i 's|env python|env python2|g' {} \; - - msg2 "Preparing googletest..." - (cd googletest - autoreconf -fvi - cp "${srcdir}/gtest.pc.in" . - sed -r "s|(Version:) .+|\1 ${pkgver}|" -i gtest.pc.in - patch -p1 < "${srcdir}/gtest-pkgconfig.patch" - mkdir build - ) - - msg2 "Preparing googlemock..." - patch -p1 < "${srcdir}/gmock-install.patch" - (cd googlemock - cp "${srcdir}/gmock.pc.in" . - autoreconf -fvi - ) -} - -build() { - cd googletest-release-${pkgver} - - msg2 "Building googletest..." - (cd googletest - # this is odd but needed only to generate gtest-config. - ./configure --prefix=/usr - cd build - cmake -DCMAKE_INSTALL_PREFIX=/usr \ - -DBUILD_SHARED_LIBS=ON \ - -DCMAKE_SKIP_RPATH=ON .. - make - ) - - msg2 "Building googlemock..." - (cd googlemock - ./configure --prefix=/usr --with-gtest --enable-external-gtest - make - ) -} - -package_gtest() { - pkgdesc='Google Test - C++ testing utility based on the xUnit framework (like JUnit)' - depends=('gcc-libs' 'sh') - - cd googletest-release-${pkgver}/googletest - make -C build DESTDIR="${pkgdir}" install - install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" - install -Dm 644 README.md CHANGES CONTRIBUTORS -t "${pkgdir}/usr/share/doc/${pkgname}" - install -Dm 755 scripts/gtest-config -t "${pkgdir}/usr/bin" - install -Dm 644 build/libgtest{,_main}.so -t "${pkgdir}/usr/lib" - install -Dm 644 m4/gtest.m4 -t "${pkgdir}/usr/share/aclocal" - install -Dm 644 cmake/* -t "${pkgdir}/usr/src/gtest/cmake" - install -Dm 644 src/* -t "${pkgdir}/usr/src/gtest/src" - install -d "${pkgdir}/usr/include" - cp -r include/gtest -t "${pkgdir}/usr/include" - - # undo pkg-config patch so subprojects including this don't try to generate it - patch -Rp1 < "${srcdir}/gtest-pkgconfig.patch" - install -Dm 644 CMakeLists.txt -t "${pkgdir}/usr/src/gtest" -} - -package_gmock() { - pkgdesc='Google Mock - A library for writing and using C++ mock classes' - depends=('python2' 'gtest' 'gcc-libs' 'sh') - - cd googletest-release-${pkgver}/googlemock - make --trace -w -j1 DESTDIR="${pkgdir}" install - install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" - install -Dm 644 README.md CHANGES CONTRIBUTORS -t "${pkgdir}/usr/share/doc/${pkgname}" - install -Dm 755 scripts/gmock-config -t "${pkgdir}/usr/bin" - install -Dm 644 include/gmock/internal/custom/* -t "${pkgdir}/usr/include/gmock/internal/custom" -} - -# vim: ts=2 sw=2 et: Copied: gtest/repos/community-x86_64/PKGBUILD (from rev 385098, gtest/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2018-09-25 22:02:52 UTC (rev 385099) @@ -0,0 +1,110 @@ +# Maintainer: Felix Yan <felixonm...@archlinux.org> +# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org> +# Contributor: Jan Alexander Steffens (heftig) <jan.steff...@gmail.com> +# Contributor: Alexandre Bique <bique.alexan...@gmail.com> +# Contributor: Louis R. Marascio <l...@fitnr.com> +# Contributor: Cody Maloney <cmalo...@theoreticalchaos.com> + +pkgbase=gtest +pkgname=('gtest' 'gmock') +pkgver=1.8.1 +pkgrel=2 +pkgdesc='Google Test - C++ testing utility' +url='https://github.com/google/googletest' +arch=('x86_64') +license=('BSD') +makedepends=('python2' 'cmake' 'gcc-libs' 'sh' 'ninja') +_srcname=googletest-release-${pkgver} +source=(${_srcname}.tar.gz::https://github.com/google/googletest/archive/release-${pkgver}.tar.gz + gtest-1.8.1-libversion.patch + gtest-1.8.1-null-pointer.patch) +sha512sums=('e6283c667558e1fd6e49fa96e52af0e415a3c8037afe1d28b7ff1ec4c2ef8f49beb70a9327b7fc77eb4052a58c4ccad8b5260ec90e4bceeac7a46ff59c4369d7' + 'fd53e4a703c39cf4f1bc2eec2fac6c567e583d5e5a2ab4b52700ead77caf4f4903c4d32b8b25b983c5f650fc2b1e835fdf124b04a971705f42a707a42b34a99e' + 'afa75f975d8aed453c901245dae753939958d8b72e3e5c52995efe7980f44de4fd1ea08f1b0a4cc927443d858de0a1fe34a919512ce05ae443bfb9600b08f029') + +prepare() { + cd ${_srcname} + + # https://src.fedoraproject.org/rpms/gtest/tree/master + patch -Np1 -i ../gtest-1.8.1-libversion.patch + patch -Np1 -i ../gtest-1.8.1-null-pointer.patch + + find . -name '*.py' -exec sed -i '1s|python$|&2|g' {} + + + # fixup version as they are never correct + sed -E "s|(GOOGLETEST_VERSION) [0-9\\.]+|\\1 ${pkgver}|" -i CMakeLists.txt + sed -E "s|^( +)\\[[0-9\\.]+\\],$|\\1[${pkgver}],|" -i {googletest,googlemock,.}/configure.ac + sed -E "s|(GTEST_MIN_VERSION)=\"1.8.0\"|\\1=\"${pkgver}\"|" -i googlemock/configure.ac +} + +build() { + mkdir build build-ac + cd build + + cmake -G Ninja ../${_srcname} \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DBUILD_SHARED_LIBS=ON \ + -DPython_ADDITIONAL_VERSIONS=2.7 \ + -Dgtest_build_tests=ON + cmake --build . + + # Only for g{test,mock}-config + cd ../${_srcname}/googletest + autoreconf -fvi + ./configure --prefix=/usr + cd ../googlemock + autoreconf -fvi + ./configure --prefix=/usr +} + +check() { + cmake --build build --target test +} + +package_gtest() { + pkgdesc='Google Test - C++ testing utility based on the xUnit framework (like JUnit)' + depends=('gcc-libs' 'sh') + + DESTDIR="${pkgdir}" cmake --build build --target install + + # Shouldn't be present + find "${pkgdir}" -name '*.pump' -printf 'Removing %P\n' -delete + + # Split gmock + mkdir -p gmock/{include,lib/pkgconfig} + mv "${pkgdir}"/usr/include/gmock gmock/include/ + mv "${pkgdir}"/usr/lib/libgmock* gmock/lib/ + mv "${pkgdir}"/usr/lib/pkgconfig/gmock* gmock/lib/pkgconfig/ + + cd ${_srcname}/googletest + install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" + install -Dm 644 README.md CHANGES CONTRIBUTORS -t "${pkgdir}/usr/share/doc/${pkgname}" + install -Dm 755 scripts/gtest-config -t "${pkgdir}/usr/bin" + install -Dm 644 m4/gtest.m4 -t "${pkgdir}/usr/share/aclocal" + install -Dm 644 cmake/* -t "${pkgdir}/usr/src/gtest/cmake" + install -Dm 644 src/* -t "${pkgdir}/usr/src/gtest/src" + install -Dm 644 CMakeLists.txt -t "${pkgdir}/usr/src/gtest" +} + +package_gmock() { + pkgdesc='Google Mock - A library for writing and using C++ mock classes' + depends=('python2' 'gtest' 'gcc-libs' 'sh') + + mv gmock "${pkgdir}/usr" + + cd ${_srcname}/googlemock + install -Dm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}" + install -Dm 644 README.md CHANGES CONTRIBUTORS -t "${pkgdir}/usr/share/doc/${pkgname}" + install -Dm 755 scripts/gmock-config -t "${pkgdir}/usr/bin" + install -Dm 644 src/* -t "${pkgdir}/usr/src/gmock" + install -Dm 644 scripts/generator/{*.py,LICENSE,README*} -t "${pkgdir}/usr/share/gmock/generator" + install -Dm 644 scripts/generator/cpp/* -t "${pkgdir}/usr/share/gmock/generator/cpp" + + sed -i 's|src/||' "${pkgdir}/usr/src/gmock/gmock-all.cc" + + python2 -m compileall -d /usr/share/gmock "${pkgdir}/usr/share/gmock" + python2 -O -m compileall -d /usr/share/gmock "${pkgdir}/usr/share/gmock" +} + +# vim: ts=2 sw=2 et: Deleted: gmock-install.patch =================================================================== --- gmock-install.patch 2018-09-25 22:02:16 UTC (rev 385098) +++ gmock-install.patch 2018-09-25 22:02:52 UTC (rev 385099) @@ -1,79 +0,0 @@ -diff -urN gmock-1.7.0.orig/gtest/Makefile.am gmock-1.7.0/gtest/Makefile.am ---- a/googletest/Makefile.am 2013-09-23 22:34:27.649060735 -0700 -+++ b/googletest/Makefile.am 2013-09-23 22:39:16.097069357 -0700 -@@ -299,8 +299,2 @@ - --install-exec-local: -- echo "'make install' is dangerous and not supported. Instead, see README for how to integrate Google Test into your build system." -- false - --install-data-local: -- echo "'make install' is dangerous and not supported. Instead, see README for how to integrate Google Test into your build system." -- false ---- a/googlemock/Makefile.am -+++ b/googlemock/Makefile.am -@@ -7,6 +7,8 @@ EXTRA_DIST = LICENSE - # included in the 'subdirs' variable. --SUBDIRS = $(subdirs) - -+ -+bin_SCRIPTS = scripts/gmock-config -+ - # This is generated by the configure script, so clean it for distribution. - DISTCLEANFILES = scripts/gmock-config - -@@ -16,5 +19,8 @@ if HAVE_PTHREADS - lib_libgmock_la_SOURCES = src/gmock-all.cc - -+pkgconfigdir = $(libdir)/pkgconfig -+pkgconfig_DATA = gmock.pc -+ - pkginclude_HEADERS = \ - include/gmock/gmock-actions.h \ - include/gmock/gmock-cardinalities.h \ -@@ -207,10 +213,11 @@ CLEANFILES = core - # Mock can lead to undefined behavior due to violation of the - # One-Definition Rule. - --install-exec-local: -- echo "'make install' is dangerous and not supported. Instead, see README for how to integrate Google Mock into your build system." -- false -- --install-data-local: -- echo "'make install' is dangerous and not supported. Instead, see README for how to integrate Google Mock into your build system." -- false -+install-exec-hook: -+ install -d "$(DESTDIR)$(datadir)/@PACKAGE@" && echo 1 -+ cp -rf scripts/generator "$(DESTDIR)$(datadir)/@PACKAGE@" && echo 2 -+ python2 -m compileall "$(DESTDIR)$(datadir)/@PACKAGE@" && echo 3 -+ python2 -O -m compileall "$(DESTDIR)$(datadir)/@PACKAGE@" && echo 4 -+ install -Dm 644 src/*.cc -t "$(DESTDIR)$(prefix)/src/@PACKAGE@" && echo 5 -+ install -Dm 644 $(pkgconfig_DATA) -t "$(DESTDIR)$(pkgconfigdir)" && echo 6 -+ sed -i s/src[/]//g "$(DESTDIR)$(prefix)/src/@PACKAGE@/gmock-all.cc" && echo 7 ---- a/googlemock/Makefile.am 2016-09-28 17:47:02.926781189 +0200 -+++ b/googlemock/Makefile.am 2016-09-28 17:47:38.066834777 +0200 -@@ -42,10 +42,7 @@ - pkginclude_internal_HEADERS = \ - include/gmock/internal/gmock-generated-internal-utils.h \ - include/gmock/internal/gmock-internal-utils.h \ -- include/gmock/internal/gmock-port.h \ -- include/gmock/internal/custom/gmock-generated-actions.h \ -- include/gmock/internal/custom/gmock-matchers.h \ -- include/gmock/internal/custom/gmock-port.h -+ include/gmock/internal/gmock-port.h - - lib_libgmock_main_la_SOURCES = src/gmock_main.cc - lib_libgmock_main_la_LIBADD = lib/libgmock.la -diff --git a/configure.ac b/configure.ac -index d268d5d..9d23176 100644 ---- a/googlemock/configure.ac -+++ b/googlemock/configure.ac -@@ -10,7 +10,7 @@ AC_PREREQ([2.59]) - AC_CONFIG_SRCDIR([./LICENSE]) - AC_CONFIG_AUX_DIR([build-aux]) - AC_CONFIG_HEADERS([build-aux/config.h]) --AC_CONFIG_FILES([Makefile]) -+AC_CONFIG_FILES([Makefile gmock.pc]) - AC_CONFIG_FILES([scripts/gmock-config], [chmod +x scripts/gmock-config]) - - # Initialize Automake with various options. We require at least v1.9, prevent Deleted: gmock.pc.in =================================================================== --- gmock.pc.in 2018-09-25 22:02:16 UTC (rev 385098) +++ gmock.pc.in 2018-09-25 22:02:52 UTC (rev 385099) @@ -1,10 +0,0 @@ -Name: gmock -Description: Google C++ mocking framework -URL: https://github.com/google/googletest -Version: @VERSION@ - -prefix=@prefix@ -includedir=@includedir@ -srcdir=@prefix@/src/gmock - -Cflags: -I${includedir}/gmock Copied: gtest/repos/community-x86_64/gtest-1.8.1-libversion.patch (from rev 385098, gtest/trunk/gtest-1.8.1-libversion.patch) =================================================================== --- gtest-1.8.1-libversion.patch (rev 0) +++ gtest-1.8.1-libversion.patch 2018-09-25 22:02:52 UTC (rev 385099) @@ -0,0 +1,29 @@ +diff --git a/googlemock/CMakeLists.txt b/googlemock/CMakeLists.txt +index 8a8de1f..3d86a59 100644 +--- a/googlemock/CMakeLists.txt ++++ b/googlemock/CMakeLists.txt +@@ -109,8 +109,10 @@ if (MSVC) + else() + cxx_library(gmock "${cxx_strict}" src/gmock-all.cc) + target_link_libraries(gmock PUBLIC gtest) ++ set_target_properties(gmock PROPERTIES VERSION ${GOOGLETEST_VERSION}) + cxx_library(gmock_main "${cxx_strict}" src/gmock_main.cc) + target_link_libraries(gmock_main PUBLIC gmock) ++ set_target_properties(gmock_main PROPERTIES VERSION ${GOOGLETEST_VERSION}) + 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 +diff --git a/googletest/CMakeLists.txt b/googletest/CMakeLists.txt +index 9ee7940..8099130 100644 +--- a/googletest/CMakeLists.txt ++++ b/googletest/CMakeLists.txt +@@ -131,7 +131,9 @@ endif() + # are used for other targets, to ensure that gtest can be compiled by a user + # aggressive about warnings. + cxx_library(gtest "${cxx_strict}" src/gtest-all.cc) ++set_target_properties(gtest PROPERTIES VERSION ${GOOGLETEST_VERSION}) + cxx_library(gtest_main "${cxx_strict}" src/gtest_main.cc) ++set_target_properties(gtest_main PROPERTIES VERSION ${GOOGLETEST_VERSION}) + # 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 + # in via add_subdirectory() rather than being a standalone build). Copied: gtest/repos/community-x86_64/gtest-1.8.1-null-pointer.patch (from rev 385098, gtest/trunk/gtest-1.8.1-null-pointer.patch) =================================================================== --- gtest-1.8.1-null-pointer.patch (rev 0) +++ gtest-1.8.1-null-pointer.patch 2018-09-25 22:02:52 UTC (rev 385099) @@ -0,0 +1,17 @@ +diff --git a/googletest/src/gtest.cc b/googletest/src/gtest.cc +index 96b07c6..4af3e5a 100644 +--- a/googletest/src/gtest.cc ++++ b/googletest/src/gtest.cc +@@ -2693,10 +2693,12 @@ void TestInfo::Run() { + test->Run(); + } + ++ 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); + Deleted: gtest-pkgconfig.patch =================================================================== --- gtest-pkgconfig.patch 2018-09-25 22:02:16 UTC (rev 385098) +++ gtest-pkgconfig.patch 2018-09-25 22:02:52 UTC (rev 385099) @@ -1,27 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 281c4c2..e4354a8 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -29,6 +29,9 @@ - pre_project_set_up_hermetic_build() - endif() - -+# pkg-config support -+configure_file("gtest.pc.in" "gtest.pc" @ONLY) -+ - ######################################################################## - # - # Project-wide settings -@@ -71,6 +71,10 @@ - cxx_library(gtest_main "${cxx_strict}" src/gtest_main.cc) - target_link_libraries(gtest_main gtest) - -+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/gtest.pc" -+ DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig/" -+) -+ - ######################################################################## - # - # Samples on how to link user tests with gtest or gtest_main. --- -1.9.1 Deleted: gtest.pc.in =================================================================== --- gtest.pc.in 2018-09-25 22:02:16 UTC (rev 385098) +++ gtest.pc.in 2018-09-25 22:02:52 UTC (rev 385099) @@ -1,10 +0,0 @@ -Name: libgtest -Description: Google's framework for writing C++ tests on a variety of platforms -URL: https://github.com/google/googletest -Version: 0.0.0 - -prefix=@CMAKE_INSTALL_PREFIX@ -includedir=${prefix}/include -libdir=${prefix}/lib -Cflags:-I${includedir}/gtest -Libs: -L${libdir} -lgtest -lgtest_main