From 070c77515d1406e762e9e344856546f0a15765b6 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 18 Nov 2022 06:58:04 +0000 Subject: gentoo auto-resync : 18:11:2022 - 06:58:04 --- .../percona-xtrabackup-8.0.30.23.ebuild | 97 ++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 dev-db/percona-xtrabackup/percona-xtrabackup-8.0.30.23.ebuild (limited to 'dev-db/percona-xtrabackup/percona-xtrabackup-8.0.30.23.ebuild') diff --git a/dev-db/percona-xtrabackup/percona-xtrabackup-8.0.30.23.ebuild b/dev-db/percona-xtrabackup/percona-xtrabackup-8.0.30.23.ebuild new file mode 100644 index 000000000000..d0a696311550 --- /dev/null +++ b/dev-db/percona-xtrabackup/percona-xtrabackup-8.0.30.23.ebuild @@ -0,0 +1,97 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CMAKE_MAKEFILE_GENERATOR="emake" + +inherit cmake + +# TODO: just keep it unbundled...? +MY_BOOST_VERSION="1.77.0" +MY_PV=$(ver_rs 3 '-') +MY_PV="${MY_PV//_pre*}" +MY_PN="Percona-XtraBackup" +MY_P="${PN}-${MY_PV}" +MY_MAJOR_PV=$(ver_cut 1-2) + +DESCRIPTION="Hot backup utility for MySQL based servers" +HOMEPAGE="https://www.percona.com/software/mysql-database/percona-xtrabackup" +SRC_URI="https://www.percona.com/downloads/${MY_PN}-${MY_MAJOR_PV}/${MY_PN}-${MY_PV}/source/tarball/${PN}-${MY_PV}.tar.gz + https://boostorg.jfrog.io/artifactory/main/release/${MY_BOOST_VERSION}/source/boost_$(ver_rs 1- _ ${MY_BOOST_VERSION}).tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +DEPEND=" + app-arch/lz4:0= + app-editors/vim-core + dev-libs/icu:= + dev-libs/libaio + dev-libs/libedit + dev-libs/libev + dev-libs/libevent:0= + dev-libs/libfido2:= + dev-libs/libgcrypt:0= + dev-libs/libgpg-error + dev-libs/openssl:0= + dev-libs/protobuf:= + dev-libs/rapidjson + dev-libs/re2:= + dev-python/sphinx + net-misc/curl + sys-libs/zlib:=" + +RDEPEND=" + ${DEPEND} + !dev-db/percona-xtrabackup-bin + dev-perl/DBD-mysql" + +PATCHES=( + "${FILESDIR}"/${PN}-8.0.26-remove-rpm.patch +) + +S="${WORKDIR}/percona-xtrabackup-${MY_PV}" + +src_prepare() { + cmake_src_prepare + + local bundled_boost_version=$(sed -En '/^SET\(BOOST_PACKAGE_NAME /{s/[^0-9.]//gp}' cmake/boost.cmake) + if [[ ${MY_BOOST_VERSION//./} != ${bundled_boost_version} ]] ; then + eerror "Source Boost version: ${bundled_boost_version}" + eerror "Ebuild Boost version: ${MY_BOOST_VERSION}" + die "Ebuild needs to fix MY_BOOST_VERSION!" + fi +} + +src_configure() { + CMAKE_BUILD_TYPE="RelWithDebInfo" + + local mycmakeargs=( + -DCMAKE_C_FLAGS_RELWITHDEBINFO=-DNDEBUG + -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=-DNDEBUG + -DBUILD_SHARED_LIBS=OFF + -DCOMPILATION_COMMENT="Gentoo Linux ${PF}" + -DINSTALL_PLUGINDIR=$(get_libdir)/${PN}/plugin + -DWITH_BOOST="${WORKDIR}/boost_$(ver_rs 1- _ ${MY_BOOST_VERSION})" + -DWITH_MAN_PAGES=ON + -DWITH_SYSTEM_LIBS=ON + ) + + cmake_src_configure +} + +src_install() { + local p="${BUILD_DIR}/storage/innobase/xtrabackup" + + dobin "${p}"/xbcloud_osenv + dobin "${BUILD_DIR}"/runtime_output_directory/{xbcloud,xbcrypt,xbstream,xtrabackup} + + # cannot use dolib.so because helper would append libdir to target dir + insinto /usr/$(get_libdir)/${PN}/plugin + insopts -m 0755 + doins "${BUILD_DIR}"/plugin_output_directory/{keyring_file.so,keyring_vault.so} + + doman "${p}"/doc/source/build/man/* +} -- cgit v1.2.3