Overview

Request 2635 (accepted)

Check in multi-bindings version for Plesk-provided PHP

Submit package Kolab:Winterfell / libkolabxml to package Kolab:16 / libkolabxml

debian.changelog Changed
x
 
1
@@ -1,3 +1,9 @@
2
+libkolabxml (1.2.0-0~kolab4) unstable; urgency=low
3
+
4
+  * Bindings for multiple versions of Plesk-provided PHP
5
+
6
+ -- Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen@kolabsys.com>  Sun, 10 Nov 2019 16:38:05 +0200
7
+
8
 libkolabxml (1.2.0-0~kolab3) unstable; urgency=low
9
 
10
   * Debian 10 support
11
debian.control Changed
42
 
1
@@ -3,20 +3,26 @@
2
 Priority: optional
3
 Maintainer: Debian Kolab Maintainers <pkg-kolab-devel@lists.alioth.debian.org>
4
 Uploaders: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen@kolabsys.com>, Paul Klos <kolab@klos2day.nl>
5
-Build-Depends: cmake,
6
-               debhelper,
7
-               libboost-dev,
8
-               libboost-system-dev,
9
-               libboost-thread-dev,
10
-               libcurl4-gnutls-dev,
11
-               libossp-uuid-dev,
12
-               libqt4-dev,
13
-               libxerces-c-dev,
14
-               php-cgi | php5-cli,
15
-               php-dev | php5-dev,
16
-               python-dev,
17
-               swig (>= 2.0),
18
-               xsdcxx
19
+Build-Depends:  cmake,
20
+                debhelper,
21
+                libboost-dev,
22
+                libboost-system-dev,
23
+                libboost-thread-dev,
24
+                libcurl4-gnutls-dev,
25
+                libossp-uuid-dev,
26
+                libqt4-dev,
27
+                libxerces-c-dev,
28
+                php-cgi | php5-cli,
29
+                php-dev | php5-dev,
30
+                plesk-php56-dev | bash,
31
+                plesk-php70-dev | bash,
32
+                plesk-php71-dev | bash,
33
+                plesk-php72-dev | bash,
34
+                plesk-php73-dev | bash,
35
+                psa | bash,
36
+                python-dev,
37
+                swig (>= 2.0),
38
+                xsdcxx
39
 X-Python-Version: >= 2.7
40
 Standards-Version: 3.9.3
41
 Homepage: http://git.kolab.org/libkolabxml
42
debian.rules Changed
124
 
1
@@ -5,6 +5,8 @@
2
 PHPINC := $(shell php-config --include-dir)
3
 PYTHON_SITEARCH := $(shell python -c 'from distutils.sysconfig import get_python_lib; print get_python_lib(1)')
4
 
5
+PHP_VERSIONS=7.3 7.2 7.1 7.0 5.6
6
+
7
 # Uncomment this to turn on verbose mode.
8
 export DH_VERBOSE=1
9
 export DH_OPTIONS=-v
10
@@ -17,13 +19,82 @@
11
 
12
 override_dh_gencontrol:
13
    echo "php:Depends=phpapi-${PHPAPI}" >> debian/php-kolabformat.substvars
14
+
15
+   if [ -f /etc/plesk-release ] ; then \
16
+       for version in $(PHP_VERSIONS) ; do \
17
+           if [ ! -f "/opt/plesk/php/$${version}/bin/php-config" ] ; then \
18
+               continue ; \
19
+           fi ; \
20
+           shver=$$(echo $${version} | sed -e 's/\.//g') ; \
21
+           echo "" >> debian/control ; \
22
+           echo "Package: plesk-php$${shver}-kolabformat" >> debian/control ; \
23
+           echo "Architecture: amd64" >> debian/control ; \
24
+           echo "Depends: libkolabxml1v5, plesk-php$${shver}" >> debian/control ; \
25
+           echo "Description: Kolab format bindings for Plesk PHP $${version}" >> debian/control ; \
26
+           echo "" >> debian/control ; \
27
+           sed -i -e "/Files:/ i\
28
+ plesk-php$$(echo $${version} | sed -e 's/\.//g')-kolabformat deb web extra" debian/control ; \
29
+           echo "opt/plesk/php/$${version}/lib/php/modules/*kolabformat.so" >> debian/plesk-php$${shver}-kolabformat.install ; \
30
+           echo "opt/plesk/php/$${version}/share/php/kolabformat.php" >> debian/plesk-php$${shver}-kolabformat.install ; \
31
+       done ; \
32
+   fi
33
+
34
    dh_gencontrol
35
 
