# Contributor: Leo <thinkabit.ukim@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=flatbuffers
pkgver=25.2.10
pkgrel=0
pkgdesc="Memory Efficient Serialization Library"
url="https://flatbuffers.dev/"
# armhf: blocked by bus error in tests
arch="all !armhf"
license="Apache-2.0"
depends_dev="flatc=$pkgver-r$pkgrel"
makedepends="
	cmake
	py3-gpep517
	py3-setuptools
	py3-wheel
	samurai
	"
subpackages="$pkgname-dev flatc py3-$pkgname-pyc py3-$pkgname:py3"
source="flatbuffers-$pkgver.tar.gz::https://github.com/google/flatbuffers/archive/v$pkgver.tar.gz
	locale-headers.patch
	"

# secfixes:
#   0:
#     - CVE-2020-35864

build() {
	cmake -B . -G Ninja \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DCMAKE_INSTALL_LIBDIR=lib \
		-DCMAKE_BUILD_TYPE=MinSizeRel \
		-DFLATBUFFERS_BUILD_SHAREDLIB=ON \
		-DFLATBUFFERS_BUILD_FLATLIB=OFF
	cmake --build .

	cd python
	gpep517 build-wheel \
		--wheel-dir ../build/dist \
		--output-fd 3 3>&1 >&2
}

check() {
	ctest
}

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

	python3 -m installer -d "$pkgdir" \
		build/dist/*.whl
}

flatc() {
	pkgdesc="$pkgdesc (compiler)"

	amove usr/bin
}

py3() {
	pkgdesc="$pkgdesc (python bindings)"
	amove usr/lib/python3*
}

sha512sums="
7e6ae36b37c9fd322456312504156c8241852e07a2a23de6805eb2328b61b9f42b839d04b839f9d97623195721308437a1163a25071ca2af0d00a6417da74822  flatbuffers-25.2.10.tar.gz
a5460ec027f2884f5801e01d3ef7f831be3ecd92fc9586ab33764467e3de79855f87c4b639806ad6884ec8eac41d6d6f6204644c84ddbcea9fba3798943b1e57  locale-headers.patch
"
