summaryrefslogtreecommitdiff
blob: 8105aa56f8c0d961d0158c70c2ebc7124b6f2776 (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
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/www-apps/mod_survey/mod_survey-3.2.4.ebuild,v 1.5 2008/02/04 09:05:30 hollow Exp $

inherit webapp

WEBAPP_MANUAL_SLOT="yes"
SLOT="0"

DESCRIPTION="XML-defined web questionnaires as a plug-in module using Apache."
HOMEPAGE="http://www.modsurvey.org"
KEYWORDS="~amd64 ~ppc ~x86"
IUSE="doc mysql nls postgres"

# Note: sw is invalid LINGUAS value, it should be sv instead.
# commented out since I have zero interested in sed-ing the code
# for this screw-up.
LANGS="en de fr it" # sv
for i in ${LANGS} ; do
	IUSE="${IUSE} linguas_${i}"
done

MY_PN=${PN/_/}
MY_PV=${PV/_/-}
S=${WORKDIR}/${PN}
SRC_URI="http://www.modsurvey.org/download/tarballs/${MY_PN}-${MY_PV}.tgz
	doc? ( http://www.modsurvey.org/download/tarballs/${MY_PN}-docs-${MY_PV}.tgz )"

DEPEND=">=dev-lang/perl-5.6.1"
RDEPEND="${DEPEND}
		>=www-apache/mod_perl-1.99
		postgres? ( >=dev-perl/DBI-1.38 dev-perl/DBD-Pg )
		mysql? ( >=dev-perl/DBI-1.38 dev-perl/DBD-mysql )
		>=virtual/perl-CGI-3.0.0"
LICENSE="GPL-2"

pkg_setup() {
	# unfortunatly, this program only allows for one lang, so only the first
	# supported entry in LINGUAS is used
	if use nls ; then
		for i in ${LINGUAS} ; do
			if has linguas_${i} ${IUSE} ; then
				if use linguas_${i} ; then
					locallang="${i}"
					ewarn "Due to the limitations of this package, it will be built"
					ewarn "only with ${i} LINGUAS support. If this is not what"
					ewarn "you intended, please place the language you desire"
					ewarn "as _first_ in the list of LINGUAS in /etc/make.conf"
					ewarn
					break
				fi
			else
				einfo "LINGUAS=${i} is not supported by ${P}"
				shift
			fi
		done
	fi
	if [[ -z ${locallang} ]] ; then
		 use nls && ewarn "None of ${LINGUAS} supported, sorry. Will use English."
		 locallang="en"
	fi
	webapp_pkg_setup
}

src_unpack() {
	unpack ${A}
	cd "${S}"
	rm -f docs/LICENSE.txt
	sed "s|\$lang = \"en\"|\$lang = \"${locallang}\"|" -i installer.pl
	sed -i "s|/usr/local/mod_survey/|${D}/usr/lib/mod_survey/|g" installer.pl
	use doc && unpack ${MY_PN}-docs-${PV}.tgz
}

src_install() {
	webapp_src_preinst

	dodir /usr/lib/mod_survey
	dodir /var/lib/mod_survey/data
	dodir ${MY_HOSTROOTDIR}/${PN}

	dodoc README.txt docs/*

	perl installer.pl < /dev/null > /dev/null 2>&1
	dosed /usr/lib/mod_survey/survey.conf
	dosed "s|/usr/lib/mod_survey/data/|/var/lib/mod_survey/data/|" /usr/lib/mod_survey/survey.conf

	mv "${D}"/usr/lib/mod_survey/survey.conf "${D}"/${MY_HOSTROOTDIR}/${PN}
	rm -rf "${D}"/usr/lib/mod_survey/webroot "${D}"/usr/lib/mod_survey/data

	cp -R webroot/* "${D}"/${MY_HTDOCSDIR}

	webapp_postinst_txt en "${FILESDIR}"/postinstall-en.txt
	webapp_hook_script "${FILESDIR}"/reconfig
	webapp_src_install

	fowners apache:apache /var/lib/mod_survey/data
}