36
+override_dh_auto_build:
37
+   if [ -f /etc/plesk-release ] ; then \
38
+       for version in $(PHP_VERSIONS) ; do \
39
+           if [ ! -f "/opt/plesk/php/$${version}/bin/php-config" ] ; then \
40
+               continue ; \
41
+           fi ; \
42
+           if [ $$(/opt/plesk/php/$${version}/bin/php-config --vernum) -gt 70000 ]; then \
43
+               sed -r -i -e 's/-c\+\+ -php[0-9]? -o/-c++ -php7 -o/g' src/php/CMakeLists.txt ; \
44
+           else \
45
+               sed -r -i -e 's/-c\+\+ -php[0-9]? -o/-c++ -php5 -o/g' src/php/CMakeLists.txt ; \
46
+           fi ; \
47
+           grep kolabformat.i src/php/CMakeLists.txt ; \
48
+           dh_auto_build --builddirectory php-$${version} ; \
49
+       done ; \
50
+   fi
51
+
52
+   if [ $$(php-config --vernum) -gt 70000 ]; then \
53
+       sed -r -i -e 's/-c\+\+ -php[0-9]? -o/-c++ -php7 -o/g' src/php/CMakeLists.txt ; \
54
+   else \
55
+       sed -r -i -e 's/-c\+\+ -php[0-9]? -o/-c++ -php5 -o/g' src/php/CMakeLists.txt ; \
56
+   fi
57
+
58
+   dh_auto_build
59
+
60
 override_dh_auto_configure:
61
+   echo 9 > debian/compat
62
+   if [ -f /etc/plesk-release ] ; then \
63
+       for version in $(PHP_VERSIONS) ; do \
64
+           if [ ! -f "/opt/plesk/php/$${version}/bin/php-config" ] ; then \
65
+               continue ; \
66
+           fi ; \
67
+           if [ $$(/opt/plesk/php/$${version}/bin/php-config --vernum) -gt 70000 ]; then \
68
+               sed -r -i -e 's/-c\+\+ -php[0-9]? -o/-c++ -php7 -o/g' src/php/CMakeLists.txt ; \
69
+           else \
70
+               sed -r -i -e 's/-c\+\+ -php[0-9]? -o/-c++ -php5 -o/g' src/php/CMakeLists.txt ; \
71
+           fi ; \
72
+           grep kolabformat.i src/php/CMakeLists.txt ; \
73
+           dh_auto_configure --builddirectory php-$${version} -- \
74
+               -DSWIG=/usr/bin/swig \
75
+               -DPHP_BINDINGS=ON \
76
+               -DPHP_INCLUDE_DIR=$$(/opt/plesk/php/$${version}/bin/php-config --include-dir) \
77
+               -DPHP_CONFIG_EXECUTABLE=/opt/plesk/bin/$${version}/bin/php-config \
78
+               -DPHP_INSTALL_DIR=$$(/opt/plesk/php/$${version}/bin/php-config --extension-dir) ; \
79
+       done ; \
80
+   fi
81
+
82
    if [ $$(php-config --vernum) -gt 70000 ]; then \
83
-       sed -i -e 's/-c++ -php/-c++ -php7/g' src/php/CMakeLists.txt ; \
84
+       sed -r -i -e 's/-c\+\+ -php[0-9]? -o/-c++ -php7 -o/g' src/php/CMakeLists.txt ; \
85
+   else \
86
+       sed -r -i -e 's/-c\+\+ -php[0-9]? -o/-c++ -php -o/g' src/php/CMakeLists.txt ; \
87
    fi
88
 
89
+   grep kolabformat.i src/php/CMakeLists.txt
90
+
91
    dh_auto_configure -- \
92
        -DSWIG=/usr/bin/swig \
93
        -DPHP_BINDINGS=ON \
94
@@ -37,8 +108,6 @@
95
        echo "debian/kolabformat.ini etc/php/7.3/mods-available" >> debian/php-kolabformat.install ; \
96
    elif [ -d "/etc/php/7.2/mods-available/" ]; then \
97
        echo "debian/kolabformat.ini etc/php/7.2/mods-available" >> debian/php-kolabformat.install ; \
98
-   elif [ -d "/etc/php/7.1/mods-available/" ]; then \
99
-       echo "debian/kolabformat.ini etc/php/7.1/mods-available" >> debian/php-kolabformat.install ; \
100
    elif [ -d "/etc/php/7.0/mods-available/" ]; then \
101
        echo "debian/kolabformat.ini etc/php/7.0/mods-available" >> debian/php-kolabformat.install ; \
