Create independent mods-available directory for each PHP version

This commit is contained in:
Ondřej Surý 2016-02-29 09:45:36 +01:00
parent d711c0a217
commit 60ce1ec271
7 changed files with 63 additions and 10 deletions

24
debian/control vendored
View file

@ -131,6 +131,30 @@ Section: php
Depends: psmisc (>= 22.15-1~),
sed (>= 4.1.1-1),
${misc:Depends}
Breaks: php-amqp (<< 1.7.0~alpha2-4~),
php-apcu (<< 5.1.3+4.0.10-2~),
php-apcu-bc (<< 1.0.3-2~),
php-ast (<< 0.1.1-2~),
php-geoip (<< 1.1.0-4~),
php-gmagick (<< 2.0.1~rc3+1.1.7~rc3-2~),
php-igbinary (<< 1.2.1-10-ge0e66b9+1.2.1-2~),
php-imagick (<< 3.4.0~rc6-2~),
php-memcache (<< 3.0.9~20151130.fdbd46b-2~),
php-memcached (<< 2.2.0-95-g6ace07d+2.2.0-2~),
php-mongodb (<< 1.1.2-3~),
php-msgpack (<< 2.0.0+0.5.7-2~),
php-radius (<< 1.4.0~b1-2~),
php-redis (<< 2.2.7-355-g799e0bc+2.2.7-4~),
php-rrd (<< 2.0.0+1.1.3-4~),
php-smbclient (<< 0.8.0~rc1-2~),
php-ssh2 (<< 0.12-39-g3dfe336+0.12-2~),
php-uploadprogress (<< 1.0.3.1-4-g95d8a0f-2~),
php-uuid (<< 1.0.4-2~),
php-xdebug (<< 2.4.0~rc4-2~),
php-zmq (<< 1.1.3-3~),
php5.6-common (<< 5.6.18+dfsg-10~),
php5.6-json (<< 1.3.9-2~),
php7.0-common (<< 7.0.3-11~)
Description: Common files for PHP packages
This package contains common utilities shared among all packaged PHP
versions.

24
debian/control.in vendored
View file

@ -100,6 +100,30 @@ Section: php
Depends: psmisc (>= 22.15-1~),
sed (>= 4.1.1-1),
${misc:Depends}
Breaks: php-amqp (<< 1.7.0~alpha2-4~),
php-apcu (<< 5.1.3+4.0.10-2~),
php-apcu-bc (<< 1.0.3-2~),
php-ast (<< 0.1.1-2~),
php-geoip (<< 1.1.0-4~),
php-gmagick (<< 2.0.1~rc3+1.1.7~rc3-2~),
php-igbinary (<< 1.2.1-10-ge0e66b9+1.2.1-2~),
php-imagick (<< 3.4.0~rc6-2~),
php-memcache (<< 3.0.9~20151130.fdbd46b-2~),
php-memcached (<< 2.2.0-95-g6ace07d+2.2.0-2~),
php-mongodb (<< 1.1.2-3~),
php-msgpack (<< 2.0.0+0.5.7-2~),
php-radius (<< 1.4.0~b1-2~),
php-redis (<< 2.2.7-355-g799e0bc+2.2.7-4~),
php-rrd (<< 2.0.0+1.1.3-4~),
php-smbclient (<< 0.8.0~rc1-2~),
php-ssh2 (<< 0.12-39-g3dfe336+0.12-2~),
php-uploadprogress (<< 1.0.3.1-4-g95d8a0f-2~),
php-uuid (<< 1.0.4-2~),
php-xdebug (<< 2.4.0~rc4-2~),
php-zmq (<< 1.1.3-3~),
php5.6-common (<< 5.6.18+dfsg-10~),
php5.6-json (<< 1.3.9-2~),
php7.0-common (<< 7.0.3-11~)
Description: Common files for PHP packages
This package contains common utilities shared among all packaged PHP
versions.

View file

@ -1,3 +1,2 @@
/etc/php/mods-available
/var/lib/php/sessions
/var/lib/php/modules

8
debian/rules vendored
View file

