diff options
author | dengke.du@windriver.com <dengke.du@windriver.com> | 2017-05-09 03:54:33 -0400 |
---|---|---|
committer | Martin Jansa <Martin.Jansa@gmail.com> | 2017-05-23 15:49:36 +0200 |
commit | 6cd249225ecdd0a4592afe1844541378acae6cea (patch) | |
tree | b84c1f9ab13a33e160cff362dfa0f21d363887e7 /meta-oe | |
parent | 12436ba5ff647d69c0eadab7f4e5de42cf19f9ca (diff) | |
download | meta-openembedded-contrib-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>
Diffstat (limited to 'meta-oe')
4 files changed, 58 insertions, 8 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 0000000000..f70e550ff6 --- /dev/null +++ b/meta-oe/recipes-devtools/php/php-5.6.26/0001-Add-lpthread-to-link.patch @@ -0,0 +1,38 @@ +From ed0a954983d50267c2fc0bc13aba929ea0cad971 Mon Sep 17 00:00:00 2001 +From: Dengke Du <dengke.du@windriver.com> +Date: Tue, 2 May 2017 06:34:40 +0000 +Subject: [PATCH] Add -lpthread to link + +When building the php-5.6.26, the following errors occured: + + ld: TSRM/.libs/TSRM.o: undefined reference to symbol + 'pthread_sigmask@@GLIBC_2.2.5' + + error adding symbols: DSO missing from command line + +This is because no pthread to link, so we should add it. + +Upstream-Status: Pending + +Signed-off-by: Dengke Du <dengke.du@windriver.com> +--- + configure.in | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/configure.in b/configure.in +index a467dff1..9afef652 100644 +--- a/configure.in ++++ b/configure.in +@@ -1058,7 +1058,8 @@ case $php_sapi_module in + ;; + esac + +-EXTRA_LIBS="$EXTRA_LIBS $DLIBS $LIBS" ++PTHREAD_LIBS="-lpthread" ++EXTRA_LIBS="$EXTRA_LIBS $DLIBS $LIBS $PTHREAD_LIBS" + + dnl this has to be here to prevent the openssl crypt() from + dnl overriding the system provided crypt(). +-- +2.11.0 + diff --git a/meta-oe/recipes-devtools/php/php.inc b/meta-oe/recipes-devtools/php/php.inc index d3ec9ded38..0e55020885 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 \ openssl libmcrypt" DEPENDS_class-native = "zlib-native libxml2-native" +PHP_MAJOR_VERSION = "${@d.getVar('PV', True).split('.')[0]}" + SRC_URI = "http://php.net/distributions/php-${PV}.tar.bz2 \ file://acinclude-xml2-config.patch \ file://0001-php-don-t-use-broken-wrapper-for-mkdir.patch \ @@ -24,7 +26,7 @@ SRC_URI_append_class-target = " \ file://php-fpm.conf \ file://php-fpm-apache.conf \ file://configure.patch \ - file://70_mod_php5.conf \ + file://70_mod_php${PHP_MAJOR_VERSION}.conf \ file://php-fpm.service \ " S = "${WORKDIR}/php-${PV}" @@ -36,7 +38,7 @@ inherit autotools pkgconfig pythonnative gettext SSTATE_SCAN_FILES += "phpize" SSTATE_SCAN_FILES += "build-defs.h" -PHP_LIBDIR = "${libdir}/php5" +PHP_LIBDIR = "${libdir}/php${PHP_MAJOR_VERSION}" # Common EXTRA_OECONF COMMON_EXTRA_OECONF = "--enable-sockets \ @@ -57,7 +59,7 @@ EXTRA_OECONF = "--enable-mbstring \ --with-iconv=${STAGING_LIBDIR}/.. \ --with-mcrypt=${STAGING_DIR_TARGET}${exec_prefix} \ --with-bz2=${STAGING_DIR_TARGET}${exec_prefix} \ - --with-config-file-path=${sysconfdir}/php/apache2-php5 \ + --with-config-file-path=${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION} \ ${@base_conditional('SITEINFO_ENDIANNESS', 'le', 'ac_cv_c_bigendian_php=no', 'ac_cv_c_bigendian_php=yes', d)} \ ${@bb.utils.contains('PACKAGECONFIG', 'pam', '', 'ac_cv_lib_pam_pam_start=no', d)} \ ${COMMON_EXTRA_OECONF} \ @@ -175,13 +177,13 @@ do_install_append_class-target() { if ${@bb.utils.contains('PACKAGECONFIG', 'apache2', 'true', 'false', d)}; then install -d ${D}${libdir}/apache2/modules install -d ${D}${sysconfdir}/apache2/modules.d - install -d ${D}${sysconfdir}/php/apache2-php5 - install -m 755 libs/libphp5.so ${D}${libdir}/apache2/modules - install -m 644 ${WORKDIR}/70_mod_php5.conf ${D}${sysconfdir}/apache2/modules.d - sed -i s,lib/,${libdir}/, ${D}${sysconfdir}/apache2/modules.d/70_mod_php5.conf + install -d ${D}${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION} + install -m 755 libs/libphp${PHP_MAJOR_VERSION}.so ${D}${libdir}/apache2/modules + install -m 644 ${WORKDIR}/70_mod_php${PHP_MAJOR_VERSION}.conf ${D}${sysconfdir}/apache2/modules.d + sed -i s,lib/,${libdir}/, ${D}${sysconfdir}/apache2/modules.d/70_mod_php${PHP_MAJOR_VERSION}.conf cat ${S}/php.ini-production | \ sed -e 's,extension_dir = \"\./\",extension_dir = \"/usr/lib/extensions\",' \ - > ${D}${sysconfdir}/php/apache2-php5/php.ini + > ${D}${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION}/php.ini rm -f ${D}${sysconfdir}/apache2/httpd.conf* fi } 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 0000000000..d206265a25 --- /dev/null +++ b/meta-oe/recipes-devtools/php/php/70_mod_php7.conf @@ -0,0 +1,9 @@ +LoadModule php7_module lib/apache2/modules/libphp7.so + +<FilesMatch "\.ph(p[2-7]?|tml)$"> + SetHandler application/x-httpd-php +</FilesMatch> + +<FilesMatch "\.phps$"> + SetHandler application/x-httpd-php-source +</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 ddc7ce3c3e..dfce949f92 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" SRC_URI += "file://change-AC_TRY_RUN-to-AC_TRY_LINK.patch \ file://pthread-check-threads-m4.patch \ + file://0001-Add-lpthread-to-link.patch \ " SRC_URI[md5sum] = "cb424b705cfb715fc04f499f8a8cf52e" SRC_URI[sha256sum] = "d47aab8083a4284b905777e1b45dd7735adc53be827b29f896684750ac8b6236" |