blob: 5b35513f5479d4d795055db12a60f0e1c6912bcf (
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
145
146
147
148
149
150
|
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-admin/webalizer/webalizer-2.01.10-r13.ebuild,v 1.4 2006/07/09 20:26:47 rl03 Exp $
# uses webapp.eclass to create directories with right permissions
# probably slight overkill but works well
inherit eutils webapp db-use autotools
SLOT="0"
WEBAPP_MANUAL_SLOT="yes"
MY_PV=${PV/.10/-10}
MY_P=${PN}-${MY_PV}
S=${WORKDIR}/${MY_P}
DESCRIPTION="Webserver log file analyzer"
HOMEPAGE="http://www.mrunix.net/webalizer/"
SRC_URI="ftp://ftp.mrunix.net/pub/webalizer/${MY_P}-src.tar.bz2
geoip? ( http://sysd.org/proj/geolizer_${MY_PV}-patch.20050520.tar.bz2 )
xtended? ( http://www.irc.unizh.ch/users/pfrei/webalizer/rb07/${PN}-${MY_PV}-RB07-patch.tar.gz )
mirror://gentoo/${PN}-search.patch.gz
mirror://gentoo/${PN}.conf.gz
"
LICENSE="GPL-2"
KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
IUSE="apache2 geoip nls search xtended"
DEPEND="!geoip? ( >=sys-libs/db-4.2 )
>=sys-libs/zlib-1.1.4
>=media-libs/libpng-1.2
>=media-libs/gd-1.8.3
geoip? ( dev-libs/geoip )"
pkg_setup() {
webapp_pkg_setup
if use search && ! use geoip; then
elog "Please enable the geoip USE flag if you wish to use search"
fi
# prevents "undefined reference" errors... see bug #65163
if ! built_with_use media-libs/gd png; then
ewarn "media-libs/gd must be built with png for this package"
ewarn "to function."
die "recompile gd with USE=\"png\""
fi
# USE=nls has no real meaning if LINGUAS isn't set
if use nls && [ -z "${LINGUAS}" ]; then
ewarn "you must set LINGUAS in /etc/make.conf"
ewarn "if you want to USE=nls"
die "please either set LINGUAS or do not use nls"
fi
}
src_unpack() {
unpack ${A} ; cd ${S}
if use geoip; then
epatch ${WORKDIR}/geolizer_${MY_PV}-patch/geolizer.patch || die
if use search; then
epatch ${WORKDIR}/${PN}-search.patch || die
fi
use xtended && elog "Xtended doesn't work with geolizer, skipping"
else
epatch ${FILESDIR}/${PN}-db4.2.patch || die
epatch ${FILESDIR}/${PN}-readability.patch || die
if use xtended; then
epatch ${WORKDIR}/${PN}-${MY_PV}-RB07-patch || die
fi
fi
# bugzy 121816: prevent truncated useragent fields
sed -i -e 's:^#define MAXAGENT 64:#define MAXAGENT 128:' webalizer.h
}
src_compile() {
local myconf=" --enable-dns \
--with-db=$(db_includedir) \
--with-dblib=$(db_libname)"
use geoip && myconf="${myconf} --enable-geoip"
# really dirty hack; necessary due to a really gross ./configure
# basically, it just sets the natural language the program uses
# unfortunatly, this program only allows for one lang, so only the first
# entry in LINGUAS is used
if use nls; then
local longlang
longlang="$(grep ^${LINGUAS:0:2} ${FILESDIR}/webalizer-language-list.txt)"
myconf="${myconf} --with-language=${longlang:3}"
else
myconf="${myconf} --with-language=english"
fi
# stupid broken configuration file
eautoreconf
econf ${myconf} || die "econf failed"
emake || die "emake failed"
}
src_install() {
webapp_src_preinst
into /usr
dobin webalizer
dosym webalizer /usr/bin/webazolver
doman webalizer.1
insinto /etc
doins ${WORKDIR}/${PN}.conf
use apache2 && sed -i -e "s/apache/apache2/g" ${D}/etc/webalizer.conf
dodoc *README* CHANGES Copyright sample.conf ${FILESDIR}/apache.webalizer
webapp_src_install
}
pkg_postinst(){
elog
elog "It is suggested that you restart apache before using webalizer"
elog "You may want to review /etc/webalizer.conf and ensure that"
elog "OutputDir is set correctly"
elog
elog "Then just type webalizer to generate your stats."
elog "You can also use cron to generate them e.g. every day."
elog "They can be accessed via http://localhost/webalizer"
elog
elog "A sample Apache config file has been installed into"
elog "/usr/share/doc/${PF}/apache.webalizer"
elog "Please edit and install it as necessary"
elog
if [ ${#LINGUAS} -gt 2 ] && use nls; then
ewarn
ewarn "You have more than one language in LINGUAS"
ewarn "Due to the limitations of this packge, it was built"
ewarn "only with ${LINGUAS:0:2} support. If this is not what"
ewarn "you intended, please place the language you desire"
ewarn "_first_ in the list of LINGUAS in /etc/make.conf"
ewarn
fi
if use xtended; then
elog "Read http://www.irc.unizh.ch/users/pfrei/webalizer/rb07/INSTALL"
elog "if you are switching from stock webalizer to xtended"
fi
webapp_pkg_postinst
}
|