summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-misc/neon/ChangeLog8
-rw-r--r--net-misc/neon/Manifest17
-rw-r--r--net-misc/neon/files/neon-0.28.4-SOCK_CLOEXEC.patch122
-rw-r--r--net-misc/neon/neon-0.29.0.ebuild104
4 files changed, 115 insertions, 136 deletions
diff --git a/net-misc/neon/ChangeLog b/net-misc/neon/ChangeLog
index 4a756f1d29fb..1e1aac6a0cf4 100644
--- a/net-misc/neon/ChangeLog
+++ b/net-misc/neon/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for net-misc/neon
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/neon/ChangeLog,v 1.138 2009/08/28 21:27:20 betelgeuse Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/neon/ChangeLog,v 1.139 2009/09/14 03:37:11 arfrever Exp $
+
+*neon-0.29.0 (14 Sep 2009)
+
+ 14 Sep 2009; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
+ -files/neon-0.28.4-SOCK_CLOEXEC.patch, +neon-0.29.0.ebuild:
+ Version bump.
28 Aug 2009; Petteri Räty <betelgeuse@gentoo.org> -neon-0.28.4.ebuild,
-neon-0.28.5.ebuild:
diff --git a/net-misc/neon/Manifest b/net-misc/neon/Manifest
index 5a9325e4bafb..cd29dd853cf1 100644
--- a/net-misc/neon/Manifest
+++ b/net-misc/neon/Manifest
@@ -1,15 +1,6 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
-AUX neon-0.28.4-SOCK_CLOEXEC.patch 4091 RMD160 26e1a9a497aec93f0a3bb477e3e06a66229cd321 SHA1 91143c169d77e9583af0617bc8a4d62badb5ded0 SHA256 e9ba32bbe27c75b2cd278068d4d44c04a345cc76962cda5b9df3561cddb1b386
DIST neon-0.28.6.tar.gz 789193 RMD160 6c5ff58c9caf4691d46a8de174af6a701e551b7c SHA1 da7db2e3289cc3dbef7794e8cc3c56978a0d7157 SHA256 06ee8b1aa37a14a956a1158bf6b5a8c3388976d61c1dc3773a3ffe18ac8ecc0e
+DIST neon-0.29.0.tar.gz 879186 RMD160 338f6ff1589a01dee66cd31a72c45f3a57914ab8 SHA1 8d2e1609b2a3b13a6e68e58c26b1d708302e05ef SHA256 22878e0c6ce3f0092da3d97243b4d0b5756ee3fd4442e7c3f66161ba70e0a5a4
EBUILD neon-0.28.6.ebuild 2798 RMD160 da6220c1eb2efe2db52cc767995f55dcaba3aa5e SHA1 844a2ebc0a2e045e96b0c3aaa071dc80f4f375ea SHA256 8eab6dfbd010deeb0beb72564b196d09a39c457a436897892aafb8cc4133ad31
-MISC ChangeLog 18034 RMD160 9978ae20b7603b6852aa77d62b0f8013747810c7 SHA1 1f3ba72306bbd0ec0bc3052d996b71dabcb61e90 SHA256 963f900963c0c9a79a70f69bc4156f319d5b637da82c790ff1ecdf4c3ffa5506
-MISC metadata.xml 1117 RMD160 f349db1d7f0b01d48e2c987bb8d03a1413cb6260 SHA1 8af331415dc4dafbfe1304d07529a35661b1b450 SHA256 ad49ea5798654cc408d8a626928286d8a229907b3d0d6c175af48cf2ed6e5af8
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.11 (GNU/Linux)
-
-iEYEARECAAYFAkqYS34ACgkQcxLzpIGCsLQILwCdFs6nInaSmTR5LV7lWM6pADzi
-tBMAn1vknGAkj1JuSvdZiWBSlLDfrrW4
-=gf5N
------END PGP SIGNATURE-----
+EBUILD neon-0.29.0.ebuild 2770 RMD160 31b2382a58f38bd882619d189a7779b9b1064164 SHA1 47ac1f941610856a1c5e9591e5a0cf33bd1412d3 SHA256 f06cf1f6a1bad9f603c29c1ebf3ce8b47ea3bedfd594f835dee1131149fa2a23
+MISC ChangeLog 18212 RMD160 5b41802f7d5f2f388e82aba19d5b652e3d03094a SHA1 ea7dd6bfd4d891ea38f58fd0459838493d08686b SHA256 d1a58202df4893f1805e9a73259dd3f1d17ee645e0af95524a37a654cbba74ea
+MISC metadata.xml 1214 RMD160 a951a49e8f74d745ca8c156b770ae4bc3a531151 SHA1 c9e0e7d8ba72dfd4136a7a746bfc9aa5a289decd SHA256 f1017fa04c4b8bbf0982a1c71a560b933956db9f67467feac3ef78cec3a6e91c
diff --git a/net-misc/neon/files/neon-0.28.4-SOCK_CLOEXEC.patch b/net-misc/neon/files/neon-0.28.4-SOCK_CLOEXEC.patch
deleted file mode 100644
index 6ac1cb7f1e0f..000000000000
--- a/net-misc/neon/files/neon-0.28.4-SOCK_CLOEXEC.patch
+++ /dev/null
@@ -1,122 +0,0 @@
---- src/ne_socket.c
-+++ src/ne_socket.c
-@@ -1,6 +1,6 @@
- /*
- Socket handling routines
-- Copyright (C) 1998-2008, Joe Orton <joe@manyfish.co.uk>
-+ Copyright (C) 1998-2009, Joe Orton <joe@manyfish.co.uk>
- Copyright (C) 1999-2000 Tommi Komulainen <Tommi.Komulainen@iki.fi>
- Copyright (C) 2004 Aleix Conchillo Flaque <aleix@member.fsf.org>
-
-@@ -1007,6 +1007,20 @@
- ne_free(addr);
- }
-
-+/* Perform a connect() for given fd, handling EINTR retries. Returns
-+ * zero on success or -1 on failure, in which case, ne_errno is set
-+ * appropriately. */
-+static int raw_connect(int fd, const struct sockaddr *sa, size_t salen)
-+{
-+ int ret;
-+
-+ do {
-+ ret = connect(fd, sa, salen);
-+ } while (ret < 0 && NE_ISINTR(ne_errno));
-+
-+ return ret;
-+}
-+
- /* Perform a connect() for fd to address sa of length salen, with a
- * timeout if supported on this platform. Returns zero on success or
- * NE_SOCK_* on failure, with sock->error set appropriately. */
-@@ -1021,12 +1035,17 @@
-
- /* Get flags and then set O_NONBLOCK. */
- flags = fcntl(fd, F_GETFL);
-- if (fcntl(fd, F_SETFL, flags | O_NONBLOCK) == -1) {
-+ if (flags & O_NONBLOCK) {
-+ /* This socket was created using SOCK_NONBLOCK... flip the
-+ * bit for restoring flags later. */
-+ flags &= ~O_NONBLOCK;
-+ }
-+ else if (fcntl(fd, F_SETFL, flags | O_NONBLOCK) == -1) {
- set_strerror(sock, errno);
- return NE_SOCK_ERROR;
- }
-
-- ret = connect(fd, sa, salen);
-+ ret = raw_connect(fd, sa, salen);
- if (ret == -1) {
- errnum = ne_errno;
- if (NE_ISINPROGRESS(errnum)) {
-@@ -1070,7 +1089,7 @@
- } else
- #endif /* USE_NONBLOCKING_CONNECT */
- {
-- ret = connect(fd, sa, salen);
-+ ret = raw_connect(fd, sa, salen);
-
- if (ret < 0) {
- set_strerror(sock, errno);
-@@ -1196,19 +1215,43 @@
- }
- }
-
--#ifndef SOCK_CLOEXEC
--#define SOCK_CLOEXEC 0
--#define USE_CLOEXEC
-+#ifdef SOCK_CLOEXEC
-+/* sock_cloexec is initialized to SOCK_CLOEXEC and cleared to zero if
-+ * a socket() call ever fails with EINVAL. */
-+static int sock_cloexec = SOCK_CLOEXEC;
-+#define RETRY_ON_EINVAL
-+#else
-+#define sock_cloexec 0
- #endif
-
- int ne_sock_connect(ne_socket *sock,
- const ne_inet_addr *addr, unsigned int port)
- {
- int fd, ret;
-+ int type = SOCK_STREAM | sock_cloexec;
-+
-+#if defined(RETRY_ON_EINVAL) && defined(SOCK_NONBLOCK) \
-+ && defined(USE_NONBLOCKING_CONNECT)
-+ /* If the SOCK_NONBLOCK flag is defined, and the retry-on-EINVAL
-+ * logic is enabled, and the socket has a configured timeout, then
-+ * also use the SOCK_NONBLOCK flag to save enabling O_NONBLOCK
-+ * later. */
-+ if (sock->cotimeout && sock_cloexec) {
-+ type |= SOCK_NONBLOCK;
-+ }
-+#endif
-
- /* use SOCK_STREAM rather than ai_socktype: some getaddrinfo
- * implementations do not set ai_socktype, e.g. RHL6.2. */
-- fd = socket(ia_family(addr), SOCK_STREAM | SOCK_CLOEXEC, ia_proto(addr));
-+ fd = socket(ia_family(addr), type, ia_proto(addr));
-+#ifdef RETRY_ON_EINVAL
-+ /* Handle forwards compat for new glibc on an older kernels; clear
-+ * the sock_cloexec flag and retry the call: */
-+ if (fd < 0 && sock_cloexec && errno == EINVAL) {
-+ sock_cloexec = 0;
-+ fd = socket(ia_family(addr), SOCK_STREAM, ia_proto(addr));
-+ }
-+#endif
- if (fd < 0) {
- set_strerror(sock, ne_errno);
- return -1;
-@@ -1223,9 +1266,10 @@
- #endif
-
- #if defined(HAVE_FCNTL) && defined(F_GETFD) && defined(F_SETFD) \
-- && defined(FD_CLOEXEC) && defined(USE_CLOEXEC)
-- /* Set the FD_CLOEXEC bit for the new fd. */
-- if ((ret = fcntl(fd, F_GETFD)) >= 0) {
-+ && defined(FD_CLOEXEC)
-+ /* Set the FD_CLOEXEC bit for the new fd, if the socket was not
-+ * created with the CLOEXEC bit already set. */
-+ if (!sock_cloexec && (ret = fcntl(fd, F_GETFD)) >= 0) {
- fcntl(fd, F_SETFD, ret | FD_CLOEXEC);
- /* ignore failure; not a critical error. */
- }
diff --git a/net-misc/neon/neon-0.29.0.ebuild b/net-misc/neon/neon-0.29.0.ebuild
new file mode 100644
index 000000000000..0899d3bbcab6
--- /dev/null
+++ b/net-misc/neon/neon-0.29.0.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/neon/neon-0.29.0.ebuild,v 1.1 2009/09/14 03:37:11 arfrever Exp $
+
+EAPI="2"
+
+inherit autotools libtool versionator
+
+DESCRIPTION="HTTP and WebDAV client library"
+HOMEPAGE="http://www.webdav.org/neon/"
+SRC_URI="http://www.webdav.org/neon/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
+IUSE="doc expat gnutls kerberos libproxy nls pkcs11 ssl zlib"
+IUSE_LINGUAS="cs de fr ja nn pl ru tr zh_CN"
+for lingua in ${IUSE_LINGUAS}; do
+ IUSE+=" linguas_${lingua}"
+done
+unset lingua
+RESTRICT="test"
+
+RDEPEND="expat? ( dev-libs/expat )
+ !expat? ( dev-libs/libxml2 )
+ gnutls? (
+ >=net-libs/gnutls-2.0
+ pkcs11? ( dev-libs/pakchois )
+ )
+ !gnutls? ( ssl? (
+ >=dev-libs/openssl-0.9.6f
+ pkcs11? ( dev-libs/pakchois )
+ ) )
+ kerberos? ( virtual/krb5 )
+ libproxy? ( net-libs/libproxy )
+ nls? ( virtual/libintl )
+ zlib? ( sys-libs/zlib )"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ local lingua linguas
+ for lingua in ${IUSE_LINGUAS}; do
+ use linguas_${lingua} && linguas+=" ${lingua}"
+ done
+ sed -i -e "s/ALL_LINGUAS=.*/ALL_LINGUAS=\"${linguas}\"/g" configure.in
+
+ AT_M4DIR="macros" eautoreconf
+
+ elibtoolize
+}
+
+src_configure() {
+ local myconf
+
+ if has_version sys-libs/glibc; then
+ einfo "Enabling SSL library thread-safety using POSIX threads..."
+ myconf+=" --enable-threadsafe-ssl=posix"
+ fi
+
+ if use expat; then
+ myconf+=" --with-expat"
+ else
+ myconf+=" --with-libxml2"
+ fi
+
+ if use gnutls; then
+ myconf+=" --with-ssl=gnutls --with-ca-bundle=/etc/ssl/certs/ca-certificates.crt"
+ elif use ssl; then
+ myconf+=" --with-ssl=openssl"
+ fi
+
+ econf \
+ --enable-static \
+ --enable-shared \
+ $(use_with kerberos gssapi) \
+ $(use_with libproxy) \
+ $(use_enable nls) \
+ $(use_with pkcs11 pakchois) \
+ $(use_with zlib) \
+ ${myconf}
+}
+
+src_install() {
+ emake DESTDIR="${D}" install-lib install-headers install-config install-nls || die "emake install failed"
+
+ if use doc; then
+ emake DESTDIR="${D}" install-docs || die "emake install-docs failed"
+ fi
+
+ dodoc AUTHORS BUGS NEWS README THANKS TODO
+ doman doc/man/*.[1-8]
+}
+
+pkg_postinst() {
+ ewarn "Neon has a policy of breaking API across minor versions, this means"
+ ewarn "that any package that links against Neon may be broken after"
+ ewarn "updating. They will remain broken until they are ported to the"
+ ewarn "new API. You can downgrade Neon to the previous version by doing:"
+ ewarn
+ ewarn " emerge --oneshot '<net-misc/neon-$(get_version_component_range 1-2 ${PV})'"
+ ewarn
+ ewarn "You may also have to downgrade any package that has not been"
+ ewarn "ported to the new API yet."
+}