@ -15,6 +15,8 @@ PHP_SUPPORTED_VERSIONS := 7.0
, := ,
PHP_DEV_PACKAGES := $(addprefix php,$(addsuffix -dev$(,),$(PHP_SUPPORTED_VERSIONS))), $(addprefix php,$(addsuffix -json$(,),$(PHP_SUPPORTED_VERSIONS)))
PHP_COMMON_DIRS := $(addprefix /etc/php/,$(addsuffix /mods-available,$(PHP_SUPPORTED_VERSIONS)))
reverse = $(shell printf "%s\n" $(strip $1) | sort -rn | tr -s '\n' '+')
PHP_DEB_VERSION := 1:$(call reverse,$(PHP_SUPPORTED_VERSIONS))$(DEB_VERSION)
@ -56,9 +58,13 @@ debian/control: debian/control.in debian/rules debian/changelog
done;
-wrap-and-sort -ab
override_dh_installdirs-indep:
dh_installdirs -i -pphp-common $(PHP_COMMON_DIRS)
dh_installdirs -i --remaining-packages
override_dh_fixperms-indep:
chmod 01733 debian/php-common/var/lib/php/sessions
dh_fixperms -i -pphp-common -X/var/lib/php/sessions
dh_fixperms -i -pphp-common -X/var/lib/php/sessions
dh_fixperms -i --remaining-packages
override_dh_gencontrol:

View file

@ -117,7 +117,7 @@ get_priority() {
local sapi=$2
local modname=$3
local source_ini="/etc/php/mods-available/${modname}.ini"
local source_ini="/etc/php/${version}/mods-available/${modname}.ini"
module_ret=0
module_exists "$version" "$modname" || module_ret=$?
@ -145,13 +145,13 @@ get_live_link_content() {
local sapi=$2
local modname=$3
local priority=$4
echo "/etc/php/mods-available/${modname}.ini"
echo "/etc/php/${version}/mods-available/${modname}.ini"
}
module_exists() {
local version=$1
local modname=$2
local source_ini="/etc/php/mods-available/${modname}.ini"
local source_ini="/etc/php/${version}/mods-available/${modname}.ini"
if [ ! -r "${source_ini}" ]; then
return 1

View file

@ -257,12 +257,12 @@ php_invoke()
if [ "$phpquery_ret" -eq 0 ] ; then
if [ "$PHP_MAINTSCRIPT_NAME" = 'postrm' ] && [ "$PHP_MAINTSCRIPT_METHOD" = "purge" ] ; then
php$CMD -p -f -v "$VERSION" -s "$SAPI" -q "$MOD" || return 1
php_msg "debug" "php_invoke $PHP_MAINTSCRIPT_NAME: Purging module $MOD for $SAPI SAPI"
php_msg "debug" "php_invoke $PHP_MAINTSCRIPT_NAME: Purging module $MOD for PHP $VERSION $SAPI SAPI"
PHP_NEED_ACTION=1
elif [ "$PHP_MAINTSCRIPT_NAME" = 'postrm' ] || [ "$PHP_MAINTSCRIPT_NAME" = 'prerm' ] ; then
if [ "$PHP_MAINTSCRIPT_METHOD" = "remove" ] ; then
php$CMD -m -f -v "$VERSION" -s "$SAPI" -q "$MOD" || return 1
php_msg "info" "php_invoke $PHP_MAINTSCRIPT_NAME: Disable module $MOD for $SAPI SAPI"
php_msg "info" "php_invoke $PHP_MAINTSCRIPT_NAME: Disabled module $MOD for PHP $VERSION $SAPI SAPI"
PHP_NEED_ACTION=1
fi
else

View file

@ -123,7 +123,7 @@ enmod() {
local modname=$3
if ! module_exists "$version" "$modname"; then
warning "Module $modname ini file doesn't exist under /etc/php/mods-available"
warning "Module $modname ini file doesn't exist under /etc/php/${version}/mods-available"
return 1
fi
@ -185,7 +185,7 @@ dismod() {
if ! module_exists "$version" "$modname"; then
if [ "$purge" = "no" ]; then
warning "Module ${modname} ini file doesn't exist under /etc/php/mods-available"
warning "Module ${modname} ini file doesn't exist under /etc/php/${version}/mods-available"
return 1
fi
fi
@ -216,7 +216,7 @@ dismod() {
return 1
esac
if [ -d "/etc/php/$version/$sapi/conf.d" ]; then
if [ -d "/etc/php/${version}/${sapi}/conf.d" ]; then
if [ -h "$live_link" ]; then
rm -f "$live_link"
fi