From 868407c65d79e82e83c37f7c32bef9a2e2bc4cd5 Mon Sep 17 00:00:00 2001 From: Brad Bishop Date: Mon, 4 Nov 2019 13:24:47 -0500 Subject: meta-openembedded: subtree update:c986cbed93..e0daf6f8e0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adrian Bunk (19): lldpd: Upgrade 1.0.3 -> 1.0.4 usrsctp: Upgrade to a more recent git snapshot cim-schema: Remove duplicate file dovecot: Upgrade 2.2.36.3 -> 2.2.36.4 flashrom: Upgrade 1.0 -> 1.1 doxygen: Upgrade 1.8.15 -> 1.8.16 nodejs: Upgrade 10.16.3 -> 10.17.0 php: Upgrade 7.3.9 -> 7.3.11 libdivecomputer: Upgrade to 0.6.0 libnss-nisplus: Upgrade to the latest upstream git pegtl: Upgrade 2.1.4 -> 2.8.1 openwsman: Upgrade 2.6.9 -> 2.6.11 cgdb: Upgrade 0.6.8 -> 0.7.1 packagegroup-meta-networking: Exclude nonbuilding recipes with musl xf86-input-tslib: Upgrade 0.0.6 -> 0.0.7 libmicrohttpd: Upgrade 0.9.66 -> 0.9.67 poco: Upgrade 1.9.0 -> 1.9.4 libgphoto2: Remove obsolete HAL files mdns: Mark as incompatible with musl Andreas Müller (5): unicode-ucd: initial add 12.1.0 unicode-ucd: Set correct SUMMARY and HOMEPAGE colord: initial add 1.4.4 colord-gtk: initial add 0.2.0 ibus: initial add 1.5.21 André Draszik (3): nodejs: allow use of system c-ares (and make default) libuv: update to 1.33.1 nodejs: allow use of system libuv (and make default) Carlos Rafael Giani (1): opencv: Enable pkg-config .pc file generation Khem Raj (5): miniupnpd: Update to 2.1.20191006 miniupnpd: Build config.h before full build poco: Fix build on risc-v python-docutils: Upgrade to 0.15.2 iwd: Use python3 variant of docutils during build Luca Boccassi (1): dbus-broker: build with libaudit if selinux is enabled Martin Siegumfeldt (1): libiio: add python3 packageconfig Paul Eggleton (1): python3-pillow: update to 6.2.1 Slater, Joseph (2): syslog-ng: add volatile directory init for systemd syslog-ng: change conf files to version 3.19 Trevor Gamblin (4): python-priority: add recipe python-h2: add recipe python-hyperframe: add recipe python-hpack: add recipe Yi Zhao (1): freeradius: set CLEANBROKEN Zang Ruochen (22): poppler: upgrade 0.80.0 -> 0.82.0 gmime: upgrade 3.2.3 -> 3.2.4 autofs: upgrade 5.1.5 -> 5.1.6 python-simplejson: enable native and nativesdk python-dnspython: upgrade 1.15.0 -> 1.16.0 python-engineio: upgrade 3.9.3 -> 3.10.0 python-evdev: upgrade 0.7.0 -> 1.2.0 python-future: upgrade 0.16.0 -> 0.18.2 python-intervals: upgrade 1.5.4 -> 1.10.0 python-isort: upgrade 4.3.4 -> 4.3.21 python-javaobj-py3: upgrade 0.2.4 -> 0.3.0 python-lazy-object-proxy: upgrade 1.3.1 -> 1.4.3 python-parse: upgrade 1.8.4 -> 1.12.1 python-pathlib2: upgrade 2.3.4 -> 2.3.5 python-periphery: upgrade 1.1.1 -> 2.0.0 python-pint: upgrade 0.8.1 -> 0.9 python-progress: upgrade 1.4 -> 1.5 python-prompt-toolkit: upgrade 2.0.4 -> 2.0.10 python-pybind11: upgrade 2.2.3 -> 2.4.3 python-pycryptodome: upgrade 3.4.11 -> 3.9.0 python-pyexpect: upgrade 1.0.17 -> 1.0.19 python-pyfirmata: upgrade 1.0.3 -> 1.1.0 Zheng Ruoqin (23): pure-ftpd: upgrade 1.0.47 -> 1.0.49 grpc: upgrade 1.24.1 -> 1.24.3 corosync: upgrade 2.4.4 -> 2.4.5 dhcpcd: upgrade 8.0.2 -> 8.1.1 iscsi-initiator-utils: upgrade 2.0.877 -> 2.0.878 znc: upgrade 1.7.4 -> 1.7.5 babeld: upgrade 1.8.4 -> 1.9.1 htpdate: upgrade 1.2.1 -> 1.2.2 nbd: upgrade 3.19 -> 3.20 unbound: upgrade 1.9.2 -> 1.9.4 wireshark: upgrade 3.0.3 -> 3.0.6 mtr: upgrade 0.92 -> 0.93 libowfat: upgrade 0.31 -> 0.32 iozone3: upgrade 484 -> 487 libhugetlbfs: upgrade 2.21 -> 2.22 phoronix-test-suite: upgrade 8.8.1 -> 9.0.1 lmsensors: upgrade 3.5.0 -> 3.6.0 paho-mqtt-c: upgrade 1.3.0 -> 1.3.1 rtorrent: upgrade 0.9.7 -> 0.9.8 zabbix: upgrade 4.2.6 -> 4.2.7 iwd: upgrade 0.20 -> 0.23 libtorrent: upgrade 0.13.7 -> 0.13.8 ledmon: upgrade to 0.93 Change-Id: I66f0f395da9087e46899cf882e36d9cc50718c62 Signed-off-by: Brad Bishop --- ...oid-use-of-mips-which-is-reserved-on-mips.patch | 67 +++++ .../cgdb/cgdb/remove-help2man.patch | 47 ---- .../meta-oe/recipes-devtools/cgdb/cgdb_0.6.8.bb | 21 -- .../meta-oe/recipes-devtools/cgdb/cgdb_0.7.1.bb | 22 ++ .../doxygen/doxygen/0001-Fix-6906.patch | 94 ------- .../recipes-devtools/doxygen/doxygen_1.8.15.bb | 17 -- .../recipes-devtools/doxygen/doxygen_1.8.16.bb | 17 ++ ...3-Crypto-reduce-memory-usage-of-SignFinal.patch | 122 --------- .../recipes-devtools/nodejs/nodejs_10.16.3.bb | 113 --------- .../recipes-devtools/nodejs/nodejs_10.17.0.bb | 114 +++++++++ .../meta-oe/recipes-devtools/php/php.inc | 263 -------------------- ...049-ext-intl-Use-pkg-config-to-detect-icu.patch | 161 ------------ .../meta-oe/recipes-devtools/php/php_7.3.11.bb | 275 +++++++++++++++++++++ .../meta-oe/recipes-devtools/php/php_7.3.9.bb | 20 -- 14 files changed, 495 insertions(+), 858 deletions(-) create mode 100644 meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb/0001-Avoid-use-of-mips-which-is-reserved-on-mips.patch delete mode 100644 meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb/remove-help2man.patch delete mode 100644 meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb_0.6.8.bb create mode 100644 meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb_0.7.1.bb delete mode 100644 meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-Fix-6906.patch delete mode 100644 meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.15.bb create mode 100644 meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.16.bb delete mode 100644 meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Crypto-reduce-memory-usage-of-SignFinal.patch delete mode 100644 meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.3.bb create mode 100644 meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.17.0.bb delete mode 100644 meta-openembedded/meta-oe/recipes-devtools/php/php.inc delete mode 100644 meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch create mode 100644 meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.11.bb delete mode 100644 meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.9.bb (limited to 'meta-openembedded/meta-oe/recipes-devtools') diff --git a/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb/0001-Avoid-use-of-mips-which-is-reserved-on-mips.patch b/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb/0001-Avoid-use-of-mips-which-is-reserved-on-mips.patch new file mode 100644 index 000000000..daf90ad44 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb/0001-Avoid-use-of-mips-which-is-reserved-on-mips.patch @@ -0,0 +1,67 @@ +From a3eba0fcee5e96ef47a6d3fac7196a1074f0dc17 Mon Sep 17 00:00:00 2001 +From: Adrian Bunk +Date: Wed, 30 Oct 2019 11:07:23 +0200 +Subject: Avoid use of "mips" which is reserved on mips + +Upstream-Status: Submitted [https://github.com/brasko/gdbwire/pull/9] + +Signed-off-by: Adrian Bunk + +diff --git a/src/gdbwire_mi_parser.c b/src/gdbwire_mi_parser.c +index 3f6b563..24aa0cf 100644 +--- a/lib/tgdb/gdbwire.c ++++ b/lib/tgdb/gdbwire.c +@@ -40,7 +40,7 @@ struct gdbwire_mi_parser { + /* The GDB/MI lexer state */ + yyscan_t mils; + /* The GDB/MI push parser state */ +- gdbwire_mi_pstate *mips; ++ gdbwire_mi_pstate *mipst; + /* The client parser callbacks */ + struct gdbwire_mi_parser_callbacks callbacks; + }; +@@ -71,8 +71,8 @@ gdbwire_mi_parser_create(struct gdbwire_mi_parser_callbacks callbacks) + } + + /* Create a new push parser state instance */ +- parser->mips = gdbwire_mi_pstate_new(); +- if (!parser->mips) { ++ parser->mipst = gdbwire_mi_pstate_new(); ++ if (!parser->mipst) { + gdbwire_mi_lex_destroy(parser->mils); + gdbwire_string_destroy(parser->buffer); + free(parser); +@@ -81,7 +81,7 @@ gdbwire_mi_parser_create(struct gdbwire_mi_parser_callbacks callbacks) + + /* Ensure that the callbacks are non null */ + if (!callbacks.gdbwire_mi_output_callback) { +- gdbwire_mi_pstate_delete(parser->mips); ++ gdbwire_mi_pstate_delete(parser->mipst); + gdbwire_mi_lex_destroy(parser->mils); + gdbwire_string_destroy(parser->buffer); + free(parser); +@@ -109,9 +109,9 @@ void gdbwire_mi_parser_destroy(struct gdbwire_mi_parser *parser) + } + + /* Free the push parser instance */ +- if (parser->mips) { +- gdbwire_mi_pstate_delete(parser->mips); +- parser->mips = NULL; ++ if (parser->mipst) { ++ gdbwire_mi_pstate_delete(parser->mipst); ++ parser->mipst = NULL; + } + + free(parser); +@@ -162,7 +162,7 @@ gdbwire_mi_parser_parse_line(struct gdbwire_mi_parser *parser, + pattern = gdbwire_mi_lex(parser->mils); + if (pattern == 0) + break; +- mi_status = gdbwire_mi_push_parse(parser->mips, pattern, NULL, ++ mi_status = gdbwire_mi_push_parse(parser->mipst, pattern, NULL, + parser->mils, &output); + } while (mi_status == YYPUSH_MORE); + +-- +2.20.1 + diff --git a/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb/remove-help2man.patch b/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb/remove-help2man.patch deleted file mode 100644 index 4358629b7..000000000 --- a/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb/remove-help2man.patch +++ /dev/null @@ -1,47 +0,0 @@ -Disable building manpages so that make install doesn't fail due to lack of help2man - -Upstream-Status: Inappropriate [config] - -Signed-off-by: Matthieu Crapet ---- - configure.ac | 3 --- - doc/Makefile.am | 5 ----- - 2 files changed, 8 deletions(-) - -diff --git a/configure.ac b/configure.ac -index ee7eca0..1f0d924 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -134,9 +134,6 @@ dnl check that the required tools are available to generate documentation - if test "$HAS_MAKEINFO" != "yes" ; then - AC_MSG_ERROR([Please install makeinfo before installing]) - fi --if test "$HAS_HELP2MAN" != "yes" ; then -- AC_MSG_ERROR([Please install help2man]) --fi - - dnl Checking for log10 function in math - I would like to remove this - AC_CHECK_LIB(m, log10) -diff --git a/doc/Makefile.am b/doc/Makefile.am -index 60662f6..0ae0013 100644 ---- a/doc/Makefile.am -+++ b/doc/Makefile.am -@@ -1,15 +1,10 @@ - info_TEXINFOS = cgdb.texi - cgdb_TEXINFOS = gpl.texi - --dist_man_MANS = cgdb.1 - EXTRA_DIST = cgdb.txt - - dist_pkgdata_DATA = cgdb.txt - --# generate the man page using help2man. --cgdb.1: -- help2man --output=$(top_srcdir)/doc/cgdb.1 $(top_builddir)/cgdb/cgdb$(EXEEXT) -- - cgdb.txt: cgdb.texi $(srcdir)/version.texi $(cgdb_TEXINFOS) - TEXTS = cgdb.txt - text-am: $(TEXTS) --- -1.9.1 - diff --git a/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb_0.6.8.bb b/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb_0.6.8.bb deleted file mode 100644 index 74019fb62..000000000 --- a/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb_0.6.8.bb +++ /dev/null @@ -1,21 +0,0 @@ -SUMMARY = "curses-based interface to GDB" -DESCRIPTION = "cgdb is a lightweight curses (terminal-based) interface to the GNU Debugger (GDB)." -HOMEPAGE = "http://cgdb.github.io/" -SECTION = "devel" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" - -DEPENDS = "flex-native readline ncurses" - -inherit autotools - -SRC_URI = "http://cgdb.me/files/${BP}.tar.gz \ - file://remove-help2man.patch" -SRC_URI[md5sum] = "7bd38c79bf4d794d239928fef401fca3" -SRC_URI[sha256sum] = "be203e29be295097439ab67efe3dc8261f742c55ff3647718d67d52891f4cf41" - -CACHED_CONFIGUREVARS = "ac_cv_file__dev_ptmx=yes ac_cv_rl_version=6.2" -EXTRA_OECONF = "--with-readline=${STAGING_LIBDIR} \ - --with-ncurses=${STAGING_LIBDIR}" - -RDEPENDS_${PN} = "gdb" diff --git a/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb_0.7.1.bb b/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb_0.7.1.bb new file mode 100644 index 000000000..57e364e1c --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/cgdb/cgdb_0.7.1.bb @@ -0,0 +1,22 @@ +SUMMARY = "curses-based interface to GDB" +DESCRIPTION = "cgdb is a lightweight curses (terminal-based) interface to the GNU Debugger (GDB)." +HOMEPAGE = "http://cgdb.github.io/" +SECTION = "devel" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" + +DEPENDS = "flex-native readline ncurses" + +inherit autotools + +SRC_URI = "http://cgdb.me/files/${BP}.tar.gz \ + file://0001-Avoid-use-of-mips-which-is-reserved-on-mips.patch \ +" +SRC_URI[md5sum] = "a104862ffd3145b076303992e9a3af26" +SRC_URI[sha256sum] = "bb723be58ec68cb59a598b8e24a31d10ef31e0e9c277a4de07b2f457fe7de198" + +CACHED_CONFIGUREVARS = "ac_cv_file__dev_ptmx=yes ac_cv_rl_version=6.2 ac_cv_file__proc_self_status=yes" +EXTRA_OECONF = "--with-readline=${STAGING_LIBDIR} \ + --with-ncurses=${STAGING_LIBDIR}" + +RDEPENDS_${PN} = "gdb" diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-Fix-6906.patch b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-Fix-6906.patch deleted file mode 100644 index bbebc4dc7..000000000 --- a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen/0001-Fix-6906.patch +++ /dev/null @@ -1,94 +0,0 @@ -From 81b213b98f51ec3eed5774f6f797c074ac35db3e Mon Sep 17 00:00:00 2001 -From: Ton van den Heuvel -Date: Mon, 6 May 2019 15:17:28 +0200 -Subject: [PATCH] Fix #6906 - -Generate configvalues.h only as a dependency for the VHDL parser. Fixes -a problem in combination with Ninja v1.9.0 because of duplicate rules -for generating configvalues.h. - -Upstream-Status: Backport -Signed-off-by: Oleksandr Kravchuk ---- - addon/doxyapp/CMakeLists.txt | 8 -------- - addon/doxyparse/CMakeLists.txt | 8 -------- - src/CMakeLists.txt | 4 ++++ - vhdlparser/CMakeLists.txt | 12 +++--------- - 4 files changed, 7 insertions(+), 25 deletions(-) - -diff --git a/addon/doxyapp/CMakeLists.txt b/addon/doxyapp/CMakeLists.txt -index a7377112..0aaf4655 100644 ---- a/addon/doxyapp/CMakeLists.txt -+++ b/addon/doxyapp/CMakeLists.txt -@@ -1,11 +1,3 @@ --# configvalues.h --add_custom_command( -- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -maph ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC}/configvalues.h -- DEPENDS ${CMAKE_SOURCE_DIR}/src/config.xml ${CMAKE_SOURCE_DIR}/src/configgen.py -- OUTPUT ${GENERATED_SRC}/configvalues.h --) --set_source_files_properties(${GENERATED_SRC}/configvalues.h PROPERTIES GENERATED 1) -- - find_package(Iconv) - - include_directories( -diff --git a/addon/doxyparse/CMakeLists.txt b/addon/doxyparse/CMakeLists.txt -index ff198fb4..1620c72e 100644 ---- a/addon/doxyparse/CMakeLists.txt -+++ b/addon/doxyparse/CMakeLists.txt -@@ -1,11 +1,3 @@ --# configvalues.h --add_custom_command( -- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -maph ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC}/configvalues.h -- DEPENDS ${CMAKE_SOURCE_DIR}/src/config.xml ${CMAKE_SOURCE_DIR}/src/configgen.py -- OUTPUT ${GENERATED_SRC}/configvalues.h --) --set_source_files_properties(${GENERATED_SRC}/configvalues.h PROPERTIES GENERATED 1) -- - find_package(Iconv) - - include_directories( -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 92a302ab..37a21ff6 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -43,6 +43,10 @@ add_custom_command( - OUTPUT ${GENERATED_SRC}/configvalues.h - ) - set_source_files_properties(${GENERATED_SRC}/configvalues.h PROPERTIES GENERATED 1) -+add_custom_target( -+ generate_configvalues_header -+ DEPENDS ${GENERATED_SRC}/configvalues.h -+) - - # configvalues.cpp - add_custom_command( -diff --git a/vhdlparser/CMakeLists.txt b/vhdlparser/CMakeLists.txt -index 71e97df5..f89008c5 100644 ---- a/vhdlparser/CMakeLists.txt -+++ b/vhdlparser/CMakeLists.txt -@@ -1,14 +1,5 @@ --# configvalues.h --add_custom_command( -- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_SOURCE_DIR}/src/configgen.py -maph ${CMAKE_SOURCE_DIR}/src/config.xml > ${GENERATED_SRC}/configvalues.h -- DEPENDS ${CMAKE_SOURCE_DIR}/src/config.xml ${CMAKE_SOURCE_DIR}/src/configgen.py -- OUTPUT ${GENERATED_SRC}/configvalues.h --) --set_source_files_properties(${GENERATED_SRC}/configvalues.h PROPERTIES GENERATED 1) -- - include_directories(${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/qtools ${GENERATED_SRC}) - add_library(vhdlparser STATIC --${GENERATED_SRC}/configvalues.h - CharStream.cc - ParseException.cc - Token.cc -@@ -17,3 +8,6 @@ VhdlParser.cc - VhdlParserTokenManager.cc - VhdlParserIF.cpp - ) -+add_dependencies(vhdlparser -+ generate_configvalues_header -+) --- -2.17.1 - diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.15.bb b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.15.bb deleted file mode 100644 index b49fbd4d0..000000000 --- a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.15.bb +++ /dev/null @@ -1,17 +0,0 @@ -DESCRIPTION = "Doxygen is the de facto standard tool for generating documentation from annotated C++ sources." -HOMEPAGE = "http://www.doxygen.org/" - -LICENSE = "GPL-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263" - -DEPENDS = "flex-native bison-native" - -SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.src.tar.gz \ - file://0001-build-don-t-look-for-Iconv.patch \ - file://0001-Fix-6906.patch" -SRC_URI[md5sum] = "2c98c73eba392d334f5bbaf15e09bae3" -SRC_URI[sha256sum] = "bd9c0ec462b6a9b5b41ede97bede5458e0d7bb40d4cfa27f6f622eb33c59245d" - -inherit cmake python3native - -BBCLASSEXTEND = "native" diff --git a/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.16.bb b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.16.bb new file mode 100644 index 000000000..4df994c75 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/doxygen/doxygen_1.8.16.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "Doxygen is the de facto standard tool for generating documentation from annotated C++ sources." +HOMEPAGE = "http://www.doxygen.org/" + +LICENSE = "GPL-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263" + +DEPENDS = "flex-native bison-native" + +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.src.tar.gz \ + file://0001-build-don-t-look-for-Iconv.patch \ +" +SRC_URI[md5sum] = "3ec5f8bfda38a05845161fbbd5d8b439" +SRC_URI[sha256sum] = "ff981fb6f5db4af9deb1dd0c0d9325e0f9ba807d17bd5750636595cf16da3c82" + +inherit cmake python3native + +BBCLASSEXTEND = "native" diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Crypto-reduce-memory-usage-of-SignFinal.patch b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Crypto-reduce-memory-usage-of-SignFinal.patch deleted file mode 100644 index ed3bac39b..000000000 --- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs/0003-Crypto-reduce-memory-usage-of-SignFinal.patch +++ /dev/null @@ -1,122 +0,0 @@ -From 20282b1cb0389553421c4c5b14de198c5dfff50b Mon Sep 17 00:00:00 2001 -From: Anna Henningsen -Date: Sat, 20 Oct 2018 05:24:54 +0200 -Subject: [PATCH] src: use more explicit return type in Sign::SignFinal() -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Using the non-indexed variant of `std::get<>` broke Travis CI. -Also, this allows us to be a bit more concise when returning -from `SignFinal()` due to some error condition. - -Refs: https://github.com/nodejs/node/pull/23427 - -PR-URL: https://github.com/nodejs/node/pull/23779 -Reviewed-By: Joyee Cheung -Reviewed-By: Tobias Nießen -Reviewed-By: Refael Ackermann -Reviewed-By: Colin Ihrig ---- - src/node_crypto.cc | 23 +++++++++++------------ - src/node_crypto.h | 12 +++++++++++- - 2 files changed, 22 insertions(+), 13 deletions(-) - -diff --git a/src/node_crypto.cc b/src/node_crypto.cc -index bd8d9e032554..ec7d4f2bb5be 100644 ---- a/src/node_crypto.cc -+++ b/src/node_crypto.cc -@@ -3562,22 +3562,20 @@ static MallocedBuffer Node_SignFinal(EVPMDPointer&& mdctx, - return MallocedBuffer(); - } - --std::pair> Sign::SignFinal( -+Sign::SignResult Sign::SignFinal( - const char* key_pem, - int key_pem_len, - const char* passphrase, - int padding, - int salt_len) { -- MallocedBuffer buffer; -- - if (!mdctx_) -- return std::make_pair(kSignNotInitialised, std::move(buffer)); -+ return SignResult(kSignNotInitialised); - - EVPMDPointer mdctx = std::move(mdctx_); - - BIOPointer bp(BIO_new_mem_buf(const_cast(key_pem), key_pem_len)); - if (!bp) -- return std::make_pair(kSignPrivateKey, std::move(buffer)); -+ return SignResult(kSignPrivateKey); - - EVPKeyPointer pkey(PEM_read_bio_PrivateKey(bp.get(), - nullptr, -@@ -3588,7 +3586,7 @@ std::pair> Sign::SignFinal( - // without `pkey` being set to nullptr; - // cf. the test of `test_bad_rsa_privkey.pem` for an example. - if (!pkey || 0 != ERR_peek_error()) -- return std::make_pair(kSignPrivateKey, std::move(buffer)); -+ return SignResult(kSignPrivateKey); - - #ifdef NODE_FIPS_MODE - /* Validate DSA2 parameters from FIPS 186-4 */ -@@ -3612,9 +3610,10 @@ std::pair> Sign::SignFinal( - } - #endif // NODE_FIPS_MODE - -- buffer = Node_SignFinal(std::move(mdctx), pkey, padding, salt_len); -+ MallocedBuffer buffer = -+ Node_SignFinal(std::move(mdctx), pkey, padding, salt_len); - Error error = buffer.is_empty() ? kSignPrivateKey : kSignOk; -- return std::make_pair(error, std::move(buffer)); -+ return SignResult(error, std::move(buffer)); - } - - -@@ -3639,18 +3638,18 @@ void Sign::SignFinal(const FunctionCallbackInfo& args) { - - ClearErrorOnReturn clear_error_on_return; - -- std::pair> ret = sign->SignFinal( -+ SignResult ret = sign->SignFinal( - buf, - buf_len, - len >= 2 && !args[1]->IsNull() ? *passphrase : nullptr, - padding, - salt_len); - -- if (std::get(ret) != kSignOk) -- return sign->CheckThrow(std::get(ret)); -+ if (ret.error != kSignOk) -+ return sign->CheckThrow(ret.error); - - MallocedBuffer sig = -- std::move(std::get>(ret)); -+ std::move(ret.signature); - - Local rc = - Buffer::New(env, reinterpret_cast(sig.release()), sig.size) -diff --git a/src/node_crypto.h b/src/node_crypto.h -index 6fcf737f6c43..0c26c1f6ff1d 100644 ---- a/src/node_crypto.h -+++ b/src/node_crypto.h -@@ -518,7 +518,17 @@ class Sign : public SignBase { - public: - static void Initialize(Environment* env, v8::Local target); - -- std::pair> SignFinal( -+ struct SignResult { -+ Error error; -+ MallocedBuffer signature; -+ -+ explicit SignResult( -+ Error err, -+ MallocedBuffer&& sig = MallocedBuffer()) -+ : error(err), signature(std::move(sig)) {} -+ }; -+ -+ SignResult SignFinal( - const char* key_pem, - int key_pem_len, - const char* passphrase, diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.3.bb b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.3.bb deleted file mode 100644 index a978eebe4..000000000 --- a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.16.3.bb +++ /dev/null @@ -1,113 +0,0 @@ -DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript" -HOMEPAGE = "http://nodejs.org" -LICENSE = "MIT & BSD & Artistic-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=be980eb7ccafe287cb438076a65e888c" - -DEPENDS = "openssl" -DEPENDS_append_class-target = " nodejs-native" - -inherit pkgconfig - -COMPATIBLE_MACHINE_armv4 = "(!.*armv4).*" -COMPATIBLE_MACHINE_armv5 = "(!.*armv5).*" -COMPATIBLE_MACHINE_mips64 = "(!.*mips64).*" - -COMPATIBLE_HOST_riscv64 = "null" -COMPATIBLE_HOST_riscv32 = "null" - -SRC_URI = "http://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \ - file://0001-Disable-running-gyp-files-for-bundled-deps.patch \ - file://0003-Crypto-reduce-memory-usage-of-SignFinal.patch \ - file://0004-Make-compatibility-with-gcc-4.8.patch \ - file://0005-Link-atomic-library.patch \ - file://0006-Use-target-ldflags.patch \ - " -SRC_URI_append_class-target = " \ - file://0002-Using-native-torque.patch \ - " - -SRC_URI[md5sum] = "b41275a018e670947c1950b12f050a2f" -SRC_URI[sha256sum] = "7bf1123d7415964775b8f81fe6ec6dd5c3c08abb42bb71dfe4409dbeeba26bbd" - -S = "${WORKDIR}/node-v${PV}" - -# v8 errors out if you have set CCACHE -CCACHE = "" - -def map_nodejs_arch(a, d): - import re - - if re.match('i.86$', a): return 'ia32' - elif re.match('x86_64$', a): return 'x64' - elif re.match('aarch64$', a): return 'arm64' - elif re.match('(powerpc64|ppc64le)$', a): return 'ppc64' - elif re.match('powerpc$', a): return 'ppc' - return a - -ARCHFLAGS_arm = "${@bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', '--with-arm-float-abi=hard', '--with-arm-float-abi=softfp', d)} \ - ${@bb.utils.contains('TUNE_FEATURES', 'neon', '--with-arm-fpu=neon', \ - bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', '--with-arm-fpu=vfpv3-d16', \ - bb.utils.contains('TUNE_FEATURES', 'vfpv3', '--with-arm-fpu=vfpv3', \ - '--with-arm-fpu=vfp', d), d), d)}" -GYP_DEFINES_append_mipsel = " mips_arch_variant='r1' " -ARCHFLAGS ?= "" - -PACKAGECONFIG ??= "zlib icu" -PACKAGECONFIG[zlib] = "--shared-zlib,,zlib" -PACKAGECONFIG[icu] = "--with-intl=system-icu,--without-intl,icu" - -# Node is way too cool to use proper autotools, so we install two wrappers to forcefully inject proper arch cflags to workaround gypi -do_configure () { - rm -rf ${S}/deps/openssl - export LD="${CXX}" - GYP_DEFINES="${GYP_DEFINES}" export GYP_DEFINES - # $TARGET_ARCH settings don't match --dest-cpu settings - ./configure --prefix=${prefix} --without-snapshot --shared-openssl \ - --dest-cpu="${@map_nodejs_arch(d.getVar('TARGET_ARCH'), d)}" \ - --dest-os=linux \ - ${ARCHFLAGS} \ - ${PACKAGECONFIG_CONFARGS} -} - -do_compile () { - export LD="${CXX}" - oe_runmake BUILDTYPE=Release -} - -do_install () { - oe_runmake install DESTDIR=${D} -} - -do_install_append_class-native() { - # use node from PATH instead of absolute path to sysroot - # node-v0.10.25/tools/install.py is using: - # shebang = os.path.join(node_prefix, 'bin/node') - # update_shebang(link_path, shebang) - # and node_prefix can be very long path to bindir in native sysroot and - # when it exceeds 128 character shebang limit it's stripped to incorrect path - # and npm fails to execute like in this case with 133 characters show in log.do_install: - # updating shebang of /home/jenkins/workspace/build-webos-nightly/device/qemux86/label/open-webos-builder/BUILD-qemux86/work/x86_64-linux/nodejs-native/0.10.15-r0/image/home/jenkins/workspace/build-webos-nightly/device/qemux86/label/open-webos-builder/BUILD-qemux86/sysroots/x86_64-linux/usr/bin/npm to /home/jenkins/workspace/build-webos-nightly/device/qemux86/label/open-webos-builder/BUILD-qemux86/sysroots/x86_64-linux/usr/bin/node - # /usr/bin/npm is symlink to /usr/lib/node_modules/npm/bin/npm-cli.js - # use sed on npm-cli.js because otherwise symlink is replaced with normal file and - # npm-cli.js continues to use old shebang - sed "1s^.*^#\!/usr/bin/env node^g" -i ${D}${exec_prefix}/lib/node_modules/npm/bin/npm-cli.js - - # Install the native torque to provide it within sysroot for the target compilation - install -d ${D}${bindir} - install -m 0755 ${S}/out/Release/torque ${D}${bindir}/torque -} - -do_install_append_class-target() { - sed "1s^.*^#\!${bindir}/env node^g" -i ${D}${exec_prefix}/lib/node_modules/npm/bin/npm-cli.js -} - -PACKAGES =+ "${PN}-npm" -FILES_${PN}-npm = "${exec_prefix}/lib/node_modules ${bindir}/npm ${bindir}/npx" -RDEPENDS_${PN}-npm = "bash python-core python-shell python-datetime python-subprocess python-textutils \ - python-compiler python-misc python-multiprocessing" - -PACKAGES =+ "${PN}-systemtap" -FILES_${PN}-systemtap = "${datadir}/systemtap" - - -BBCLASSEXTEND = "native" diff --git a/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.17.0.bb b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.17.0.bb new file mode 100644 index 000000000..4afe341f9 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/nodejs/nodejs_10.17.0.bb @@ -0,0 +1,114 @@ +DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript" +HOMEPAGE = "http://nodejs.org" +LICENSE = "MIT & BSD & Artistic-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=be980eb7ccafe287cb438076a65e888c" + +DEPENDS = "openssl" +DEPENDS_append_class-target = " nodejs-native" + +inherit pkgconfig + +COMPATIBLE_MACHINE_armv4 = "(!.*armv4).*" +COMPATIBLE_MACHINE_armv5 = "(!.*armv5).*" +COMPATIBLE_MACHINE_mips64 = "(!.*mips64).*" + +COMPATIBLE_HOST_riscv64 = "null" +COMPATIBLE_HOST_riscv32 = "null" + +SRC_URI = "http://nodejs.org/dist/v${PV}/node-v${PV}.tar.xz \ + file://0001-Disable-running-gyp-files-for-bundled-deps.patch \ + file://0004-Make-compatibility-with-gcc-4.8.patch \ + file://0005-Link-atomic-library.patch \ + file://0006-Use-target-ldflags.patch \ + " +SRC_URI_append_class-target = " \ + file://0002-Using-native-torque.patch \ + " + +SRC_URI[md5sum] = "d5a56d0abf764a91f627f0690cd4b9f3" +SRC_URI[sha256sum] = "412667d76bd5273c07cb69c215998109fd5bb35c874654f93e6a0132d666c58e" + +S = "${WORKDIR}/node-v${PV}" + +# v8 errors out if you have set CCACHE +CCACHE = "" + +def map_nodejs_arch(a, d): + import re + + if re.match('i.86$', a): return 'ia32' + elif re.match('x86_64$', a): return 'x64' + elif re.match('aarch64$', a): return 'arm64' + elif re.match('(powerpc64|ppc64le)$', a): return 'ppc64' + elif re.match('powerpc$', a): return 'ppc' + return a + +ARCHFLAGS_arm = "${@bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', '--with-arm-float-abi=hard', '--with-arm-float-abi=softfp', d)} \ + ${@bb.utils.contains('TUNE_FEATURES', 'neon', '--with-arm-fpu=neon', \ + bb.utils.contains('TUNE_FEATURES', 'vfpv3d16', '--with-arm-fpu=vfpv3-d16', \ + bb.utils.contains('TUNE_FEATURES', 'vfpv3', '--with-arm-fpu=vfpv3', \ + '--with-arm-fpu=vfp', d), d), d)}" +GYP_DEFINES_append_mipsel = " mips_arch_variant='r1' " +ARCHFLAGS ?= "" + +PACKAGECONFIG ??= "ares icu libuv zlib" +PACKAGECONFIG[ares] = "--shared-cares,,c-ares" +PACKAGECONFIG[icu] = "--with-intl=system-icu,--without-intl,icu" +PACKAGECONFIG[libuv] = "--shared-libuv,,libuv" +PACKAGECONFIG[zlib] = "--shared-zlib,,zlib" + +# Node is way too cool to use proper autotools, so we install two wrappers to forcefully inject proper arch cflags to workaround gypi +do_configure () { + rm -rf ${S}/deps/openssl + export LD="${CXX}" + GYP_DEFINES="${GYP_DEFINES}" export GYP_DEFINES + # $TARGET_ARCH settings don't match --dest-cpu settings + ./configure --prefix=${prefix} --without-snapshot --shared-openssl \ + --dest-cpu="${@map_nodejs_arch(d.getVar('TARGET_ARCH'), d)}" \ + --dest-os=linux \ + ${ARCHFLAGS} \ + ${PACKAGECONFIG_CONFARGS} +} + +do_compile () { + export LD="${CXX}" + oe_runmake BUILDTYPE=Release +} + +do_install () { + oe_runmake install DESTDIR=${D} +} + +do_install_append_class-native() { + # use node from PATH instead of absolute path to sysroot + # node-v0.10.25/tools/install.py is using: + # shebang = os.path.join(node_prefix, 'bin/node') + # update_shebang(link_path, shebang) + # and node_prefix can be very long path to bindir in native sysroot and + # when it exceeds 128 character shebang limit it's stripped to incorrect path + # and npm fails to execute like in this case with 133 characters show in log.do_install: + # updating shebang of /home/jenkins/workspace/build-webos-nightly/device/qemux86/label/open-webos-builder/BUILD-qemux86/work/x86_64-linux/nodejs-native/0.10.15-r0/image/home/jenkins/workspace/build-webos-nightly/device/qemux86/label/open-webos-builder/BUILD-qemux86/sysroots/x86_64-linux/usr/bin/npm to /home/jenkins/workspace/build-webos-nightly/device/qemux86/label/open-webos-builder/BUILD-qemux86/sysroots/x86_64-linux/usr/bin/node + # /usr/bin/npm is symlink to /usr/lib/node_modules/npm/bin/npm-cli.js + # use sed on npm-cli.js because otherwise symlink is replaced with normal file and + # npm-cli.js continues to use old shebang + sed "1s^.*^#\!/usr/bin/env node^g" -i ${D}${exec_prefix}/lib/node_modules/npm/bin/npm-cli.js + + # Install the native torque to provide it within sysroot for the target compilation + install -d ${D}${bindir} + install -m 0755 ${S}/out/Release/torque ${D}${bindir}/torque +} + +do_install_append_class-target() { + sed "1s^.*^#\!${bindir}/env node^g" -i ${D}${exec_prefix}/lib/node_modules/npm/bin/npm-cli.js +} + +PACKAGES =+ "${PN}-npm" +FILES_${PN}-npm = "${exec_prefix}/lib/node_modules ${bindir}/npm ${bindir}/npx" +RDEPENDS_${PN}-npm = "bash python-core python-shell python-datetime python-subprocess python-textutils \ + python-compiler python-misc python-multiprocessing" + +PACKAGES =+ "${PN}-systemtap" +FILES_${PN}-systemtap = "${datadir}/systemtap" + + +BBCLASSEXTEND = "native" diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php.inc b/meta-openembedded/meta-oe/recipes-devtools/php/php.inc deleted file mode 100644 index 3d537e5b6..000000000 --- a/meta-openembedded/meta-oe/recipes-devtools/php/php.inc +++ /dev/null @@ -1,263 +0,0 @@ -SUMMARY = "A server-side, HTML-embedded scripting language" -HOMEPAGE = "http://www.php.net" -SECTION = "console/network" - -LICENSE = "PHP-3.0" - -BBCLASSEXTEND = "native" -DEPENDS = "zlib bzip2 libxml2 virtual/libiconv php-native lemon-native" -DEPENDS_class-native = "zlib-native libxml2-native" - -PHP_MAJOR_VERSION = "${@d.getVar('PV').split('.')[0]}" - -SRC_URI = "http://php.net/distributions/php-${PV}.tar.bz2 \ - file://0001-php-don-t-use-broken-wrapper-for-mkdir.patch \ - " - -SRC_URI_append_class-target = " \ - file://iconv.patch \ - file://imap-fix-autofoo.patch \ - file://php_exec_native.patch \ - file://php-fpm.conf \ - file://php-fpm-apache.conf \ - file://70_mod_php${PHP_MAJOR_VERSION}.conf \ - file://php-fpm.service \ - " -S = "${WORKDIR}/php-${PV}" - -inherit autotools pkgconfig pythonnative gettext - -# phpize is not scanned for absolute paths by default (but php-config is). -# -SSTATE_SCAN_FILES += "phpize" -SSTATE_SCAN_FILES += "build-defs.h" - -PHP_LIBDIR = "${libdir}/php${PHP_MAJOR_VERSION}" - -# Common EXTRA_OECONF -COMMON_EXTRA_OECONF = "--enable-sockets \ - --enable-pcntl \ - --enable-shared \ - --disable-rpath \ - --with-pic \ - --libdir=${PHP_LIBDIR} \ -" -EXTRA_OECONF = "--enable-mbstring \ - --enable-wddx \ - --enable-fpm \ - --with-libdir=${baselib} \ - --with-gettext=${STAGING_LIBDIR}/.. \ - --with-zlib=${STAGING_LIBDIR}/.. \ - --with-iconv=${STAGING_LIBDIR}/.. \ - --with-bz2=${STAGING_DIR_TARGET}${exec_prefix} \ - --with-config-file-path=${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION} \ - ${@oe.utils.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} \ -" - -EXTRA_OECONF_append_riscv64 = " --with-pcre-jit=no" -EXTRA_OECONF_append_riscv32 = " --with-pcre-jit=no" - -CACHED_CONFIGUREVARS += "ac_cv_func_dlopen=no ac_cv_lib_dl_dlopen=yes" - -EXTRA_OECONF_class-native = " \ - --with-zlib=${STAGING_LIBDIR_NATIVE}/.. \ - --without-iconv \ - ${COMMON_EXTRA_OECONF} \ -" - -PACKAGECONFIG ??= "mysql sqlite3 imap opcache openssl \ - ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6 pam', d)} \ -" -PACKAGECONFIG_class-native = "" - -PACKAGECONFIG[zip] = "--enable-zip --with-libzip=${STAGING_EXECPREFIXDIR},,libzip" - -PACKAGECONFIG[mysql] = "--with-mysqli=mysqlnd \ - --with-pdo-mysql=mysqlnd \ - ,--without-mysqli --without-pdo-mysql \ - ,mysql5" - -PACKAGECONFIG[sqlite3] = "--with-sqlite3=${STAGING_LIBDIR}/.. \ - --with-pdo-sqlite=${STAGING_LIBDIR}/.. \ - ,--without-sqlite3 --without-pdo-sqlite \ - ,sqlite3" -PACKAGECONFIG[pgsql] = "--with-pgsql=${STAGING_DIR_TARGET}${exec_prefix},--without-pgsql,postgresql" -PACKAGECONFIG[soap] = "--enable-libxml --enable-soap, --disable-soap, libxml2" -PACKAGECONFIG[apache2] = "--with-apxs2=${STAGING_BINDIR_CROSS}/apxs,,apache2-native apache2" -PACKAGECONFIG[pam] = ",,libpam" -PACKAGECONFIG[imap] = "--with-imap=${STAGING_DIR_HOST} \ - --with-imap-ssl=${STAGING_DIR_HOST} \ - ,--without-imap --without-imap-ssl \ - ,uw-imap" -PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," -PACKAGECONFIG[opcache] = "--enable-opcache,--disable-opcache" -PACKAGECONFIG[openssl] = "--with-openssl,--without-openssl,openssl" -PACKAGECONFIG[valgrind] = "--with-valgrind=${STAGING_DIR_TARGET}/usr,--with-valgrind=no,valgrind" - -export PHP_NATIVE_DIR = "${STAGING_BINDIR_NATIVE}" -export PHP_PEAR_PHP_BIN = "${STAGING_BINDIR_NATIVE}/php" -CFLAGS += " -D_GNU_SOURCE -g -DPTYS_ARE_GETPT -DPTYS_ARE_SEARCHED -I${STAGING_INCDIR}/apache2" - -EXTRA_OEMAKE = "INSTALL_ROOT=${D}" - -acpaths = "" - -do_configure_prepend () { - rm -f ${S}/build/libtool.m4 ${S}/ltmain.sh ${S}/aclocal.m4 - find ${S} -name config.m4 | xargs -n1 sed -i 's!APXS_HTTPD=.*!APXS_HTTPD=${STAGING_SBINDIR_NATIVE}/httpd!' -} - -do_configure_append() { - # No, libtool, we really don't want rpath set... - sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' ${HOST_SYS}-libtool - sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' ${HOST_SYS}-libtool -} - -do_install_append_class-native() { - rm -rf ${D}/${PHP_LIBDIR}/php/.registry - rm -rf ${D}/${PHP_LIBDIR}/php/.channels - rm -rf ${D}/${PHP_LIBDIR}/php/.[a-z]* -} - -do_install_prepend() { - cat ${ACLOCALDIR}/libtool.m4 ${ACLOCALDIR}/lt~obsolete.m4 ${ACLOCALDIR}/ltoptions.m4 \ - ${ACLOCALDIR}/ltsugar.m4 ${ACLOCALDIR}/ltversion.m4 > ${S}/build/libtool.m4 -} - -do_install_prepend_class-target() { - if ${@bb.utils.contains('PACKAGECONFIG', 'apache2', 'true', 'false', d)}; then - # Install dummy config file so apxs doesn't fail - install -d ${D}${sysconfdir}/apache2 - printf "\nLoadModule dummy_module modules/mod_dummy.so\n" > ${D}${sysconfdir}/apache2/httpd.conf - fi -} - -# fixme -do_install_append_class-target() { - install -d ${D}${sysconfdir}/ - if [ -d ${RECIPE_SYSROOT_NATIVE}${sysconfdir} ];then - install -m 0644 ${RECIPE_SYSROOT_NATIVE}${sysconfdir}/pear.conf ${D}${sysconfdir}/ - fi - rm -rf ${D}/${TMPDIR} - rm -rf ${D}/.registry - rm -rf ${D}/.channels - rm -rf ${D}/.[a-z]* - rm -rf ${D}/var - rm -f ${D}/${sysconfdir}/php-fpm.conf.default - sed -i 's:${STAGING_DIR_NATIVE}::g' ${D}${sysconfdir}/pear.conf - install -m 0644 ${WORKDIR}/php-fpm.conf ${D}/${sysconfdir}/php-fpm.conf - install -d ${D}/${sysconfdir}/apache2/conf.d - install -m 0644 ${WORKDIR}/php-fpm-apache.conf ${D}/${sysconfdir}/apache2/conf.d/php-fpm.conf - install -d ${D}${sysconfdir}/init.d - sed -i 's:=/usr/sbin:=${sbindir}:g' ${B}/sapi/fpm/init.d.php-fpm - sed -i 's:=/etc:=${sysconfdir}:g' ${B}/sapi/fpm/init.d.php-fpm - sed -i 's:=/var:=${localstatedir}:g' ${B}/sapi/fpm/init.d.php-fpm - install -m 0755 ${B}/sapi/fpm/init.d.php-fpm ${D}${sysconfdir}/init.d/php-fpm - install -m 0644 ${WORKDIR}/php-fpm-apache.conf ${D}/${sysconfdir}/apache2/conf.d/php-fpm.conf - - if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)};then - install -d ${D}${systemd_unitdir}/system - install -m 0644 ${WORKDIR}/php-fpm.service ${D}${systemd_unitdir}/system/ - sed -i -e 's,@SYSCONFDIR@,${sysconfdir},g' \ - -e 's,@LOCALSTATEDIR@,${localstatedir},g' \ - ${D}${systemd_unitdir}/system/php-fpm.service - fi - - TMP=`dirname ${D}/${TMPDIR}` - while test ${TMP} != ${D}; do - if [ -d ${TMP} ]; then - rmdir ${TMP} - fi - TMP=`dirname ${TMP}`; - done - - if ${@bb.utils.contains('PACKAGECONFIG', 'apache2', 'true', 'false', d)}; then - install -d ${D}${sysconfdir}/apache2/modules.d - install -d ${D}${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION} - install -m 644 ${WORKDIR}/70_mod_php${PHP_MAJOR_VERSION}.conf ${D}${sysconfdir}/apache2/modules.d - sed -i s,lib/,${libexecdir}/, ${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-php${PHP_MAJOR_VERSION}/php.ini - rm -f ${D}${sysconfdir}/apache2/httpd.conf* - fi -} - -SYSROOT_PREPROCESS_FUNCS += "php_sysroot_preprocess" - -php_sysroot_preprocess () { - install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/ - install -m 755 ${D}${bindir}/phpize ${SYSROOT_DESTDIR}${bindir_crossscripts}/ - install -m 755 ${D}${bindir}/php-config ${SYSROOT_DESTDIR}${bindir_crossscripts}/ - - sed -i 's!eval echo /!eval echo ${STAGING_DIR_HOST}/!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/phpize - sed -i 's!^include_dir=.*!include_dir=${STAGING_INCDIR}/php!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/php-config -} - -MODPHP_PACKAGE = "${@bb.utils.contains('PACKAGECONFIG', 'apache2', '${PN}-modphp', '', d)}" - -PACKAGES = "${PN}-dbg ${PN}-cli ${PN}-cgi ${PN}-fpm ${PN}-fpm-apache2 ${PN}-pear ${PN}-phar ${MODPHP_PACKAGE} ${PN}-dev ${PN}-staticdev ${PN}-doc ${PN}-opcache ${PN}" - -RDEPENDS_${PN} += "libgcc" -RDEPENDS_${PN}-pear = "${PN}" -RDEPENDS_${PN}-phar = "${PN}-cli" -RDEPENDS_${PN}-cli = "${PN}" -RDEPENDS_${PN}-modphp = "${PN} apache2" -RDEPENDS_${PN}-opcache = "${PN}" - -INITSCRIPT_PACKAGES = "${PN}-fpm" -inherit update-rc.d - -FILES_${PN}-dbg =+ "${bindir}/.debug \ - ${libexecdir}/apache2/modules/.debug" -FILES_${PN}-doc += "${PHP_LIBDIR}/php/doc" -FILES_${PN}-cli = "${bindir}/php" -FILES_${PN}-phar = "${bindir}/phar*" -FILES_${PN}-cgi = "${bindir}/php-cgi" -FILES_${PN}-fpm = "${sbindir}/php-fpm ${sysconfdir}/php-fpm.conf ${datadir}/fpm ${sysconfdir}/init.d/php-fpm ${systemd_unitdir}/system/php-fpm.service ${sysconfdir}/php-fpm.d/www.conf.default" -FILES_${PN}-fpm-apache2 = "${sysconfdir}/apache2/conf.d/php-fpm.conf" -CONFFILES_${PN}-fpm = "${sysconfdir}/php-fpm.conf" -CONFFILES_${PN}-fpm-apache2 = "${sysconfdir}/apache2/conf.d/php-fpm.conf" -INITSCRIPT_NAME_${PN}-fpm = "php-fpm" -INITSCRIPT_PARAMS_${PN}-fpm = "defaults 60" -FILES_${PN}-pear = "${bindir}/pear* ${bindir}/pecl ${PHP_LIBDIR}/php/PEAR \ - ${PHP_LIBDIR}/php/PEAR*.php ${PHP_LIBDIR}/php/System.php \ - ${PHP_LIBDIR}/php/peclcmd.php ${PHP_LIBDIR}/php/pearcmd.php \ - ${PHP_LIBDIR}/php/.channels ${PHP_LIBDIR}/php/.channels/.alias \ - ${PHP_LIBDIR}/php/.registry ${PHP_LIBDIR}/php/Archive/Tar.php \ - ${PHP_LIBDIR}/php/Console/Getopt.php ${PHP_LIBDIR}/php/OS/Guess.php \ - ${PHP_LIBDIR}/php/data/PEAR \ - ${sysconfdir}/pear.conf" -FILES_${PN}-dev = "${includedir}/php ${PHP_LIBDIR}/build ${bindir}/phpize \ - ${bindir}/php-config ${PHP_LIBDIR}/php/.depdb \ - ${PHP_LIBDIR}/php/.depdblock ${PHP_LIBDIR}/php/.filemap \ - ${PHP_LIBDIR}/php/.lock ${PHP_LIBDIR}/php/test" -FILES_${PN}-staticdev += "${PHP_LIBDIR}/extensions/*/*.a" -FILES_${PN}-opcache = "${PHP_LIBDIR}/extensions/*/opcache${SOLIBSDEV}" -FILES_${PN} = "${PHP_LIBDIR}/php" -FILES_${PN} += "${bindir} ${libexecdir}/apache2" - -SUMMARY_${PN}-modphp = "PHP module for the Apache HTTP server" -FILES_${PN}-modphp = "${libdir}/apache2 ${sysconfdir}" - -MODPHP_OLDPACKAGE = "${@bb.utils.contains('PACKAGECONFIG', 'apache2', 'modphp', '', d)}" -RPROVIDES_${PN}-modphp = "${MODPHP_OLDPACKAGE}" -RREPLACES_${PN}-modphp = "${MODPHP_OLDPACKAGE}" -RCONFLICTS_${PN}-modphp = "${MODPHP_OLDPACKAGE}" - -do_install_append_class-native() { - create_wrapper ${D}${bindir}/php \ - PHP_PEAR_SYSCONF_DIR=${sysconfdir}/ -} - - -# Fails to build with thumb-1 (qemuarm) -# | {standard input}: Assembler messages: -# | {standard input}:3719: Error: selected processor does not support Thumb mode `smull r0,r2,r9,r3' -# | {standard input}:3720: Error: unshifted register required -- `sub r2,r2,r0,asr#31' -# | {standard input}:3796: Error: selected processor does not support Thumb mode `smull r0,r2,r3,r3' -# | {standard input}:3797: Error: unshifted register required -- `sub r2,r2,r0,asr#31' -# | make: *** [ext/standard/math.lo] Error 1 -ARM_INSTRUCTION_SET = "arm" diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch b/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch deleted file mode 100644 index 2258c4c7f..000000000 --- a/meta-openembedded/meta-oe/recipes-devtools/php/php/0049-ext-intl-Use-pkg-config-to-detect-icu.patch +++ /dev/null @@ -1,161 +0,0 @@ -From 03fecab78f9fa747ad8ab3484e7ca00c0148321d Mon Sep 17 00:00:00 2001 -From: Changqing Li -Date: Sun, 28 Apr 2019 16:45:02 +0800 -Subject: [PATCH] From: Hugh McMaster Date: Wed, 5 - Dec 2018 23:27:30 +1100 Subject: ext/intl: Use pkg-config to detect icu - -The developers of icu recommend using pkg-config to detect icu, -because icu-config is deprecated. - -Upstream-Status: Pending - -update to version 7.3.4 -Signed-off-by: Changqing Li ---- - acinclude.m4 | 95 ++++++------------------------------------------------ - ext/intl/config.m4 | 16 ++++----- - 2 files changed, 15 insertions(+), 96 deletions(-) - -diff --git a/acinclude.m4 b/acinclude.m4 -index 7d77c33..86b0ecc 100644 ---- a/acinclude.m4 -+++ b/acinclude.m4 -@@ -2158,92 +2158,15 @@ dnl - dnl Common setup macro for ICU - dnl - AC_DEFUN([PHP_SETUP_ICU],[ -- PHP_ARG_WITH(icu-dir,, -- [ --with-icu-dir=DIR Specify where ICU libraries and headers can be found], DEFAULT, no) -- -- if test "$PHP_ICU_DIR" = "no"; then -- PHP_ICU_DIR=DEFAULT -- fi -- -- AC_MSG_CHECKING([for location of ICU headers and libraries]) -- found_icu=no -- -- dnl First try to find pkg-config -- if test -z "$PKG_CONFIG"; then -- AC_PATH_PROG(PKG_CONFIG, pkg-config, no) -- fi -- -- dnl If pkg-config is found try using it -- if test "$PHP_ICU_DIR" = "DEFAULT" && test -x "$PKG_CONFIG" && $PKG_CONFIG --exists icu-uc icu-io icu-i18n; then -- if $PKG_CONFIG --atleast-version=40 icu-uc; then -- found_icu=yes -- icu_version_full=`$PKG_CONFIG --modversion icu-uc` -- ac_IFS=$IFS -- IFS="." -- set $icu_version_full -- IFS=$ac_IFS -- icu_version=`expr [$]1 \* 1000 + [$]2` -- AC_MSG_RESULT([found $icu_version_full]) -- -- ICU_LIBS=`$PKG_CONFIG --libs icu-uc icu-io icu-i18n` -- ICU_INCS=`$PKG_CONFIG --cflags-only-I icu-uc icu-io icu-i18n` -- ICU_CXXFLAGS="-DU_USING_ICU_NAMESPACE=1" -- -- AC_MSG_RESULT([found $ICU_VERSION]) -- -- PHP_EVAL_LIBLINE($ICU_LIBS, $1) -- PHP_EVAL_INCLINE($ICU_INCS) -- else -- AC_MSG_ERROR([ICU version 4.0 or later required.]) -- fi -- fi -- -- dnl If pkg-config fails for some reason, revert to the old method -- if test "$found_icu" = "no"; then -- if test "$PHP_ICU_DIR" = "DEFAULT"; then -- dnl Try to find icu-config -- AC_PATH_PROG(ICU_CONFIG, icu-config, no, [$PATH:/usr/local/bin]) -- else -- ICU_CONFIG="$PHP_ICU_DIR/bin/icu-config" -- fi -- -- dnl Trust icu-config to know better what the install prefix is.. -- icu_install_prefix=`$ICU_CONFIG --prefix 2> /dev/null` -- if test "$?" != "0" || test -z "$icu_install_prefix"; then -- AC_MSG_RESULT([not found]) -- AC_MSG_ERROR([Unable to detect ICU prefix or $ICU_CONFIG failed. Please verify ICU install prefix and make sure icu-config works.]) -- else -- AC_MSG_RESULT([$icu_install_prefix]) -- -- dnl Check ICU version -- AC_MSG_CHECKING([for ICU 4.0 or greater]) -- icu_version_full=`$ICU_CONFIG --version` -- ac_IFS=$IFS -- IFS="." -- set $icu_version_full -- IFS=$ac_IFS -- icu_version=`expr [$]1 \* 1000 + [$]2` -- AC_MSG_RESULT([found $icu_version_full]) -- -- if test "$icu_version" -lt "4000"; then -- AC_MSG_ERROR([ICU version 4.0 or later is required]) -- fi -- -- ICU_VERSION=$icu_version -- ICU_INCS=`$ICU_CONFIG --cppflags-searchpath` -- ICU_LIBS=`$ICU_CONFIG --ldflags --ldflags-icuio` -- PHP_EVAL_INCLINE($ICU_INCS) -- PHP_EVAL_LIBLINE($ICU_LIBS, $1) -- -- ICU_CXXFLAGS=`$ICU_CONFIG --cxxflags` -- if test "$icu_version" -ge "49000"; then -- ICU_CXXFLAGS="$ICU_CXXFLAGS -DUNISTR_FROM_CHAR_EXPLICIT=explicit -DUNISTR_FROM_STRING_EXPLICIT=explicit" -- ICU_CFLAGS="-DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1" -- fi -- if test "$icu_version" -ge "60000"; then -- ICU_CFLAGS="$ICU_CFLAGS -DU_HIDE_OBSOLETE_UTF_OLD_H=1" -- fi -- fi -+ PKG_CHECK_MODULES([ICU], [icu-io >= 50.1]) -+ PHP_EVAL_INCLINE($ICU_CFLAGS) -+ PHP_EVAL_LIBLINE($ICU_LIBS, $1) -+ -+ ICU_CFLAGS="$ICU_CFLAGS -DU_NO_DEFAULT_INCLUDE_UTF_HEADERS=1" -+ ICU_CXXFLAGS="$ICU_CXXFLAGS -DUNISTR_FROM_CHAR_EXPLICIT=explicit -DUNISTR_FROM_STRING_EXPLICIT=explicit" -+ -+ if $PKG_CONFIG icu-io --atleast-version=60; then -+ ICU_CFLAGS="$ICU_CFLAGS -DU_HIDE_OBSOLETE_UTF_OLD_H=1" - fi - ]) - -diff --git a/ext/intl/config.m4 b/ext/intl/config.m4 -index 4b9f469..fdae88a 100644 ---- a/ext/intl/config.m4 -+++ b/ext/intl/config.m4 -@@ -9,15 +9,7 @@ if test "$PHP_INTL" != "no"; then - PHP_SETUP_ICU(INTL_SHARED_LIBADD) - PHP_SUBST(INTL_SHARED_LIBADD) - PHP_REQUIRE_CXX() -- INTL_COMMON_FLAGS="$ICU_INCS $ICU_CFLAGS -Wno-write-strings -D__STDC_LIMIT_MACROS -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1" -- if test "$icu_version" -ge "4002"; then -- icu_spoof_src=" spoofchecker/spoofchecker_class.c \ -- spoofchecker/spoofchecker.c\ -- spoofchecker/spoofchecker_create.c\ -- spoofchecker/spoofchecker_main.c" -- else -- icu_spoof_src="" -- fi -+ INTL_COMMON_FLAGS="$ICU_CFLAGS -Wno-write-strings -D__STDC_LIMIT_MACROS -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1" - PHP_NEW_EXTENSION(intl, php_intl.c \ - intl_error.c \ - intl_convert.c \ -@@ -68,7 +60,11 @@ if test "$PHP_INTL" != "no"; then - transliterator/transliterator_methods.c \ - uchar/uchar.c \ - idn/idn.c \ -- $icu_spoof_src, $ext_shared,,$INTL_COMMON_FLAGS,cxx) -+ spoofchecker/spoofchecker_class.c \ -+ spoofchecker/spoofchecker.c\ -+ spoofchecker/spoofchecker_create.c\ -+ spoofchecker/spoofchecker_main.c \ -+ , $ext_shared,,$INTL_COMMON_FLAGS,cxx) - - PHP_INTL_CXX_SOURCES="intl_convertcpp.cpp \ - common/common_enum.cpp \ --- -2.7.4 - diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.11.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.11.bb new file mode 100644 index 000000000..e7fb847fa --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.11.bb @@ -0,0 +1,275 @@ +SUMMARY = "A server-side, HTML-embedded scripting language" +HOMEPAGE = "http://www.php.net" +SECTION = "console/network" + +LICENSE = "PHP-3.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=fb07bfc51f6d5e0c30b65d9701233b2e" + +BBCLASSEXTEND = "native" +DEPENDS = "zlib bzip2 libxml2 virtual/libiconv php-native lemon-native" +DEPENDS_class-native = "zlib-native libxml2-native" + +PHP_MAJOR_VERSION = "${@d.getVar('PV').split('.')[0]}" + +SRC_URI = "http://php.net/distributions/php-${PV}.tar.bz2 \ + file://0001-php-don-t-use-broken-wrapper-for-mkdir.patch \ + file://0001-acinclude.m4-don-t-unset-cache-variables.patch \ + file://0048-Use-pkg-config-for-FreeType2-detection.patch \ + file://0001-Use-pkg-config-for-libxml2-detection.patch \ + file://debian-php-fixheader.patch \ + file://CVE-2019-6978.patch \ + " + +SRC_URI_append_class-target = " \ + file://iconv.patch \ + file://imap-fix-autofoo.patch \ + file://php_exec_native.patch \ + file://php-fpm.conf \ + file://php-fpm-apache.conf \ + file://70_mod_php${PHP_MAJOR_VERSION}.conf \ + file://php-fpm.service \ + file://pear-makefile.patch \ + file://phar-makefile.patch \ + file://0001-opcache-config.m4-enable-opcache.patch \ + file://xfail_two_bug_tests.patch \ + " +S = "${WORKDIR}/php-${PV}" +SRC_URI[md5sum] = "21b710b4126d4d54714de9693a6c7b0d" +SRC_URI[sha256sum] = "92d1ff4b13c7093635f1ec338a5e6891ca99b10e65fbcadd527e5bb84d11b5e7" + +inherit autotools pkgconfig pythonnative gettext + +# phpize is not scanned for absolute paths by default (but php-config is). +# +SSTATE_SCAN_FILES += "phpize" +SSTATE_SCAN_FILES += "build-defs.h" + +PHP_LIBDIR = "${libdir}/php${PHP_MAJOR_VERSION}" + +# Common EXTRA_OECONF +COMMON_EXTRA_OECONF = "--enable-sockets \ + --enable-pcntl \ + --enable-shared \ + --disable-rpath \ + --with-pic \ + --libdir=${PHP_LIBDIR} \ +" +EXTRA_OECONF = "--enable-mbstring \ + --enable-wddx \ + --enable-fpm \ + --with-libdir=${baselib} \ + --with-gettext=${STAGING_LIBDIR}/.. \ + --with-zlib=${STAGING_LIBDIR}/.. \ + --with-iconv=${STAGING_LIBDIR}/.. \ + --with-bz2=${STAGING_DIR_TARGET}${exec_prefix} \ + --with-config-file-path=${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION} \ + ${@oe.utils.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} \ +" + +EXTRA_OECONF_append_riscv64 = " --with-pcre-jit=no" +EXTRA_OECONF_append_riscv32 = " --with-pcre-jit=no" + +CACHED_CONFIGUREVARS += "ac_cv_func_dlopen=no ac_cv_lib_dl_dlopen=yes" + +EXTRA_OECONF_class-native = " \ + --with-zlib=${STAGING_LIBDIR_NATIVE}/.. \ + --without-iconv \ + ${COMMON_EXTRA_OECONF} \ +" + +PACKAGECONFIG ??= "mysql sqlite3 imap opcache openssl \ + ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6 pam', d)} \ +" +PACKAGECONFIG_class-native = "" + +PACKAGECONFIG[zip] = "--enable-zip --with-libzip=${STAGING_EXECPREFIXDIR},,libzip" + +PACKAGECONFIG[mysql] = "--with-mysqli=mysqlnd \ + --with-pdo-mysql=mysqlnd \ + ,--without-mysqli --without-pdo-mysql \ + ,mysql5" + +PACKAGECONFIG[sqlite3] = "--with-sqlite3=${STAGING_LIBDIR}/.. \ + --with-pdo-sqlite=${STAGING_LIBDIR}/.. \ + ,--without-sqlite3 --without-pdo-sqlite \ + ,sqlite3" +PACKAGECONFIG[pgsql] = "--with-pgsql=${STAGING_DIR_TARGET}${exec_prefix},--without-pgsql,postgresql" +PACKAGECONFIG[soap] = "--enable-libxml --enable-soap, --disable-soap, libxml2" +PACKAGECONFIG[apache2] = "--with-apxs2=${STAGING_BINDIR_CROSS}/apxs,,apache2-native apache2" +PACKAGECONFIG[pam] = ",,libpam" +PACKAGECONFIG[imap] = "--with-imap=${STAGING_DIR_HOST} \ + --with-imap-ssl=${STAGING_DIR_HOST} \ + ,--without-imap --without-imap-ssl \ + ,uw-imap" +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," +PACKAGECONFIG[opcache] = "--enable-opcache,--disable-opcache" +PACKAGECONFIG[openssl] = "--with-openssl,--without-openssl,openssl" +PACKAGECONFIG[valgrind] = "--with-valgrind=${STAGING_DIR_TARGET}/usr,--with-valgrind=no,valgrind" + +export PHP_NATIVE_DIR = "${STAGING_BINDIR_NATIVE}" +export PHP_PEAR_PHP_BIN = "${STAGING_BINDIR_NATIVE}/php" +CFLAGS += " -D_GNU_SOURCE -g -DPTYS_ARE_GETPT -DPTYS_ARE_SEARCHED -I${STAGING_INCDIR}/apache2" + +EXTRA_OEMAKE = "INSTALL_ROOT=${D}" + +acpaths = "" + +do_configure_prepend () { + rm -f ${S}/build/libtool.m4 ${S}/ltmain.sh ${S}/aclocal.m4 + find ${S} -name config.m4 | xargs -n1 sed -i 's!APXS_HTTPD=.*!APXS_HTTPD=${STAGING_SBINDIR_NATIVE}/httpd!' +} + +do_configure_append() { + # No, libtool, we really don't want rpath set... + sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' ${HOST_SYS}-libtool + sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' ${HOST_SYS}-libtool +} + +do_install_append_class-native() { + rm -rf ${D}/${PHP_LIBDIR}/php/.registry + rm -rf ${D}/${PHP_LIBDIR}/php/.channels + rm -rf ${D}/${PHP_LIBDIR}/php/.[a-z]* +} + +do_install_prepend() { + cat ${ACLOCALDIR}/libtool.m4 ${ACLOCALDIR}/lt~obsolete.m4 ${ACLOCALDIR}/ltoptions.m4 \ + ${ACLOCALDIR}/ltsugar.m4 ${ACLOCALDIR}/ltversion.m4 > ${S}/build/libtool.m4 +} + +do_install_prepend_class-target() { + if ${@bb.utils.contains('PACKAGECONFIG', 'apache2', 'true', 'false', d)}; then + # Install dummy config file so apxs doesn't fail + install -d ${D}${sysconfdir}/apache2 + printf "\nLoadModule dummy_module modules/mod_dummy.so\n" > ${D}${sysconfdir}/apache2/httpd.conf + fi +} + +# fixme +do_install_append_class-target() { + install -d ${D}${sysconfdir}/ + if [ -d ${RECIPE_SYSROOT_NATIVE}${sysconfdir} ];then + install -m 0644 ${RECIPE_SYSROOT_NATIVE}${sysconfdir}/pear.conf ${D}${sysconfdir}/ + fi + rm -rf ${D}/${TMPDIR} + rm -rf ${D}/.registry + rm -rf ${D}/.channels + rm -rf ${D}/.[a-z]* + rm -rf ${D}/var + rm -f ${D}/${sysconfdir}/php-fpm.conf.default + sed -i 's:${STAGING_DIR_NATIVE}::g' ${D}${sysconfdir}/pear.conf + install -m 0644 ${WORKDIR}/php-fpm.conf ${D}/${sysconfdir}/php-fpm.conf + install -d ${D}/${sysconfdir}/apache2/conf.d + install -m 0644 ${WORKDIR}/php-fpm-apache.conf ${D}/${sysconfdir}/apache2/conf.d/php-fpm.conf + install -d ${D}${sysconfdir}/init.d + sed -i 's:=/usr/sbin:=${sbindir}:g' ${B}/sapi/fpm/init.d.php-fpm + sed -i 's:=/etc:=${sysconfdir}:g' ${B}/sapi/fpm/init.d.php-fpm + sed -i 's:=/var:=${localstatedir}:g' ${B}/sapi/fpm/init.d.php-fpm + install -m 0755 ${B}/sapi/fpm/init.d.php-fpm ${D}${sysconfdir}/init.d/php-fpm + install -m 0644 ${WORKDIR}/php-fpm-apache.conf ${D}/${sysconfdir}/apache2/conf.d/php-fpm.conf + + if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)};then + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/php-fpm.service ${D}${systemd_unitdir}/system/ + sed -i -e 's,@SYSCONFDIR@,${sysconfdir},g' \ + -e 's,@LOCALSTATEDIR@,${localstatedir},g' \ + ${D}${systemd_unitdir}/system/php-fpm.service + fi + + TMP=`dirname ${D}/${TMPDIR}` + while test ${TMP} != ${D}; do + if [ -d ${TMP} ]; then + rmdir ${TMP} + fi + TMP=`dirname ${TMP}`; + done + + if ${@bb.utils.contains('PACKAGECONFIG', 'apache2', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/apache2/modules.d + install -d ${D}${sysconfdir}/php/apache2-php${PHP_MAJOR_VERSION} + install -m 644 ${WORKDIR}/70_mod_php${PHP_MAJOR_VERSION}.conf ${D}${sysconfdir}/apache2/modules.d + sed -i s,lib/,${libexecdir}/, ${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-php${PHP_MAJOR_VERSION}/php.ini + rm -f ${D}${sysconfdir}/apache2/httpd.conf* + fi +} + +SYSROOT_PREPROCESS_FUNCS += "php_sysroot_preprocess" + +php_sysroot_preprocess () { + install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/ + install -m 755 ${D}${bindir}/phpize ${SYSROOT_DESTDIR}${bindir_crossscripts}/ + install -m 755 ${D}${bindir}/php-config ${SYSROOT_DESTDIR}${bindir_crossscripts}/ + + sed -i 's!eval echo /!eval echo ${STAGING_DIR_HOST}/!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/phpize + sed -i 's!^include_dir=.*!include_dir=${STAGING_INCDIR}/php!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/php-config +} + +MODPHP_PACKAGE = "${@bb.utils.contains('PACKAGECONFIG', 'apache2', '${PN}-modphp', '', d)}" + +PACKAGES = "${PN}-dbg ${PN}-cli ${PN}-cgi ${PN}-fpm ${PN}-fpm-apache2 ${PN}-pear ${PN}-phar ${MODPHP_PACKAGE} ${PN}-dev ${PN}-staticdev ${PN}-doc ${PN}-opcache ${PN}" + +RDEPENDS_${PN} += "libgcc" +RDEPENDS_${PN}-pear = "${PN}" +RDEPENDS_${PN}-phar = "${PN}-cli" +RDEPENDS_${PN}-cli = "${PN}" +RDEPENDS_${PN}-modphp = "${PN} apache2" +RDEPENDS_${PN}-opcache = "${PN}" + +INITSCRIPT_PACKAGES = "${PN}-fpm" +inherit update-rc.d + +FILES_${PN}-dbg =+ "${bindir}/.debug \ + ${libexecdir}/apache2/modules/.debug" +FILES_${PN}-doc += "${PHP_LIBDIR}/php/doc" +FILES_${PN}-cli = "${bindir}/php" +FILES_${PN}-phar = "${bindir}/phar*" +FILES_${PN}-cgi = "${bindir}/php-cgi" +FILES_${PN}-fpm = "${sbindir}/php-fpm ${sysconfdir}/php-fpm.conf ${datadir}/fpm ${sysconfdir}/init.d/php-fpm ${systemd_unitdir}/system/php-fpm.service ${sysconfdir}/php-fpm.d/www.conf.default" +FILES_${PN}-fpm-apache2 = "${sysconfdir}/apache2/conf.d/php-fpm.conf" +CONFFILES_${PN}-fpm = "${sysconfdir}/php-fpm.conf" +CONFFILES_${PN}-fpm-apache2 = "${sysconfdir}/apache2/conf.d/php-fpm.conf" +INITSCRIPT_NAME_${PN}-fpm = "php-fpm" +INITSCRIPT_PARAMS_${PN}-fpm = "defaults 60" +FILES_${PN}-pear = "${bindir}/pear* ${bindir}/pecl ${PHP_LIBDIR}/php/PEAR \ + ${PHP_LIBDIR}/php/PEAR*.php ${PHP_LIBDIR}/php/System.php \ + ${PHP_LIBDIR}/php/peclcmd.php ${PHP_LIBDIR}/php/pearcmd.php \ + ${PHP_LIBDIR}/php/.channels ${PHP_LIBDIR}/php/.channels/.alias \ + ${PHP_LIBDIR}/php/.registry ${PHP_LIBDIR}/php/Archive/Tar.php \ + ${PHP_LIBDIR}/php/Console/Getopt.php ${PHP_LIBDIR}/php/OS/Guess.php \ + ${PHP_LIBDIR}/php/data/PEAR \ + ${sysconfdir}/pear.conf" +FILES_${PN}-dev = "${includedir}/php ${PHP_LIBDIR}/build ${bindir}/phpize \ + ${bindir}/php-config ${PHP_LIBDIR}/php/.depdb \ + ${PHP_LIBDIR}/php/.depdblock ${PHP_LIBDIR}/php/.filemap \ + ${PHP_LIBDIR}/php/.lock ${PHP_LIBDIR}/php/test" +FILES_${PN}-staticdev += "${PHP_LIBDIR}/extensions/*/*.a" +FILES_${PN}-opcache = "${PHP_LIBDIR}/extensions/*/opcache${SOLIBSDEV}" +FILES_${PN} = "${PHP_LIBDIR}/php" +FILES_${PN} += "${bindir} ${libexecdir}/apache2" + +SUMMARY_${PN}-modphp = "PHP module for the Apache HTTP server" +FILES_${PN}-modphp = "${libdir}/apache2 ${sysconfdir}" + +MODPHP_OLDPACKAGE = "${@bb.utils.contains('PACKAGECONFIG', 'apache2', 'modphp', '', d)}" +RPROVIDES_${PN}-modphp = "${MODPHP_OLDPACKAGE}" +RREPLACES_${PN}-modphp = "${MODPHP_OLDPACKAGE}" +RCONFLICTS_${PN}-modphp = "${MODPHP_OLDPACKAGE}" + +do_install_append_class-native() { + create_wrapper ${D}${bindir}/php \ + PHP_PEAR_SYSCONF_DIR=${sysconfdir}/ +} + + +# Fails to build with thumb-1 (qemuarm) +# | {standard input}: Assembler messages: +# | {standard input}:3719: Error: selected processor does not support Thumb mode `smull r0,r2,r9,r3' +# | {standard input}:3720: Error: unshifted register required -- `sub r2,r2,r0,asr#31' +# | {standard input}:3796: Error: selected processor does not support Thumb mode `smull r0,r2,r3,r3' +# | {standard input}:3797: Error: unshifted register required -- `sub r2,r2,r0,asr#31' +# | make: *** [ext/standard/math.lo] Error 1 +ARM_INSTRUCTION_SET = "arm" diff --git a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.9.bb b/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.9.bb deleted file mode 100644 index a5c7b9b6b..000000000 --- a/meta-openembedded/meta-oe/recipes-devtools/php/php_7.3.9.bb +++ /dev/null @@ -1,20 +0,0 @@ -require php.inc - -LIC_FILES_CHKSUM = "file://LICENSE;md5=fb07bfc51f6d5e0c30b65d9701233b2e" - -SRC_URI += "file://0001-acinclude.m4-don-t-unset-cache-variables.patch \ - file://0048-Use-pkg-config-for-FreeType2-detection.patch \ - file://0049-ext-intl-Use-pkg-config-to-detect-icu.patch \ - file://0001-Use-pkg-config-for-libxml2-detection.patch \ - file://debian-php-fixheader.patch \ - file://CVE-2019-6978.patch \ - " -SRC_URI_append_class-target = " \ - file://pear-makefile.patch \ - file://phar-makefile.patch \ - file://0001-opcache-config.m4-enable-opcache.patch \ - file://xfail_two_bug_tests.patch \ - " - -SRC_URI[md5sum] = "bcc37749815009c9201e4c126e1ab8ee" -SRC_URI[sha256sum] = "a39c9709a8c9eb7ea8ac4933ef7a78b92f7e5735a405c8b8e42ee39541d963c4" -- cgit v1.2.3