Skip to content

Instantly share code, notes, and snippets.

@liborw
Last active December 2, 2019 13:34
Show Gist options
  • Select an option

  • Save liborw/2af80305e3005184a21a576ba9913891 to your computer and use it in GitHub Desktop.

Select an option

Save liborw/2af80305e3005184a21a576ba9913891 to your computer and use it in GitHub Desktop.
Arch PKGBUILD for googletest
# Maintainer: Chocobo1 <chocobo1 AT archlinux DOT net>
pkgname=googletest
pkgver=1.8.1
pkgrel=1
pkgdesc="Google's C++ test framework"
arch=('i686' 'x86_64')
url="https://github.com/google/googletest"
license=('BSD')
depends=('gcc-libs' 'sh')
makedepends=('cmake')
provides=('gmock' 'gtest')
conflicts=('gmock' 'gtest')
_srcname=googletest-release-${pkgver}
source=("$pkgname-$pkgver.tar.gz"::"https://github.com/google/googletest/archive/release-$pkgver.tar.gz")
sha256sums=('SKIP')
build() {
cmake -H${_srcname} -Bbuild \
-DCMAKE_INSTALL_PREFIX="/usr" \
-DCMAKE_INSTALL_LIBDIR="lib" \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_SHARED_LIBS=ON \
-Dgtest_build_tests=ON
cmake --build build
# Only for g{test,mock}-config
cd ${_srcname}/googletest
autoreconf -fvi
./configure --prefix=/usr
cd ../googlemock
autoreconf -fvi
./configure --prefix=/usr
}
package() {
DESTDIR="${pkgdir}" cmake --build build --target install
# Shouldn't be present
find "${pkgdir}" -name '*.pump' -printf 'Removing %P\n' -delete
install -Dm 644 ../src/${_srcname}/googletest/LICENSE -t "${pkgdir}/usr/share/licenses/googletest"
install -Dm 644 ../src/${_srcname}/googletest/{README.md,CHANGES,CONTRIBUTORS} -t "${pkgdir}/usr/share/doc/googletest"
install -Dm 755 ../src/${_srcname}/googletest/scripts/gtest-config -t "${pkgdir}/usr/bin"
install -Dm 644 ../src/${_srcname}/googletest/m4/gtest.m4 -t "${pkgdir}/usr/share/aclocal"
install -Dm 644 ../src/${_srcname}/googletest/cmake/* -t "${pkgdir}/usr/src/googletest/googletest/cmake"
install -Dm 644 ../src/${_srcname}/googletest/src/* -t "${pkgdir}/usr/src/googletest/googletest/src"
install -Dm 644 ../src/${_srcname}/googletest/CMakeLists.txt -t "${pkgdir}/usr/src/googletest/googletest/"
install -Dm 644 ../src/${_srcname}/googlemock/LICENSE -t "${pkgdir}/usr/share/licenses/googlemock"
install -Dm 644 ../src/${_srcname}/googlemock/{README.md,CHANGES,CONTRIBUTORS} -t "${pkgdir}/usr/share/doc/googlemock"
install -Dm 755 ../src/${_srcname}/googlemock/scripts/gmock-config -t "${pkgdir}/usr/bin"
install -Dm 644 ../src/${_srcname}/googlemock/src/* -t "${pkgdir}/usr/src/googletest/googlemock/src"
install -Dm 644 ../src/${_srcname}/googlemock/cmake/* -t "${pkgdir}/usr/src/googletest/googlemock/cmake"
install -Dm 644 ../src/${_srcname}/googlemock/scripts/generator/{*.py,LICENSE,README*} -t "${pkgdir}/usr/share/gmock/generator"
install -Dm 644 ../src/${_srcname}/googlemock/scripts/generator/cpp/* -t "${pkgdir}/usr/share/gmock/generator/cpp"
install -Dm 644 ../src/${_srcname}/googlemock/CMakeLists.txt -t "${pkgdir}/usr/src/googletest/googlemock/"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment