# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=snappy
pkgver=1.2.2
pkgrel=0
_googletest_commit=b796f7d44681514f58a683a3a71ff17c94edb0c1
pkgdesc="Fast compression and decompression library"
url="https://github.com/google/snappy"
arch="all"
license="BSD-3-Clause"
makedepends="cmake samurai"
subpackages="$pkgname-dbg $pkgname-static $pkgname-dev $pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://github.com/google/snappy/archive/$pkgver.tar.gz
	googletest-$_googletest_commit.tar.gz::https://github.com/google/googletest/archive/$_googletest_commit.tar.gz
	cmakelists.patch
	no-include-gtest.patch
	rtti.patch
	"

prepare() {
	rmdir third_party/googletest
	ln -s "$srcdir"/googletest-$_googletest_commit third_party/googletest
	default_prepare
}

build() {
	if [ "$CBUILD" != "$CHOST" ]; then
		CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
	fi
	CFLAGS="$CFLAGS -O2 -flto=auto -ffat-lto-objects -DNDEBUG" \
	CXXFLAGS="$CXXFLAGS -O2 -flto=auto -ffat-lto-objects -DNDEBUG" \
	cmake -B build -G Ninja \
		-DCMAKE_BUILD_TYPE=None \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DCMAKE_INSTALL_LIBDIR=/usr/lib \
		-DBUILD_SHARED_LIBS=ON \
		-DBUILD_STATIC_LIBS=ON \
		-DSNAPPY_BUILD_BENCHMARKS=OFF \
		-DSNAPPY_BUILD_TESTS=ON \
		$CMAKE_CROSSOPTS
	cmake --build build
}

check() {
	cd build
	ctest
}

package() {
	DESTDIR="$pkgdir" cmake --install build

	local file; for file in AUTHORS CONTRIBUTING.md COPYING NEWS README.md \
		format_description.txt framing_format.txt; do
		install -m644 -D $file "$pkgdir"/usr/share/doc/$pkgname/$file
	done
}

sha512sums="
0c1e1019e1bec9281f9877996d896e59e1533456130143224acb9cbfc35c1b0dd9de0a76e4a36494844d9ec58c295eed8c50bdf6dbabe47cf679652eb24b1281  snappy-1.2.2.tar.gz
97df9326ac2f64cd5e0f809182c9b09beef85f91c661e83363f7cb013eb38d9a31f02ded269b314b403f29708c6ee2c6b9fff277eb8fefb20d5c1945b3acdd30  googletest-b796f7d44681514f58a683a3a71ff17c94edb0c1.tar.gz
9de467922ecfea32dd5200c5959c19192abf4d823eab2ea8dd718a11555dbcf33c0d2186f7750fcc0b00040e1ad0916c63fc95f3e7618105e9879ba24f9da5db  cmakelists.patch
b9aeec944e8f7ef89035ff827772c28bb7404529f82fc70d8ed54b1db98deaa25fb1e5cbbda8f13c9d684c8a376c5654071aea11f89e69960e5b338cdbd2d8a2  no-include-gtest.patch
0f39012a1830037ff1b1d7a7a39212aa8040caae1bec088c2a158bcb06a44ec0870dc384e89c2d74fde694b20522702f987afa29de863a64160b0053dc57f4c0  rtti.patch
"
