| Version | EAPI | Keywords | Slot |
|---|---|---|---|
| 9999 | 8 | 0 |
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
EGIT_REPO_URI="https://github.com/wal-g/${PN}.git"
EGIT_SUBMODULES=()
inherit git-r3 go-module
DESCRIPTION="Archival restoration tool for databases"
HOMEPAGE="https://github.com/wal-g/wal-g"
LICENSE="Apache-2.0 GPL-3+"
SLOT="0"
IUSE="brotli etcd fdb gp lzo mongo mysql +postgres redis sqlserver sodium"
REQUIRED_USE="|| ( etcd fdb mongo mysql postgres redis )"
RESTRICT="test" # fails
RDEPEND="brotli? ( app-arch/brotli:= )
lzo? ( dev-libs/lzo:2 )
sodium? ( dev-libs/libsodium:= )"
src_unpack() {
git-r3_src_unpack
go-module_live_vendor
}
src_compile() {
COMMIT="$(git rev-parse --short HEAD)"
DATE="$(date -u '+%Y-%m-%d-%H%M UTC')"
TAGS="$(usex brotli brotli '' '' '') $(usex lzo lzo '' '' '') $(usex sodium libsodium '' '' '')"
for db in etcd fdb gp mongo mysql postgres redis sqlserver ; do
if use "$db" ; then
if [ "$db" == "postgres" ] ; then db="pg" ; fi
ego build -o wal-g-"$db" -tags "${TAGS}" \
-ldflags "-X github.com/wal-g/wal-g/cmd/$db.walgVersion=${PV}
-X \"github.com/wal-g/wal-g/cmd/$db.buildDate=${DATE}\"
-X github.com/wal-g/wal-g/cmd/$db.gitRevision=${COMMIT}" \
./main/"$db"/...
fi
done
}
src_test() {
ego test -work ./...
}
src_install() {
einstalldocs
use etcd && dobin wal-g-etcd
use fdb && dobin wal-g-fdb
use gp && dobin wal-g-gp
use mongo && dobin wal-g-mongo
use mysql && dobin wal-g-mysql
use postgres && dobin wal-g-pg
use redis && dobin wal-g-redis
use sqlserver && dobin wal-g-sqlserver
}
brotli? ( app-arch/brotli:= ) lzo? ( dev-libs/lzo:2 ) sodium? ( dev-libs/libsodium:= )