commit: d7f861624c8c3cad1aa2e791b866f6a676eff08e Author: Brahmajit Das <brahmajit.xyz <AT> gmail <DOT> com> AuthorDate: Thu Jul 20 19:01:06 2023 +0000 Commit: Hans de Graaff <graaff <AT> gentoo <DOT> org> CommitDate: Fri Jul 21 06:43:30 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d7f86162
dev-ruby/ruby-ldap: Fix incompatible function pointer types Closes: https://bugs.gentoo.org/884405 Signed-off-by: Brahmajit Das <brahmajit.xyz <AT> gmail.com> Signed-off-by: Hans de Graaff <graaff <AT> gentoo.org> .../files/ruby-ldap-0.9.20-clang16-fix.patch | 12 +++++++ dev-ruby/ruby-ldap/ruby-ldap-0.9.20-r4.ebuild | 38 ++++++++++++++++++++++ 2 files changed, 50 insertions(+) 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 +}