102
    elif [ -d "/etc/php/mods-available/" ]; then \
103
@@ -47,4 +116,20 @@
104
        echo "debian/kolabformat.ini etc/php5/mods-available" >> debian/php-kolabformat.install ; \
105
    fi
106
    mv debian/tmp/usr/lib/php*/$(PHPAPI)/kolabformat.php debian/tmp/usr/share/php/kolabformat.php
107
+
108
+   if [ -f /etc/plesk-release ]; then \
109
+       for version in $(PHP_VERSIONS) ; do \
110
+           if [ ! -f "/opt/plesk/php/$${version}/bin/php-config" ]; then \
111
+               continue ; \
112
+           fi ; \
113
+           shver=$$(echo $${version} | sed -e 's/\.//g') ; \
114
+           echo "debian/kolabformat.ini opt/plesk/php/$${version}/etc/php.d" >> debian/plesk-php$${shver}-kolabformat.install ; \
115
+           make -C php-$${version} install DESTDIR=$(PWD)/debian/plesk-php$${shver}-kolabformat/ ; \
116
+           mkdir -p debian/plesk-php$${shver}-kolabformat/opt/plesk/php/$${version}/share/php/ ; \
117
+           mv debian/plesk-php$${shver}-kolabformat$$(/opt/plesk/php/$${version}/bin/php-config --extension-dir)/kolabformat.php \
118
+               debian/plesk-php$${shver}-kolabformat/opt/plesk/php/$${version}/share/php/kolabformat.php ; \
119
+           rm -rf debian/plesk-php$${shver}-kolabformat/usr/ ; \
120
+       done ; \
121
+   fi
122
+
123
    dh_install --list-missing
124
libkolabxml.dsc Changed
55
 
1
@@ -2,30 +2,36 @@
2
 Source: libkolabxml
3
 Binary: libkolabxml1v5, php-kolabformat, python-kolabformat, libkolabxml-dev
4
 Architecture: any
5
-Version: 1.2.0-0~kolab3
6
+Version: 1.2.0-0~kolab4
7
 Maintainer: Kolab Systems AG <contact@kolabsystems.com>
8
 Uploaders: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen@kolabsys.com>
9
 Homepage: http://git.kolab.org/libkolabxml
10
 Standards-Version: 3.9.3
11
-Build-Depends: cmake,
12
-               debhelper,
13
-               libboost-dev,
14
-               libboost-system-dev,
15
-               libboost-thread-dev,
16
-               libcurl4-gnutls-dev,
17
-               libossp-uuid-dev,
18
-               libqt4-dev,
19
-               libxerces-c-dev,
20
-               php-cgi | php5-cli,
21
-               php-dev | php5-dev,
22
-               python-dev,
23
-               swig (>= 2.0),
24
-               xsdcxx
25
-Package-List: 
26
+Build-Depends:  cmake,
27
+                debhelper,
28
+                libboost-dev,
29
+                libboost-system-dev,
30
+                libboost-thread-dev,
31
+                libcurl4-gnutls-dev,
32
+                libossp-uuid-dev,
33
+                libqt4-dev,
34
+                libxerces-c-dev,
35
+                php-cgi | php5-cli,
36
+                php-dev | php5-dev,
37
+                plesk-php56-dev | bash,
38
+                plesk-php70-dev | bash,
39
+                plesk-php71-dev | bash,
40
+                plesk-php72-dev | bash,
41
+                plesk-php73-dev | bash,
42
+                psa | bash,
43
+                python-dev,
44
+                swig (>= 2.0),
45
+                xsdcxx
46
+Package-List:
47
  libkolabxml-dev deb libdevel optional
48
  libkolabxml1v5 deb libs optional
49
  php-kolabformat deb libs optional
50
  python-kolabformat deb python optional
51
-Files: 
52
+Files:
53
  00000000000000000000000000000000 0 libkolabxml-1.2.0.tar.gz
54
  00000000000000000000000000000000 0 debian.tar.gz
55
Refresh
Refresh
Request History
Jeroen van Meeuwen's avatar

vanmeeuwen created request over 5 years ago

Check in multi-bindings version for Plesk-provided PHP


Jeroen van Meeuwen's avatar

vanmeeuwen accepted review over 5 years ago

Accept


Jeroen van Meeuwen's avatar

vanmeeuwen accepted review over 5 years ago

Accept


Jeroen van Meeuwen's avatar

vanmeeuwen approved review over 5 years ago

Accept


Jeroen van Meeuwen's avatar

vanmeeuwen accepted request over 5 years ago

Accept