commit:     2b8ff7e7fd4fa732786eebe87b4e8ad4530b61bc
Author:     Sebastian Pipping <sping <AT> gentoo <DOT> org>
AuthorDate: Wed Oct  5 10:26:08 2022 +0000
Commit:     Sebastian Pipping <sping <AT> gentoo <DOT> org>
CommitDate: Wed Oct  5 10:26:34 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2b8ff7e7

net-libs/libaxc: Fix compilation with clang

Closes: https://bugs.gentoo.org/875104
Signed-off-by: Sebastian Pipping <sping <AT> gentoo.org>

 net-libs/libaxc/libaxc-0.3.7-r1.ebuild | 75 ++++++++++++++++++++++++++++++++++
 1 file changed, 75 insertions(+)

diff --git a/net-libs/libaxc/libaxc-0.3.7-r1.ebuild 
b/net-libs/libaxc/libaxc-0.3.7-r1.ebuild
new file mode 100644
index 000000000000..e217a88d83cf
--- /dev/null
+++ b/net-libs/libaxc/libaxc-0.3.7-r1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+MY_P="axc-${PV}"
+DESCRIPTION="Client library for libsignal-protocol-c"
+HOMEPAGE="https://github.com/gkdr/axc";
+SRC_URI="https://github.com/gkdr/axc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"  # not GPL-3+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs test"
+
+RDEPEND="
+       dev-db/sqlite
+       dev-libs/glib
+       dev-libs/libgcrypt
+       net-libs/libsignal-protocol-c
+       "
+DEPEND="
+       ${RDEPEND}
+       test? ( dev-util/cmocka )
+       "
+BDEPEND="virtual/pkgconfig"
+
+S="${WORKDIR}"/${MY_P}
+RESTRICT="!test? ( test )"
+
+DOCS=( CHANGELOG.md README.md )
+
+src_prepare() {
+       rm -R lib || die  # unbundle libsignal-protocol-c
+       default
+}
+
+src_compile() {
+       local make_args=(
+               PREFIX=/usr
+
+               AR="$(tc-getAR)"
+               CC="$(tc-getCC)"
+               PKG_CONFIG="$(tc-getPKG_CONFIG)"
+
+               ARCH=
+       )
+       emake "${make_args[@]}"
+}
+
+src_test() {
+       # TODO: Test failures seem to be ignored in the upstream Makefile?
+       # e.g. https://github.com/gkdr/axc/blob/master/Makefile#L153
+       emake CC="$(tc-getCC)" test
+}
+
+src_install() {
+       emake DESTDIR="${D}" PREFIX=/usr ARCH= install
+
+       # Respect libdir other than /usr/lib, e.g. /usr/lib64
+       local libdir="$(get_libdir)"
+       if [[ ${libdir} != lib ]]; then
+               mv "${ED}"/usr/{lib,${libdir}} || die
+               sed "s|^libdir=.*|libdir=\${prefix}/${libdir}|" \
+                               -i "${ED}/usr/${libdir}/pkgconfig/libaxc.pc" || 
die
+       fi
+
+       einstalldocs
+
+       if ! use static-libs ; then
+               rm "${ED}/usr/${libdir}/libaxc.a" || die
+       fi
+}

Reply via email to