# Template file for 'libressl'
pkgname=libressl
version=2.3.7
revision=1
bootstrap=yes
build_style=gnu-configure
short_desc="Version of the TLS/crypto stack forked from OpenSSL"
maintainer="Juan RP <xtraeme@voidlinux.eu>"
license="OpenSSL-License, SSLeay-License, ISC"
homepage="http://www.libressl.org/"
distfiles="http://ftp.openbsd.org/pub/OpenBSD/LibreSSL/${pkgname}-${version}.tar.gz"
checksum=f59f5d859ce4867cc4761a13d02024f699491e277d54a9fe76e053e5b5f70860

provides="openssl-${version}_${revision}"
replaces="openssl>=0"
conf_files="/etc/ssl/openssl.cnf /etc/ssl/x509v3.cnf"

if [ "$XBPS_TARGET_MACHINE" = "i686-musl" ]; then
	# XXX disable SSP
	configure_args+=" --disable-hardening"
elif [ "$XBPS_TARGET_MACHINE" = "armv5tel" ]; then
	configure_args+=" --disable-asm"
fi

if [ "$CROSS_BUILD" ]; then
	hostmakedepends="automake libtool"
	pre_configure() {
		autoreconf -fi
	}
fi

post_install() {
	# Use CA file from ca-certificates instead.
	rm -f ${DESTDIR}/etc/ssl/cert.pem
	ln -s certs.pem ${DESTDIR}/etc/ssl/cert.pem

	vlicense COPYING
	find ${DESTDIR}/usr/share/man/man1 -type f ! -name openssl.1 -delete
}

libcrypto37_package() {
	short_desc+=" - crypto library"
	pkg_install() {
		vmove usr/lib/libcrypto.so.*
	}
}
libssl38_package() {
	short_desc+=" - SSL/TLS library"
	pkg_install() {
		vmove usr/lib/libssl.so.*
	}
}
libtls10_package() {
	short_desc+=" - new TLS library"
	pkg_install() {
		vmove usr/lib/libtls.so.*
	}
}
libressl-devel_package() {
	short_desc+=" - development files"
	depends="libcrypto37-${version}_${revision} libssl38-${version}_${revision} libtls10-${version}_${revision}"
	pkg_install() {
		vmove usr/include
		vmove usr/lib/*.a
		vmove usr/lib/*.so
		vmove usr/lib/pkgconfig
		vmove usr/share/man/man3
	}
}
libressl-netcat_package() {
	short_desc="TCP/IP swiss army knife (LibreSSL variant)"
	alternatives="
	 nc:nc:/usr/bin/libressl-nc
	 nc:nc.1:/usr/share/man/man1/libressl-nc.1"
	pkg_install() {
		vbin apps/nc/.libs/nc libressl-nc
		vman apps/nc/nc.1 libressl-nc.1
	}
}