summaryrefslogtreecommitdiff
blob: 51bd8040b3f3346d423ad2c79e010dc69bfb6aa6 (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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/www-client/lynx/lynx-2.8.8_pre5.ebuild,v 1.3 2011/01/31 16:56:47 darkside Exp $

EAPI=3

inherit eutils versionator

# VERSIONING SCHEME TRANSLATION
# Upstream	:	Gentoo
# rel.		:	_p
# pre.		:	_rc
# dev.		:	_pre

if [[ "${PV/_p[0-9]}" != "${PV}" ]]
then
	MY_P="${PN}${PV/_p/rel.}"

elif [[ "${PV/_rc[0-9]}" != "${PV}" ]]
then
	MY_P="${PN}${PV/_rc/pre.}"

elif [[ "${PV/_pre[0-9]}" != "${PV}" ]]
then
	MY_P="${PN}${PV/_pre/dev.}"

fi

DESCRIPTION="An excellent console-based web browser with ssl support"
HOMEPAGE="http://lynx.isc.org/"
SRC_URI="http://lynx.isc.org/current/${MY_P}.tar.bz2"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="bzip2 cjk gnutls idn ipv6 nls ssl unicode"

RDEPEND="sys-libs/ncurses[unicode?]
	sys-libs/zlib
	nls? ( virtual/libintl )
	ssl? (
		!gnutls? ( >=dev-libs/openssl-0.9.8 )
		gnutls? ( >=net-libs/gnutls-2.6.4 )
	)
	bzip2? ( app-arch/bzip2 )
	idn? ( net-dns/libidn )"

DEPEND="${RDEPEND}
	nls? ( sys-devel/gettext )
	>=dev-util/pkgconfig-0.23"

S="${WORKDIR}/${PN}$(replace_all_version_separators - $(get_version_component_range 1-3))"

pkg_setup() {
	if ! use ssl
	then
		elog "SSL support disabled; you will not be able to access secure websites."
	fi
}

src_prepare() {
	# fix up toplevel makefile to enable parallel make (bug #262972)
	#
	# add '+' prefix to lines using $(MAKE_RECUR),
	# making sure '+' comes after leading whitespace
	sed -i -e '/$(MAKE_RECUR)/ s/\([[:blank:]]\)/\1+/' makefile.in || \
	    die "failed to update makefile.in"

	# fix configure for openssl compiled with kerberos (bug #267749)
	epatch "${FILESDIR}/lynx-2.8.7-configure-openssl.patch"
	epatch "${FILESDIR}"/${PN}-2.8.6-mint.patch
}

src_configure() {
	local myargs

	if use ssl
	then
		# --with-gnutls and --with-ssl are alternatives,
		# the latter enabling openssl support so it should be
		# _not_ be used if gnutls ssl implementation is desired
		if use gnutls
		then
			myargs="$myargs --with-gnutls" # ssl implementation = gnutls
		else
			myargs="$myargs --with-ssl"    # ssl implementation = openssl
		fi
	fi

	if use unicode
	then
		myargs="$myargs --with-screen=ncursesw"
	fi

	econf \
		--enable-nested-tables \
		--enable-cgi-links \
		--enable-persistent-cookies \
		--enable-prettysrc \
		--enable-nsl-fork \
		--enable-file-upload \
		--enable-read-eta \
		--enable-color-style \
		--enable-scrollbar \
		--enable-included-msgs \
		--with-zlib \
		$(use_enable nls) \
		$(use_enable idn idna) \
		$(use_enable ipv6) \
		$(use_enable cjk) \
		$(use_enable unicode japanese-utf8) \
		$(use_with bzip2 bzlib) \
		$myargs
}

src_install() {
	make install DESTDIR="${D}" || die

	sed -i -e "s|^HELPFILE.*$|HELPFILE:file://localhost/usr/share/doc/${PF}/lynx_help/lynx_help_main.html|" \
			"${ED}"/etc/lynx.cfg || die "lynx.cfg not found"
	if use unicode
	then
		sed -i -e '/^#CHARACTER_SET:/ c\CHARACTER_SET:utf-8' \
				"${ED}"/etc/lynx.cfg || die "lynx.cfg not found"
	fi
	dodoc CHANGES COPYHEADER PROBLEMS README
	docinto docs
	dodoc docs/*
	docinto lynx_help
	dodoc lynx_help/*.txt
	dohtml -r lynx_help/*
}