[gentoo-commits] repo/gentoo:master commit in: net-libs/c-client/files/, net-libs/c-client/
commit: 324b4dc522e9fed3f843e43c1c9c1f1256d14f96 Author: Petr Vaněk atlas cz> AuthorDate: Wed Oct 5 11:19:00 2022 + Commit: Sam James gentoo org> CommitDate: Fri Oct 7 11:28:00 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=324b4dc5 net-libs/c-client: fix clang-16 build issues This fixes bug 870478 by applying two patches. First patch resolves implicit function declaration issues by defining safe_lock function prototype and adding utime.h missing include. The second patch corrects function pointer types for callbacks used in scandir function. Additionally: - EAPI bumped to 8 - remove 3 years dead blocker net-mail/uw-imap, removed in commit 6b4c9212b3da ("net-mail/uw-imap: Remove last-rited pkg") Closes: https://bugs.gentoo.org/870478 Signed-off-by: Petr Vaněk atlas.cz> Signed-off-by: Sam James gentoo.org> net-libs/c-client/c-client-2007f-r8.ebuild | 161 .../c-client-2007f-implicit-declaration-fix.patch | 34 + .../c-client-2007f-scandir-callback-types.patch| 167 + 3 files changed, 362 insertions(+) diff --git a/net-libs/c-client/c-client-2007f-r8.ebuild b/net-libs/c-client/c-client-2007f-r8.ebuild new file mode 100644 index ..40a809309c13 --- /dev/null +++ b/net-libs/c-client/c-client-2007f-r8.ebuild @@ -0,0 +1,161 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic libtool toolchain-funcs + +MY_PN=imap +MY_P="${MY_PN}-${PV}" +S=${WORKDIR}/${MY_P} + +CHAPPA_PL=115 +DESCRIPTION="UW IMAP c-client library" +HOMEPAGE="http://www.washington.edu/imap/; +SRC_URI="ftp://ftp.cac.washington.edu/imap/${MY_P}.tar.Z + chappa? ( mirror://gentoo/${P}-chappa-${CHAPPA_PL}-all.patch.gz )" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc +ipv6 kerberos pam ssl static-libs topal chappa" + +RDEPEND=" + ssl? ( + dev-libs/openssl:0= + ) + kernel_linux? ( + pam? ( >=sys-libs/pam-0.72 ) + !pam? ( virtual/libcrypt:= ) + ) + kerberos? ( app-crypt/mit-krb5 ) +" +DEPEND="${RDEPEND}" + +PATCHES=( + # Apply a patch to only build the stuff we need for c-client + "${FILESDIR}/${PN}-2006k_GENTOO_Makefile.patch" + + # Apply patch to add the compilation of a .so for PHP + # This was previously conditional, but is more widely useful. + "${FILESDIR}/${PN}-2006k_GENTOO_amd64-so-fix.patch" + + # Respect LDFLAGS + "${FILESDIR}/${PN}-2007f-ldflags.patch" + + # openssl-1.1 build fix #647616 + "${FILESDIR}/${PN}-2007f-openssl-1.1.patch" + + # build fix for -Werror=implicit-function-declaration and + # incompatible function pointer types, bug #870478 + "${FILESDIR}/${PN}-2007f-implicit-declaration-fix.patch" + "${FILESDIR}/${PN}-2007f-scandir-callback-types.patch" +) + +src_prepare() { + use topal && PATCHES+=( "${FILESDIR}/${P}-topal.patch" ) + + default + + use chappa && eapply -p2 "${WORKDIR}/${P}-chappa-${CHAPPA_PL}-all.patch" + + # Tarball packed with bad file perms + chmod -R u+rwX,go-w . || die "failed to fix permissions" + + # lots of things need -fPIC, including various platforms, and this library + # generally should be built with it anyway. + append-flags -fPIC + + # Modifications so we can build it optimally and correctly + sed \ + -e "s:BASECFLAGS=\".*\":BASECFLAGS=:g" \ + -e 's:SSLDIR=/usr/local/ssl:SSLDIR=/usr:g' \ + -e 's:SSLCERTS=$(SSLDIR)/certs:SSLCERTS=/etc/ssl/certs:g' \ + -i src/osdep/unix/Makefile \ + || die "failed to fix compiler flags and SSL paths in the Makefile" + + # Make the build system more multilib aware + sed \ + -e "s:^SSLLIB=\$(SSLDIR)/lib:SSLLIB=\$(SSLDIR)/$(get_libdir):" \ + -e "s:^AFSLIB=\$(AFSDIR)/lib:AFSLIB=\$(AFSDIR)/$(get_libdir):" \ + -i src/osdep/unix/Makefile \ + || die "failed to fix our libdir in the Makefile" + + # Targets should use the Gentoo (ie linux) fs + sed -e '/^bsf:/,/^$/ s:ACTIVEFILE=.*:ACTIVEFILE=/var/lib/news/active:g' \ + -i src/osdep/unix/Makefile \ + || die "failed to fix the FreeBSD ACTIVEFILE path in the Makefile" + + # Remove the pesky checks about SSL stuff + sed -e '/read.*exit/d' -i Makefile \ + || die "failed to disable SSL warning in the Makefile" + + sed -e "s:CC=cc:CC=$(tc-getCC):" \ + -e "s:ARRC=ar:ARRC=$(tc-getAR):" \ + -e "s:RANLIB=ranlib:RANLIB=$(tc-getRANLIB):" \ + -i src/osdep/unix/Makefile \ + || die "failed to fix build flags support in the Makefile" + + elibtoolize +} +
[gentoo-commits] repo/gentoo:master commit in: net-libs/c-client/files/, net-libs/c-client/
commit: 82a9c67b930581ce132fda5e15f675e5d2c816cd Author: Pacho Ramos gentoo org> AuthorDate: Sun Oct 9 16:06:00 2016 + Commit: Pacho Ramos gentoo org> CommitDate: Sun Oct 9 16:19:01 2016 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=82a9c67b net-libs/c-client: Support libressl (#595328) Package-Manager: portage-2.3.1 net-libs/c-client/c-client-2007f-r5.ebuild | 137 + .../c-client/files/c-client-2007f-ldflags.patch| 4 +- net-libs/c-client/files/c-client-2007f-topal.patch | 8 +- 3 files changed, 143 insertions(+), 6 deletions(-) diff --git a/net-libs/c-client/c-client-2007f-r5.ebuild b/net-libs/c-client/c-client-2007f-r5.ebuild new file mode 100644 index ..d5a3ee6 --- /dev/null +++ b/net-libs/c-client/c-client-2007f-r5.ebuild @@ -0,0 +1,137 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 +inherit flag-o-matic eutils libtool toolchain-funcs multilib + +MY_PN=imap +MY_P="${MY_PN}-${PV}" +S=${WORKDIR}/${MY_P} + +CHAPPA_PL=115 +DESCRIPTION="UW IMAP c-client library" +HOMEPAGE="http://www.washington.edu/imap/; +SRC_URI="ftp://ftp.cac.washington.edu/imap/${MY_P}.tar.Z + chappa? ( mirror://gentoo/${P}-chappa-${CHAPPA_PL}-all.patch.gz )" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd" +IUSE="doc +ipv6 kerberos kernel_linux kernel_FreeBSD libressl pam ssl static-libs topal chappa" + +RDEPEND=" + ssl? ( + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl:0= ) ) + !net-mail/uw-imap + kerberos? ( app-crypt/mit-krb5 ) +" +DEPEND="${RDEPEND} + kernel_linux? ( pam? ( >=sys-libs/pam-0.72 ) ) +" + +src_prepare() { + default + + # Tarball packed with bad file perms + chmod -R u+rwX,go-w . + + # lots of things need -fPIC, including various platforms, and this library + # generally should be built with it anyway. + append-flags -fPIC + + # Modifications so we can build it optimally and correctly + sed \ + -e "s:BASECFLAGS=\".*\":BASECFLAGS=:g" \ + -e 's:SSLDIR=/usr/local/ssl:SSLDIR=/usr:g' \ + -e 's:SSLCERTS=$(SSLDIR)/certs:SSLCERTS=/etc/ssl/certs:g' \ + -i src/osdep/unix/Makefile || die "Makefile sed fixing failed" + + # Make the build system more multilib aware + sed \ + -e "s:^SSLLIB=\$(SSLDIR)/lib:SSLLIB=\$(SSLDIR)/$(get_libdir):" \ + -e "s:^AFSLIB=\$(AFSDIR)/lib:AFSLIB=\$(AFSDIR)/$(get_libdir):" \ + -i src/osdep/unix/Makefile || die "Makefile sed fixing failed" + + # Targets should use the Gentoo (ie linux) fs + sed -e '/^bsf:/,/^$/ s:ACTIVEFILE=.*:ACTIVEFILE=/var/lib/news/active:g' \ + -i src/osdep/unix/Makefile || die "Makefile sex fixing failed for FreeBSD" + + # Apply a patch to only build the stuff we need for c-client + eapply "${FILESDIR}"/${PN}-2006k_GENTOO_Makefile.patch + + # Apply patch to add the compilation of a .so for PHP + # This was previously conditional, but is more widely useful. + eapply "${FILESDIR}"/${PN}-2006k_GENTOO_amd64-so-fix.patch + + # Remove the pesky checks about SSL stuff + sed -e '/read.*exit/d' -i Makefile || die + + # Respect LDFLAGS + eapply "${FILESDIR}"/${PN}-2007f-ldflags.patch + sed -e "s/CC=cc/CC=$(tc-getCC)/" \ + -e "s/ARRC=ar/ARRC=$(tc-getAR)/" \ + -e "s/RANLIB=ranlib/RANLIB=$(tc-getRANLIB)/" \ + -i src/osdep/unix/Makefile || die "Respecting build flags" + + use topal && eapply "${FILESDIR}/${P}-topal.patch" + use chappa && eapply "${DISTDIR}/${P}-chappa-${CHAPPA_PL}-all.patch.gz" + + elibtoolize +} + +src_compile() { + local mymake ipver ssltype target passwdtype + ipver='IP=4' + use ipv6 && ipver="IP=6" && touch ip6 + use ssl && ssltype="unix" || ssltype="none" + if use kernel_linux ; then + use pam && target=lnp passwdtype=pam || target=lnx passwdtype=std + elif use kernel_FreeBSD ; then + target=bsf passwdtype=pam + fi + use kerberos \ + && mymake="EXTRAAUTHENTICATORS=gss" \ + && EXTRALIBS="-lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err" \ + # no parallel builds supported! + emake -j1 SSLTYPE=${ssltype} $target \ + PASSWDTYPE=${passwdtype} ${ipver} ${mymake} \ + EXTRACFLAGS="${CFLAGS}" \ + EXTRALDFLAGS="${LDFLAGS}" \ + EXTRALIBS="${EXTRALIBS}" \ + GSSDIR=/usr +} + +src_install() { + if use static-libs; then + # Library binary + dolib.a c-client/c-client.a + dosym c-client.a