summaryrefslogtreecommitdiff
blob: a4d798446cef1e1bacc305e2aeeed23c3bdd99dc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-misc/neon/neon-0.26.1.ebuild,v 1.8 2006/07/23 14:30:47 hattya Exp $

inherit eutils 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 ~ppc-macos ppc64 ~s390 ~sh sparc x86 ~x86-fbsd"
IUSE="expat gnutls nls socks5 ssl static zlib"

DEPEND="expat? ( dev-libs/expat )
	!expat? ( dev-libs/libxml2 )
	socks5? ( net-proxy/dante )
	zlib? ( sys-libs/zlib )
	gnutls? ( >=net-libs/gnutls-1.0.22 )
	!gnutls? ( ssl? ( >=dev-libs/openssl-0.9.6f ) )"

RESTRICT="test"

src_unpack() {
	unpack ${A}
	if use userland_Darwin ; then
		sed -i -e "s:GXX:GCC:g" ${S}/configure || die "sed failed"
	fi

	elibtoolize
}

src_compile() {
	local myconf=""
	if built_with_use sys-libs/glibc nptlonly \
	    || built_with_use sys-libs/glibc nptl; then
	    einfo "Enabling SSL library thread-safety using POSIX threads..."
	    myconf="${myconf} --enable-threadsafe-ssl=posix"
	fi
	if use expat; then
	    myconf="${myconf} --with-expat"
	else
	    myconf="${myconf} --with-xml2"
	fi

	if use gnutls; then
	    myconf="${myconf} --with-ssl=gnutls"
	elif use ssl; then
	    myconf="${myconf} --with-ssl=openssl"
	fi

	if ! use nls; then
	    myconf="${myconf} --disable-nls"
	fi

	if use static; then
	    myconf="${myconf} --enable-static"
	else
	    myconf="${myconf} --disable-static --with-pic"
	fi

	econf \
		--enable-shared \
		--without-gssapi \
		$(use_with zlib) \
		$(use_enable socks5 socks) \
		${myconf} \
		|| die "econf failed"
	emake || die "emake failed"
}

src_test() {
	cd ${S}
	make check || die "Trying make check without success."
}

src_install() {
	make DESTDIR=${D} install || die 'install failed'
	dodoc AUTHORS BUGS ChangeLog NEWS README THANKS TODO doc/*
}

pkg_postinst() {
	ewarn "There are new features in this version; please beware that"
	ewarn "upstream considers the socks support experimental.  If you"
	ewarn "experience test failures (eg, bug 135863) then try rebuilding"
	ewarn "glibc."
	ewarn
	ewarn "Neon has a policy of breaking API across versions, this means"
	ewarn "that any packages that link against neon will 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 packages that have already been"
	ewarn "ported to the new API."
}