summaryrefslogtreecommitdiff
blob: 3372f3abe75535bce05a22c19fd24ba2dd4a9471 (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
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI="6"

PHP_EXT_NAME="suhosin"
PHP_EXT_INI="no"
PHP_EXT_ZENDEXT="no"
USE_PHP="php5-6"

inherit php-ext-source-r3

KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"

DESCRIPTION="Suhosin is an advanced protection system for PHP installations"
HOMEPAGE="https://www.suhosin.org/"
SRC_URI="https://download.suhosin.org/${P}.tar.gz"
LICENSE="PHP-3.01"
SLOT="0"
IUSE=""

for target in ${USE_PHP}; do
	slot=${target/php}
	slot=${slot/-/.}
	PHPUSEDEPEND="${PHPUSEDEPEND}
	php_targets_${target}? ( dev-lang/php:${slot}[unicode] )"
done

DEPEND="${PHPUSEDEPEND}"
RDEPEND="${DEPEND}"

PATCHES=( "${FILESDIR}"/${P}-libcrypt.patch )
DOCS=( CREDITS )

src_install() {
	php-ext-source-r3_src_install

	local slot inifile
	for slot in $(php_get_slots); do
		php_init_slot_env ${slot}
		for inifile in $(php_slot_ini_files "${slot}") ; do
			insinto "${inifile/${PHP_EXT_NAME}.ini/}"
			insopts -m644
			doins "suhosin.ini"
		done
	done
}

src_test() {
	# Makefile passes a hard-coded -d extension_dir=./modules, we move the lib
	# away from there in src_compile
	for slot in `php_get_slots`; do
		php_init_slot_env ${slot}
		NO_INTERACTION="yes" emake test || die "emake test failed for slot ${slot}"
	done
}