summaryrefslogtreecommitdiff
blob: 8abe3b56d3e9251f955dda7b4eb57ba3b2a88367 (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
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$

EAPI=6

inherit webapp depend.apache eutils

DESCRIPTION="Bugzilla is the Bug-Tracking System from the Mozilla project"
SRC_URI="https://ftp.mozilla.org/pub/mozilla.org/webtools/${P}.tar.gz"
HOMEPAGE="https://www.bugzilla.org"

LICENSE="MPL-2.0"
KEYWORDS="~amd64 ~x86"

IUSE="modperl extras graphviz mysql postgres sqlite test"
REQUIRED_USE=" || ( mysql postgres sqlite )"

# sorting is identical to upstream MYMETA.json, please dont change
COMMON_DEPS="
	dev-lang/perl
	>=dev-perl/CGI-3.510.0
	>=dev-perl/DBI-1.614.0
	>=dev-perl/TimeDate-2.230.0
	>=dev-perl/DateTime-0.750.0
	>=dev-perl/DateTime-TimeZone-1.640.0
	virtual/perl-Digest-SHA
	>=dev-perl/Email-MIME-1.904.0
	>=dev-perl/Email-Sender-1.300.11
	>=dev-perl/File-Slurp-9999.130.0
	>=dev-perl/JSON-XS-2.10.0
	>=dev-perl/List-MoreUtils-0.320.0
	>=dev-perl/Math-Random-ISAAC-1.0.1
	>=dev-perl/Template-Toolkit-2.240.0
	>=dev-perl/URI-1.550.0
"

DEPEND="test? ( dev-perl/Pod-Coverage ${COMMON_DEPS} )"
RDEPEND="
	virtual/httpd-cgi
	${COMMON_DEPS}
	postgres? ( >=dev-perl/DBD-Pg-1.49 )
	mysql? ( >=dev-perl/DBD-mysql-4.0.5 )
	sqlite? ( >=dev-perl/DBD-SQLite-1.290.0 )
	extras? (
		>=dev-perl/GD-2.350.0[png,truetype]
		>=dev-perl/Chart-2.4.1
		dev-perl/Template-GD
		dev-perl/GDTextUtil
		dev-perl/GDGraph
		dev-perl/XML-Twig
		>=dev-perl/MIME-tools-5.427.0
		dev-perl/libwww-perl
		>=dev-perl/PatchReader-0.9.6
		dev-perl/perl-ldap
		dev-perl/RadiusPerl
		dev-perl/Authen-SASL
		>=dev-perl/SOAP-Lite-0.712.0
		dev-perl/JSON-RPC
		>=dev-perl/JSON-XS-2.0.0
		dev-perl/Test-Taint
		>=dev-perl/HTML-Parser-3.670.0
		dev-perl/HTML-Scrubber
		>=virtual/perl-Encode-2.210.0
		dev-perl/Encode-Detect
		dev-perl/Email-MIME-Attachment-Stripper
		dev-perl/Email-Reply
		dev-perl/TheSchwartz
		dev-perl/Daemon-Generic
		dev-perl/File-MimeInfo
		|| ( media-gfx/imagemagick[perl] media-gfx/graphicsmagick[imagemagick,perl] )
		dev-perl/MIME-tools
	)
	modperl? (
		www-apache/mod_perl:1
		>=dev-perl/Apache-SizeLimit-0.960.0
	)
	graphviz? ( media-gfx/graphviz )
"
want_apache modperl
need_httpd_cgi

pkg_setup() {
	depend.apache_pkg_setup modperl
	webapp_pkg_setup
}

src_prepare() {
	# Get a rid of the bzr files
	rm -r .bzr* || die

	# Remove bundled perl modules
	rm -r lib/ || die
	eapply_user
}

src_test() {
	perl runtests.pl || die
}

src_install () {
	webapp_src_preinst

	insinto "${MY_HTDOCSDIR}"
	doins -r .
	doins "${FILESDIR}"/bugzilla.cron.{daily,tab}

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

	if use extras; then
		newconfd "${FILESDIR}"/bugzilla-queue.confd bugzilla-queue
		newinitd "${FILESDIR}"/bugzilla-queue.initd bugzilla-queue
	fi

	# bug #124282
	chmod +x "${D}${MY_HTDOCSDIR}"/*.cgi || die

	chmod u+x "${D}${MY_HTDOCSDIR}"/jobqueue.pl || die

	# configuration must be executable
	chmod u+x "${D}${MY_HTDOCSDIR}"/checksetup.pl || die

	# bug 487476
	mkdir "${D}${MY_HTDOCSDIR}"/lib || die
}