Name re2
Description Efficient, principled regular expression library
Version 2024.07.02-r3
Package Base re2
Homepage https://github.com/google/re2
Maintainers ['Francesco Colista <fcolista@alpinelinux.org>']
Contributors ['Francesco Colista <fcolista@alpinelinux.org>']
Distro-repo https://gitlab.alpinelinux.org/alpine/aports/-/tree/3.22-stable/community/re2
Sources ['$pkgname-2024.07.02-r3.tar.gz::https://github.com/google/re2/archive/$_pkgver.tar.gz']
Dependencies ['libabsl_hash.so.2407.0.0', 'libabsl_log_internal_check_op.so.2407.0.0', 'libabsl_log_internal_message.so.2407.0.0', 'libabsl_raw_hash_set.so.2407.0.0', 'libabsl_raw_logging_internal.so.2407.0.0', 'libabsl_spinlock_wait.so.2407.0.0', 'libabsl_str_format_internal.so.2407.0.0', 'libabsl_strings.so.2407.0.0', 'libabsl_synchronization.so.2407.0.0', 'libc.musl-x86_64.so.1', 'libgcc_s.so.1', 'libicuuc.so.76', 'libstdc++.so.6', 'py3-pybind11']
Optional-Dependencies []
Build-Dependencies ['abseil-cpp-dev', 'cmake', 'icu-dev', 'samurai', 'py3-gpep517', 'py3-setuptools', 'py3-wheel', 'py3-pybind11-dev', 'python3-dev']
Provides ['libre2=2024.07.02-r3', 'so:libre2.so.11=11.0.0']
Builddate 27-03-2025 13:20:03
Architecture x86_64
Distro-Version v3.22
Licenses ['BSD-3-Clause']
Hash Q1ACPCliqx2/7mQCKjGbwxweTo2iU=
# Contributor: Francesco Colista <fcolista@alpinelinux.org>
# Maintainer: Francesco Colista <fcolista@alpinelinux.org>
pkgname=re2
pkgver=2024.07.02
_pkgver=${pkgver//./-}
pkgrel=3
pkgdesc="Efficient, principled regular expression library"
url="https://github.com/google/re2"
arch="all"
license="BSD-3-Clause"
makedepends="
	abseil-cpp-dev
	cmake
	icu-dev
	samurai
	py3-gpep517
	py3-setuptools
	py3-wheel
	py3-pybind11-dev
	python3-dev
	"
checkdepends="
	benchmark-dev
	gtest-dev
	"
subpackages="$pkgname-dev py3-$pkgname-pyc:pyc py3-$pkgname:py3"
provides="libre2=$pkgver-r$pkgrel"
source="$pkgname-$pkgver.tar.gz::https://github.com/google/re2/archive/$_pkgver.tar.gz"
builddir="$srcdir"/$pkgname-$_pkgver

build() {
	export CXXFLAGS="$CXXFLAGS -O2 -flto=auto"
	cmake -B build -G Ninja \
		-DCMAKE_BUILD_TYPE=None \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DBUILD_SHARED_LIBS=ON \
		-DRE2_USE_ICU=ON \
		-DRE2_BUILD_TESTING="$(want_check && echo ON || echo OFF)"
	cmake --build build
	# python build
	cd python
	export CPATH=:$builddir
	export LIBRARY_PATH=:$builddir/build
	gpep517 build-wheel \
		--wheel-dir .dist \
		--output-fd 3 3>&1 >&2
}

check() {
	ctest --test-dir build
}

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

	cd "$builddir"/python
	python3 -m installer -d "$pkgdir" \
		.dist/*.whl
}

py3() {
	pkgdesc="Python3 wrapper for Google re2"
	depends="py3-pybind11"
	install_if="$pkgname=$pkgver-r$pkgrel python3"

	amove usr/lib/python*
}

sha512sums="
3776383355ccfdec85e0cdfb3ce980c6ecb3c336d603dd34c0a547c7c06a6243947a13cb352372335edac12d4f28cf1b7a51d034f5b34db3e46cbcac5e3f7479  re2-2024.07.02.tar.gz
"