commit:     fbc8b09098da7aee25c2b242a863f08596f61383
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 15 21:39:19 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jun 15 21:39:19 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fbc8b090

net-libs/gloox: fix build with GCC 12; fix bashism

Closes: https://bugs.gentoo.org/852182
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/gloox-1.0.24-bashism-configure.patch     | 11 ++++
 .../gloox/files/gloox-1.0.24-fix-gcc12-time.patch  | 21 +++++++
 net-libs/gloox/gloox-1.0.24-r1.ebuild              | 65 ++++++++++++++++++++++
 3 files changed, 97 insertions(+)

diff --git a/net-libs/gloox/files/gloox-1.0.24-bashism-configure.patch 
b/net-libs/gloox/files/gloox-1.0.24-bashism-configure.patch
new file mode 100644
index 000000000000..a9e09f113bcc
--- /dev/null
+++ b/net-libs/gloox/files/gloox-1.0.24-bashism-configure.patch
@@ -0,0 +1,11 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -51,7 +51,7 @@ if test -z "`${CC} check_atomicbuiltins.c -o 
check_atomicbuiltins 2>&1`" ; then
+       HAVE_GCC_ATOMIC_BUILTINS=yes
+       AC_DEFINE(HAVE_GCC_ATOMIC_BUILTINS, 1, [Define to 1 if GCC atomic 
builtins are available])
+       AC_MSG_RESULT([yes])
+-      if test $cross_compiling == "yes"; then
++      if test $cross_compiling = "yes"; then
+               # Some platforms don't seem to be fully happy for libraries 
using GCC atomic builtins
+               #  unless -lgcc and -lgcc_s are explicitly included.
+               # (Errors like

diff --git a/net-libs/gloox/files/gloox-1.0.24-fix-gcc12-time.patch 
b/net-libs/gloox/files/gloox-1.0.24-fix-gcc12-time.patch
new file mode 100644
index 000000000000..dc0c4cd1aced
--- /dev/null
+++ b/net-libs/gloox/files/gloox-1.0.24-fix-gcc12-time.patch
@@ -0,0 +1,21 @@
+https://bugs.gentoo.org/852182
+--- a/src/tests/tag/tag_perf.cpp
++++ b/src/tests/tag/tag_perf.cpp
+@@ -20,6 +20,7 @@ using namespace gloox;
+ #include <cstdlib>
+ #include <string>
+ #include <cstdio> // [s]print[f]
++#include <ctime>
+ 
+ #include <sys/time.h>
+ 
+--- a/src/tests/zlib/zlib_perf.cpp
++++ b/src/tests/zlib/zlib_perf.cpp
+@@ -24,6 +24,7 @@ using namespace gloox;
+ #include <string>
+ #include <sys/time.h>
+ #include <cstdio> // [s]print[f]
++#include <ctime>
+ 
+ #ifdef HAVE_ZLIB
+ 

diff --git a/net-libs/gloox/gloox-1.0.24-r1.ebuild 
b/net-libs/gloox/gloox-1.0.24-r1.ebuild
new file mode 100644
index 000000000000..4cef23c79743
--- /dev/null
+++ b/net-libs/gloox/gloox-1.0.24-r1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+MY_P="${P/_/-}"
+DESCRIPTION="A portable high-level Jabber/XMPP library for C++"
+HOMEPAGE="https://camaya.net/gloox/";
+SRC_URI="https://camaya.net/download/${MY_P}.tar.bz2";
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-3"
+# Check upstream changelog: https://camaya.net/gloox/changelog/
+SLOT="0/18"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="debug gnutls idn ssl static-libs test zlib"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       idn? ( net-dns/libidn:= )
+       gnutls? ( net-libs/gnutls:= )
+       ssl? (
+               dev-libs/openssl:0=
+       )
+       zlib? ( sys-libs/zlib )
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+       "${FILESDIR}/${PN}-1.0.24-musl.patch"
+       "${FILESDIR}/${PN}-1.0.24-Makefile.patch"
+       "${FILESDIR}/${PN}-1.0.24-slibtool.patch"
+       "${FILESDIR}/${PN}-1.0.24-pthread-link.patch"
+       "${FILESDIR}/${PN}-1.0.24-bashism-configure.patch"
+       "${FILESDIR}/${PN}-1.0.24-fix-gcc12-time.patch"
+)
+
+src_prepare() {
+       default
+       eautoreconf
+}
+
+src_configure() {
+       # Examples are not installed anyway, so - why should we build them?
+       local myeconfargs=(
+               --without-examples
+               $(usex debug "--enable-debug" '')
+               $(use_enable static-libs static)
+               $(use_with idn libidn)
+               $(use_with gnutls)
+               $(use_with ssl openssl)
+               $(use_with test tests)
+               $(use_with zlib)
+       )
+
+       econf "${myeconfargs[@]}"
+}
+
+src_install() {
+       default
+
+       find "${ED}" -name "*.la" -delete || die
+}

Reply via email to