# Template file for 'cryptsetup'
pkgname=cryptsetup
version=2.1.0
revision=2
build_style=gnu-configure
configure_args="--with-crypto_backend=openssl $(vopt_enable pwquality)
 --enable-cryptsetup-reencrypt --enable-libargon2"
hostmakedepends="pkg-config"
makedepends="device-mapper-devel json-c-devel libressl-devel popt-devel
 libargon2-devel $(vopt_if pwquality 'libpwquality-devel')"
short_desc="Setup virtual encryption devices under Linux dm-crypt"
maintainer="Juan RP <xtraeme@voidlinux.org>"
license="GPL-2.0-or-later"
homepage="https://gitlab.com/cryptsetup/cryptsetup"
changelog="https://gitlab.com/cryptsetup/cryptsetup/raw/master/docs/v${version}-ReleaseNotes"
distfiles="${KERNEL_SITE}/utils/cryptsetup/v${version%.*}/${pkgname}-${version}.tar.xz"
checksum=a3eeb2741f8f3376d16585191f3c60e067dd987e096c3c4b073fab7748b1c897
subpackages="libcryptsetup cryptsetup-devel"

build_options="pwquality"
desc_option_pwquality="Enable support for checking password quality via libpwquality"

case $XBPS_TARGET_MACHINE in
	*-musl)
	configure_args+=" --enable-static-cryptsetup"
	subpackages+=" cryptsetup-static"
	;;
esac

cryptsetup-static_package() {
	short_desc+=" - static cryptsetup"
	pkg_install() {
		vmove "usr/bin/*.static"
	}
}

libcryptsetup_package() {
	short_desc+=" - runtime libraries"
	pkg_install() {
		vmove "usr/lib/*.so.*"
	}
}

cryptsetup-devel_package() {
	depends="libcryptsetup>=${version}_${revision}"
	short_desc+=" - development files"
	pkg_install() {
		vmove usr/include
		vmove usr/lib/pkgconfig
		vmove "usr/lib/*.so"
		case $XBPS_TARGET_MACHINE in
			*-musl)
				vmove "usr/lib/*.a"
			;;
		esac
	}
}
