summaryrefslogtreecommitdiff
blob: 03834e3e32014f9efccf2edc57a5af247f57809e (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
133
134
135
136
137
138
139
140
141
142
143
144
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-tv/xmltv/xmltv-0.5.29.ebuild,v 1.4 2004/06/25 00:35:02 agriffis Exp $

inherit perl-module

DESCRIPTION="Set of utilities to manage TV listings stored in the XMLTV format."
HOMEPAGE="http://membled.com/work/apps/xmltv/"
SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
RESTRICT="nomirror"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86 ~amd64 ~ppc"

# NOTE: you can customize the xmltv installation by
#       defining a XMLTV_OPTS variable which contains
#       a space-separated list of optional features.
#       If this variable is unspecified or has an
#       empty value, everything will be *enabled*.
#
#  none:            Don't enable any of the features below
#  tv_grab_uk_rt:   Alternate Britain listings grabber
#  tv_grab_it:      Italy listings grabber
#  tv_grab_na:      North America listings grabber
#  tv_grab_nz:      New Zealand listings grabber
#  tv_grab_fi:      Finland listings grabber
#  tv_grab_es:      Spain listings grabber
#  tv_grab_nl:      Netherlands listings grabber
#  tv_grab_nl_wolf: Alternate Netherlands listings grabber
#  tv_grab_hu:      Hungary listings grabber
#  tv_grab_dk:      Denmark listings grabber
#  tv_check:        Graphical front-end for listings data
#  tv_pick_cgi:     CGI front-end for listings data

# EXAMPLES:
# enable just North American grabber
#   XMLTV_OPTS="tv_grab_na"
#
# enable graphical front-end, New Zealand and Italy grabbers
#   XMLTV_OPTS="tv_check tv_grab_nz tv_grab_it"

DEPEND=">=sys-apps/sed-4
	>=dev-perl/libwww-perl-5.65
	>=dev-perl/XML-Parser-2.34
	>=dev-perl/XML-Twig-3.09
	>=dev-perl/XML-Writer-0.4.1
	>=dev-perl/DateManip-5.42
	dev-perl/Memoize
	>=dev-perl/Term-ProgressBar-2.03
	dev-perl/Compress-Zlib
	dev-perl/Lingua-EN-Numbers-Ordinate
	dev-perl/Lingua-Preferred
	>=dev-perl/Storable-2.04
	dev-perl/Unicode-String"

# for tv_check
DEPEND="${DEPEND} dev-perl/perl-tk dev-perl/Tk-TableMatrix dev-perl/XML-Simple"
# for tv_grab_na
DEPEND="${DEPEND} >=dev-perl/HTML-Parser-3.34"
# for tv_grab_nz
DEPEND="${DEPEND} >=dev-lang/python-1.5.2"
# for tv_grab_fi tv_grab_es tv_grab_nl tv_grab_nl_wolf tv_grab_hu tv_grab_dk
DEPEND="${DEPEND} dev-perl/HTML-Tree"

### disabled until portage dependecy checker has notions of things
###  other then incrementals that are in /etc/make.conf
###  6/13/2003 Max Kalika <max@gentoo.org>
#[ -z "${XMLTV_OPTS}" -o "`has tv_grab_na ${XMLTV_OPTS}`" ] \
#	&& DEPEND="${DEPEND} dev-perl/HTML-Parser"
#[ -z "${XMLTV_OPTS}" -o "`has tv_grab_sn ${XMLTV_OPTS}`" ] \
#	&& DEPEND="${DEPEND} >=dev-perl/HTML-TableExtract-1.0.8"
#[ -z "${XMLTV_OPTS}" -o "`has tv_grab_nz ${XMLTV_OPTS}`" ] \
#	&& DEPEND="${DEPEND} >=dev-lang/python-1.5.1"
#[ -z "${XMLTV_OPTS}" -o "`has tv_grab_fi ${XMLTV_OPTS}`" ] \
#	&& DEPEND="${DEPEND} dev-perl/HTML-Tree"
#[ -z "${XMLTV_OPTS}" -o "`has tv_grab_es ${XMLTV_OPTS}`" ] \
#	&& DEPEND="${DEPEND} dev-perl/HTML-Tree"
#[ -z "${XMLTV_OPTS}" -o "`has tv_grab_nl ${XMLTV_OPTS}`" ] \
#	&& DEPEND="${DEPEND} dev-perl/HTML-Tree"
#[ -z "${XMLTV_OPTS}" -o "`has tv_grab_nl_wolf ${XMLTV_OPTS}`" ] \
#	&& DEPEND="${DEPEND} dev-perl/HTML-Tree"
#[ -z "${XMLTV_OPTS}" -o "`has tv_grab_hu ${XMLTV_OPTS}`" ] \
#	&& DEPEND="${DEPEND} dev-perl/HTML-Tree"
#[ -z "${XMLTV_OPTS}" -o "`has tv_grab_dk ${XMLTV_OPTS}`" ] \
#	&& DEPEND="${DEPEND} dev-perl/HTML-Tree"
#[ -z "${XMLTV_OPTS}" -o "`has tv_check ${XMLTV_OPTS}`" ] \
#	&& DEPEND="${DEPEND} dev-perl/perl-tk dev-perl/Tk-TableMatrix dev-perl/XML-Simple"

make_config() {
	if [ -z "${XMLTV_OPTS}" ] ; then
		# No customization needed, build everything (default)
		echo "yes"
		return
	else
		# Need to specify custom settings, do not accept defaults
		echo "no"
	fi

	# Enable Alternate Brittain
	[ "`has tv_grab_uk_rt ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
	# Enable Italy
	[ "`has tv_grab_it ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
	# Enable North America
	[ "`has tv_grab_na ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
	# Enable New Zealand
	[ "`has tv_grab_nz ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
	# Enable Finland
	[ "`has tv_grab_fi ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
	# Enable Spain
	[ "`has tv_grab_es ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
	# Enable Netherlands
	[ "`has tv_grab_nl ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
	# Enable Alternate Netherlands
	[ "`has tv_grab_nl_wolf ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
	# Enable Hungary
	[ "`has tv_grab_hu ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
	# Enable Denmark
	[ "`has tv_grab_dk ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
	# Enable GUI checking.
	[ "`has tv_check ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
	# Enable CGI support
	[ "`has tv_pick_cgi ${XMLTV_OPTS}`" ] && echo "yes" || echo "no"
}

src_compile() {
	make_config | perl-module_src_compile
}

src_install() {
	perl-module_src_install

	for i in `grep -rl "${D}" "${D}"` ; do
		sed -e "s:${D}::g" -i "${i}"
	done

	if [ -z "${XMLTV_OPTS}" -o "`has tv_pick_cgi ${XMLTV_OPTS}`" ] ; then
		dobin choose/tv_pick/tv_pick_cgi
		einfo
		einfo "To use tv_pick_cgi, please link it from /usr/bin/tv_pick_cgi"
		einfo "to where the ScriptAlias directive is configured."
		einfo
	fi
}