summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrahmajit Das <brahmajit.xyz@gmail.com>2023-07-21 00:31:06 +0530
committerHans de Graaff <graaff@gentoo.org>2023-07-21 08:43:30 +0200
commitd7f861624c8c3cad1aa2e791b866f6a676eff08e (patch)
tree3b2feb85d60be02795e70805c1314c2095265009 /dev-ruby/ruby-ldap
parentdev-cpp/cppgir: adjust dependencies (diff)
downloadgentoo-d7f861624c8c3cad1aa2e791b866f6a676eff08e.tar.gz
gentoo-d7f861624c8c3cad1aa2e791b866f6a676eff08e.tar.bz2
gentoo-d7f861624c8c3cad1aa2e791b866f6a676eff08e.zip
dev-ruby/ruby-ldap: Fix incompatible function pointer types
Closes: https://bugs.gentoo.org/884405 Signed-off-by: Brahmajit Das <brahmajit.xyz@gmail.com> Signed-off-by: Hans de Graaff <graaff@gentoo.org>
Diffstat (limited to 'dev-ruby/ruby-ldap')
-rw-r--r--dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-clang16-fix.patch12
-rw-r--r--dev-ruby/ruby-ldap/ruby-ldap-0.9.20-r4.ebuild38
2 files changed, 50 insertions, 0 deletions
diff --git a/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-clang16-fix.patch b/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-clang16-fix.patch
new file mode 100644
index 000000000000..580584c61994
--- /dev/null
+++ b/dev-ruby/ruby-ldap/files/ruby-ldap-0.9.20-clang16-fix.patch
@@ -0,0 +1,12 @@
+Bug: https://bugs.gentoo.org/884405
+--- a/ldap.c
++++ b/ldap.c
+@@ -201,7 +201,7 @@ rb_ldap_hash2mods (VALUE self, VALUE op, VALUE hash)
+ VALUE tmp;
+
+ tmp = rb_assoc_new (op, rb_ary_new ());
+- rb_iterate (rb_each, hash, rb_ldap_hash2mods_i, tmp);
++ rb_iterate (rb_each, hash, (rb_block_call_func_t)rb_ldap_hash2mods_i, tmp);
+
+ return rb_ary_entry (tmp, 1);
+ }
diff --git a/dev-ruby/ruby-ldap/ruby-ldap-0.9.20-r4.ebuild b/dev-ruby/ruby-ldap/ruby-ldap-0.9.20-r4.ebuild
new file mode 100644
index 000000000000..117ecd8ad824
--- /dev/null
+++ b/dev-ruby/ruby-ldap/ruby-ldap-0.9.20-r4.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby26 ruby27 ruby30 ruby31"
+
+inherit ruby-fakegem
+
+RUBY_FAKEGEM_TASK_TEST=""
+RUBY_FAKEGEM_EXTENSIONS=(./extconf.rb)
+RUBY_FAKEGEM_EXTRADOC="ChangeLog FAQ NOTES README TODO"
+
+DESCRIPTION="A Ruby interface to some LDAP libraries"
+HOMEPAGE="https://github.com/bearded/ruby-ldap"
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="ssl"
+DEPEND=">=net-nds/openldap-2:=
+ dev-libs/cyrus-sasl
+ ssl? ( dev-libs/openssl:0= )"
+RDEPEND="${DEPEND}"
+
+# Current test set is interactive due to certificate generation and requires
+# running LDAP daemon
+RESTRICT="test"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.20-clang16-fix.patch
+)
+
+each_ruby_configure() {
+ local myconf="--with-openldap2"
+ if ! use ssl ; then
+ myconf="${myconf} --without-libcrypto --without-libssl"
+ fi
+ RUBY_FAKEGEM_EXTENSION_OPTIONS=${myconf} each_fakegem_configure
+}