summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordengke.du@windriver.com <dengke.du@windriver.com>2017-05-09 03:54:33 -0400
committerMartin Jansa <Martin.Jansa@gmail.com>2017-05-23 15:49:36 +0200
commit6cd249225ecdd0a4592afe1844541378acae6cea (patch)
treeb84c1f9ab13a33e160cff362dfa0f21d363887e7
parent12436ba5ff647d69c0eadab7f4e5de42cf19f9ca (diff)
downloadmeta-openembedded-6cd249225ecdd0a4592afe1844541378acae6cea.tar.gz
php: fix install error for libphp*.so
Changed in V4: Add the tag: meta-oe 1. Different version php have different libphp*.so, so we need to install its corresponding libphp*.so, for example: php-7.1.0 libphp7.so php-5.6.26 libphp5.so 2. Fix php-5.6.26 compiling errors: ld: TSRM/.libs/TSRM.o: undefined reference to symbol 'pthread_sigmask@@GLIBC_2.2.5' error adding symbols: DSO missing from command line 3. Create a configure script like 70_mod_php5, we name it 70_mod_php7, this file connect the php7 and the apache2, so they work together to let the LAMP works correctly. Signed-off-by: Dengke Du <dengke.du@windriver.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-rw-r--r--meta-oe/recipes-devtools/php/php-5.6.26/0001-Add-lpthread-to-link.patch38
-rw-r--r--meta-oe/recipes-devtools/php/php.inc18
-rw-r--r--meta-oe/recipes-devtools/php/php/70_mod_php7.conf9
-rw-r--r--meta-oe/recipes-devtools/php/php_5.6.26.bb1
-rw-r--r--meta-webserver/recipes-php/xdebug/xdebug_2.5.1.bb4
5 files changed, 60 insertions, 10 deletions
diff --git a/meta-oe/recipes-devtools/php/php-5.6.26/0001-Add-lpthread-to-link.patch b/meta-oe/recipes-devtools/php/php-5.6.26/0001-Add-lpthread-to-link.patch
new file mode 100644
index 000000000..f70e550ff
--- /dev/null
+++ b/meta-oe/recipes-devtools/php/php-5.6.26/0001-Add-lpthread-to-link.patch
@@ -0,0 +1,38 @@
1From ed0a954983d50267c2fc0bc13aba929ea0cad971 Mon Sep 17 00:00:00 2001
2From: Dengke Du <dengke.du@windriver.com>
3Date: Tue, 2 May 2017 06:34:40 +0000
4Subject: [PATCH] Add -lpthread to link
5
6When building the php-5.6.26, the following errors occured:
7
8 ld: TSRM/.libs/TSRM.o: undefined reference to symbol
9 'pthread_sigmask@@GLIBC_2.2.5'
10
11 error adding symbols: DSO missing from command line
12
13This is because no pthread to link, so we should add it.
14
15Upstream-Status: Pending
16
17Signed-off-by: Dengke Du <dengke.du@windriver.com>
18---
19 configure.in | 3 ++-
20 1 file changed, 2 insertions(+), 1 deletion(-)
21
22diff --git a/configure.in b/configure.in
23index a467dff1..9afef652 100644
24--- a/configure.in
25+++ b/configure.in
26@@ -1058,7 +1058,8 @@ case $php_sapi_module in
27 ;;
28 esac
29
30-EXTRA_LIBS="$EXTRA_LIBS $DLIBS $LIBS"
31+PTHREAD_LIBS="-lpthread"
32+EXTRA_LIBS="$EXTRA_LIBS $DLIBS $LIBS $PTHREAD_LIBS"
33
34 dnl this has to be here to prevent the openssl crypt() from
35 dnl overriding the system provided crypt().
36--
372.11.0
38
diff --git a/meta-oe/recipes-devtools/php/php.inc b/meta-oe/recipes-devtools/php/php.inc
index d3ec9ded3..0e5502088 100644
--- a/meta-oe/recipes-devtools/php/php.inc
+++ b/meta-oe/recipes-devtools/php/php.inc
@@ -9,6 +9,8 @@ DEPENDS = "zlib bzip2 libxml2 virtual/libiconv php-native lemon-native \
9 openssl libmcrypt" 9 openssl libmcrypt"
10DEPENDS_class-native = "zlib-native libxml2-native" 10DEPENDS_class-native = "zlib-native libxml2-native"
11 11
12PHP_MAJOR_VERSION = "${@d.getVar('PV', True).split('.')[0]}"
13
12SRC_URI = "http://php.net/distributions/php-${PV}.tar.bz2 \ 14SRC_URI = "http://php.net/distributions/php-${PV}.tar.bz2 \
13 file://acinclude-xml2-config.patch \ 15 file://acinclude-xml2-config.patch \
14 file://0001-php-don-t-use-broken-wrapper-for-mkdir.patch \ 16 file://0001-php-don-t-use-broken-wrapper-for-mkdir.patch \
@@ -24,7 +26,7 @@ SRC_URI_append_class-target = " \
24 file://php-fpm.conf \ 26 file://php-fpm.conf \
25 file://php-fpm-apache.conf \ 27 file://php-fpm-apache.conf \
26 file://configure.patch \ 28 file://configure.patch \
27 file://70_mod_php5.conf \ 29 file://70_mod_php${PHP_MAJOR_VERSION}.conf \
28 file://php-fpm.service \ 30 file://php-fpm.service \
29 " 31 "
30S = "${WORKDIR}/php-${PV}" 32S = "${WORKDIR}/php-${PV}"
@@ -36,7 +38,7 @@ inherit autotools pkgconfig pythonnative gettext
36SSTATE_SCAN_FILES += "phpize" 38SSTATE_SCAN_FILES += "phpize"
37SSTATE_SCAN_FILES += "build-defs.h" 39SSTATE_SCAN_FILES += "build-defs.h"
38 40
39PHP_LIBDIR = "${libdir}/php5" 41PHP_LIBDIR = "${libdir}/php${PHP_MAJOR_VERSION}"
40 42
41# Common EXTRA_OECONF 43# Common EXTRA_OECONF
42COMMON_EXTRA_OECONF = "--enable-sockets \ 44COMMON_EXTRA_OECONF = "--enable-sockets \
@@ -57,7 +59,7 @@ EXTRA_OECONF = "--enable-mbstring \
57 --with-iconv=${STAGING_LIBDIR}/.. \ 59 --with-iconv=${STAGING_LIBDIR}/.. \
58 --with-mcrypt=${STAGING_DIR_TARGET}${exec_prefix} \ 60 --with-mcrypt=${STAGING_DIR_TARGET}${exec_prefix} \
59 --with-bz2=${STAGING_DIR_TARGET}${exec_prefix} \ 61 --with-bz2=${STAGING_DIR_TARGET}${exec_prefix} \
60 --with-config-file-path=${sysconfdir}/php/apache2-php5 \ 62 --with-config-file-path=${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION} \
61 ${@base_conditional('SITEINFO_ENDIANNESS', 'le', 'ac_cv_c_bigendian_php=no', 'ac_cv_c_bigendian_php=yes', d)} \ 63 ${@base_conditional('SITEINFO_ENDIANNESS', 'le', 'ac_cv_c_bigendian_php=no', 'ac_cv_c_bigendian_php=yes', d)} \
62 ${@bb.utils.contains('PACKAGECONFIG', 'pam', '', 'ac_cv_lib_pam_pam_start=no', d)} \ 64 ${@bb.utils.contains('PACKAGECONFIG', 'pam', '', 'ac_cv_lib_pam_pam_start=no', d)} \
63 ${COMMON_EXTRA_OECONF} \ 65 ${COMMON_EXTRA_OECONF} \
@@ -175,13 +177,13 @@ do_install_append_class-target() {
175 if ${@bb.utils.contains('PACKAGECONFIG', 'apache2', 'true', 'false', d)}; then 177 if ${@bb.utils.contains('PACKAGECONFIG', 'apache2', 'true', 'false', d)}; then
176 install -d ${D}${libdir}/apache2/modules 178 install -d ${D}${libdir}/apache2/modules
177 install -d ${D}${sysconfdir}/apache2/modules.d 179 install -d ${D}${sysconfdir}/apache2/modules.d
178 install -d ${D}${sysconfdir}/php/apache2-php5 180 install -d ${D}${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION}
179 install -m 755 libs/libphp5.so ${D}${libdir}/apache2/modules 181 install -m 755 libs/libphp${PHP_MAJOR_VERSION}.so ${D}${libdir}/apache2/modules
180 install -m 644 ${WORKDIR}/70_mod_php5.conf ${D}${sysconfdir}/apache2/modules.d 182 install -m 644 ${WORKDIR}/70_mod_php${PHP_MAJOR_VERSION}.conf ${D}${sysconfdir}/apache2/modules.d
181 sed -i s,lib/,${libdir}/, ${D}${sysconfdir}/apache2/modules.d/70_mod_php5.conf 183 sed -i s,lib/,${libdir}/, ${D}${sysconfdir}/apache2/modules.d/70_mod_php${PHP_MAJOR_VERSION}.conf
182 cat ${S}/php.ini-production | \ 184 cat ${S}/php.ini-production | \
183 sed -e 's,extension_dir = \"\./\",extension_dir = \"/usr/lib/extensions\",' \ 185 sed -e 's,extension_dir = \"\./\",extension_dir = \"/usr/lib/extensions\",' \
184 > ${D}${sysconfdir}/php/apache2-php5/php.ini 186 > ${D}${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION}/php.ini
185 rm -f ${D}${sysconfdir}/apache2/httpd.conf* 187 rm -f ${D}${sysconfdir}/apache2/httpd.conf*
186 fi 188 fi
187} 189}
diff --git a/meta-oe/recipes-devtools/php/php/70_mod_php7.conf b/meta-oe/recipes-devtools/php/php/70_mod_php7.conf
new file mode 100644
index 000000000..d206265a2
--- /dev/null
+++ b/meta-oe/recipes-devtools/php/php/70_mod_php7.conf
@@ -0,0 +1,9 @@
1LoadModule php7_module lib/apache2/modules/libphp7.so
2
3<FilesMatch "\.ph(p[2-7]?|tml)$">
4 SetHandler application/x-httpd-php
5</FilesMatch>
6
7<FilesMatch "\.phps$">
8 SetHandler application/x-httpd-php-source
9</FilesMatch>
diff --git a/meta-oe/recipes-devtools/php/php_5.6.26.bb b/meta-oe/recipes-devtools/php/php_5.6.26.bb
index ddc7ce3c3..dfce949f9 100644
--- a/meta-oe/recipes-devtools/php/php_5.6.26.bb
+++ b/meta-oe/recipes-devtools/php/php_5.6.26.bb
@@ -4,6 +4,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=b602636d46a61c0ac0432bbf5c078fe4"
4 4
5SRC_URI += "file://change-AC_TRY_RUN-to-AC_TRY_LINK.patch \ 5SRC_URI += "file://change-AC_TRY_RUN-to-AC_TRY_LINK.patch \
6 file://pthread-check-threads-m4.patch \ 6 file://pthread-check-threads-m4.patch \
7 file://0001-Add-lpthread-to-link.patch \
7 " 8 "
8SRC_URI[md5sum] = "cb424b705cfb715fc04f499f8a8cf52e" 9SRC_URI[md5sum] = "cb424b705cfb715fc04f499f8a8cf52e"
9SRC_URI[sha256sum] = "d47aab8083a4284b905777e1b45dd7735adc53be827b29f896684750ac8b6236" 10SRC_URI[sha256sum] = "d47aab8083a4284b905777e1b45dd7735adc53be827b29f896684750ac8b6236"
diff --git a/meta-webserver/recipes-php/xdebug/xdebug_2.5.1.bb b/meta-webserver/recipes-php/xdebug/xdebug_2.5.1.bb
index 077bdc8a8..77413784d 100644
--- a/meta-webserver/recipes-php/xdebug/xdebug_2.5.1.bb
+++ b/meta-webserver/recipes-php/xdebug/xdebug_2.5.1.bb
@@ -29,5 +29,5 @@ do_install() {
29 oe_runmake install INSTALL_ROOT=${D} 29 oe_runmake install INSTALL_ROOT=${D}
30} 30}
31 31
32FILES_${PN} += "${libdir}/php5/extensions/*/*.so" 32FILES_${PN} += "${libdir}/php*/extensions/*/*.so"
33FILES_${PN}-dbg += "${libdir}/php5/extensions/*/.debug" 33FILES_${PN}-dbg += "${libdir}/php*/extensions/*/.debug"