summaryrefslogtreecommitdiff
path: root/dev-libs/libressl/libressl-scm.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libressl/libressl-scm.ebuild')
-rw-r--r--dev-libs/libressl/libressl-scm.ebuild66
1 files changed, 66 insertions, 0 deletions
diff --git a/dev-libs/libressl/libressl-scm.ebuild b/dev-libs/libressl/libressl-scm.ebuild
new file mode 100644
index 0000000..e89cc24
--- /dev/null
+++ b/dev-libs/libressl/libressl-scm.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils multilib-minimal git-r3
+
+DESCRIPTION="Free version of the SSL/TLS protocol forked from OpenSSL"
+HOMEPAGE="http://www.libressl.org/"
+SRC_URI=""
+EGIT_REPO_URI="https://github.com/libressl-portable/portable.git"
+
+LICENSE="ISC openssl"
+# Reflects ABI of libcrypto.so and libssl.so. Since these can differ,
+# we'll try to use the max of either. However, if either change between
+# versions, we have to change the subslot to trigger rebuild of consumers.
+SLOT="0/44"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86"
+IUSE="+asm static-libs"
+
+RDEPEND="!dev-libs/openssl:0"
+DEPEND="${RDEPEND}"
+PDEPEND="app-misc/ca-certificates"
+
+PATCHES=(
+ "${FILESDIR}/update.sh.patch"
+)
+
+src_unpack() {
+ git-r3_src_unpack
+ EGIT_REPO_URI="https://github.com/libressl-portable/openbsd.git"
+ EGIT_CHECKOUT_DIR=${WORKDIR}/${P}/openbsd
+ git-r3_src_unpack
+}
+
+src_prepare() {
+ default
+ ./autogen.sh
+ touch crypto/Makefile.in
+
+ sed -i \
+ -e '/^[ \t]*CFLAGS=/s#-g ##' \
+ -e '/^[ \t]*CFLAGS=/s#-g"#"#' \
+ -e '/^[ \t]*CFLAGS=/s#-O2 ##' \
+ -e '/^[ \t]*CFLAGS=/s#-O2"#"#' \
+ -e '/^[ \t]*USER_CFLAGS=/s#-O2 ##' \
+ -e '/^[ \t]*USER_CFLAGS=/s#-O2"#"#' \
+ configure || die "fixing CFLAGS failed"
+
+ eapply_user
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf \
+ $(use_enable asm) \
+ $(use_enable static-libs static)
+}
+
+multilib_src_test() {
+ emake check
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ prune_libtool_files
+}