If "static" USE flag is set, it makes sense to do static link for
user-space executables.
LICENSE="GPL-2 LGPL-2.1"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="libressl"
+IUSE="libressl static"
-RDEPEND="!libressl? ( dev-libs/openssl:0= )
- libressl? ( dev-libs/libressl:0= )
+LIB_DEPEND="!libressl? ( dev-libs/openssl:0=[static-libs(+)] )
+ libressl? ( dev-libs/libressl:0=[static-libs(+)] )"
+
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
sys-apps/util-linux"
DEPEND="${RDEPEND}
app-crypt/sbsigntool
dev-perl/File-Slurp
+ static? (
+ ${LIB_DEPEND}
+ dev-util/pkgconfig
+ )
sys-apps/help2man
sys-boot/gnu-efi
virtual/pkgconfig"
)
src_prepare() {
+ if use static; then
+ append-ldflags -static
+ sed -i 's/-lcrypto/`pkg-config --static --libs libcrypto`/g' Makefile || die
+ fi
+
# Respect users CFLAGS
sed -i -e 's/CFLAGS.*= -O2 -g/CFLAGS += /' Make.rules || die