git: 4f5bbb33f2a2 - main - security/vaultwarden: Optionsify database backends

From: Bernard Spil <brnrd_at_FreeBSD.org>
Date: Sun, 12 Nov 2023 10:59:27 UTC
The branch main has been updated by brnrd:

URL: https://cgit.FreeBSD.org/ports/commit/?id=4f5bbb33f2a2ae9d0a25bc4d0ca89e15a921d16c

commit 4f5bbb33f2a2ae9d0a25bc4d0ca89e15a921d16c
Author:     Bernard Spil <brnrd@FreeBSD.org>
AuthorDate: 2023-11-12 10:57:13 +0000
Commit:     Bernard Spil <brnrd@FreeBSD.org>
CommitDate: 2023-11-12 10:57:13 +0000

    security/vaultwarden: Optionsify database backends
    
     * redo 687ab26524e52c866295a9ff5c7956fd5f71397f [1]
     * was reverted with 04ea2d6456297a759d2c3a887aa2001049397d7b [2]
    
    PR:             274049 [1], 274962 [2]
---
 security/vaultwarden/Makefile | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/security/vaultwarden/Makefile b/security/vaultwarden/Makefile
index 7c06e0a92fd0..356ca42c9225 100644
--- a/security/vaultwarden/Makefile
+++ b/security/vaultwarden/Makefile
@@ -13,7 +13,7 @@ LIB_DEPENDS+=	libcapnp.so:devel/capnproto \
 		libgmp.so:math/gmp \
 		libnettle.so:security/nettle
 
-USES=		cargo mysql:client pgsql ssl
+USES=		cargo ssl
 
 # make makeplist > pkg-plist #One has to edit/review the generated plist
 # make generate-plist && make check-plist
@@ -26,15 +26,23 @@ GROUPS=		${WWWGRP}
 PLIST_SUB=	WWWOWN=${WWWOWN} WWWGRP=${WWWGRP}
 
 OPTIONS_DEFINE=	WEBVAULT
-OPTIONS_DEFAULT=WEBVAULT
+OPTIONS_DEFAULT=${OPTIONS_DEFINE} ${OPTIONS_MULTI_DATABASE}
+OPTIONS_MULTI=	DATABASE
+OPTIONS_MULTI_DATABASE=	MYSQL PGSQL SQLITE
 
+DATABASE_DESC=	Database support
 WEBVAULT_DESC=	Vaultwarden web (bw_web_builds)
 
+MYSQL_USES=	mysql:client
+MYSQL_VARS=	cargo_features+=mysql
+PGSQL_USES=	pgsql
+PGSQL_VARS=	cargo_features+=postgresql
+SQLITE_VARS=	cargo_features+=sqlite
 WEBVAULT_RUN_DEPENDS=	${WWWDIR}/web-vault/index.html:www/vaultwarden-web_vault
 
 # make cargo-crates > Makefile.crates
 
-CARGO_FEATURES=	mysql postgresql sqlite #vendored_openssl
+CARGO_FEATURES=	--no-default-features
 #CARGO_ENV+=	RUSTC_BOOTSTRAP=1
 
 INSTALL_TARGET=	install-strip