# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

CHECKREQS_DISK_BUILD="32G"

inherit cmake dot-a check-reqs

DESCRIPTION="high-performance analytical database system"
HOMEPAGE="https://duckdb.org https://github.com/duckdb/duckdb"

SRC_URI="https://github.com/duckdb/duckdb/archive/v${PV}.tar.gz -> ${P}.tar.gz"

LICENSE="MIT"

SLOT="0"
KEYWORDS="~amd64"

RESTRICT="test"

DEPEND="app-arch/brotli:="
RDEPEND="${DEPEND}"
BDEPEND="virtual/pkgconfig"

PATCHES=(
	"${FILESDIR}/${P}-system-brotli.patch"
)

src_prepare() {
	cd third_party/thrift/thrift/transport/
	eapply "${FILESDIR}/thrift-cstdint.patch"
	cd "${S}"
	rm -r third_party/brotli || die
	eapply_user
	cmake_src_prepare
}

src_configure() {
	lto-guarantee-fat
	mycmakeargs=( "-DINSTALL_LIB_DIR=${EPREFIX}/usr/$(get_libdir)/"
		"-DOVERRIDE_GIT_DESCRIBE=v${PV}"
		"-DBUILD_EXTENSIONS='autocomplete;icu;tpch;tpcds;json;jemalloc'"
		"-DCXX_EXTRA=${CXXFLAGS}"
		)
	cmake_src_configure
}

src_install() {
	cmake_src_install
	strip-lto-bytecode
}
