Core: Fixed bug GH-13922 (Fixed support for systems with sysconf(_SC_GETPW_R_SIZE_MAX) == -1). Fixed bug GH-14626 (Fix is_zend_ptr() for huge blocks). Fixed bug GH-14590 (Memory leak in FPM test gh13563-conf-bool-env.phpt. Fixed OSS-Fuzz #69765. Fixed bug GH-14741 (Segmentation fault in Zend/zend_types.h). Fixed bug GH-14969 (Use-after-free in property coercion with __toString()). Dom: Fixed bug GH-14702 (DOMDocument::xinclude() crash). Fileinfo: Fixed bug GH-14888 (README.REDIST.BINS refers to non-existing LICENSE). Gd: ext/gd/tests/gh10614.phpt: skip if no PNG support. restored warning instead of fata error. LibXML: Fixed bug GH-14563 (Build failure with libxml2 v2.13.0). Opcache: Fixed bug GH-14550 (No warning message when Zend DTrace is enabled that opcache.jit is implictly disabled). Output: Fixed bug GH-14808 (Unexpected null pointer in Zend/zend_string.h with empty output buffer). PDO: Fixed bug GH-14712 (Crash with PDORow access to null property). Phar: Fixed bug GH-14603 (null string from zip entry). PHPDBG: Fixed bug GH-14596 (crashes with ASAN and ZEND_RC_DEBUG=1). Fixed bug GH-14553 (echo output trimmed at NULL byte). Shmop: Fixed bug GH-14537 (shmop Windows 11 crashes the process). SPL: Fixed bug GH-14639 (Member access within null pointer in ext/spl/spl_observer.c). Standard: Fixed bug GH-14775 (range function overflow with negative step argument). Fix 32-bit wordwrap test failures. Fixed bug GH-14774 (time_sleep_until overflow). Streams: Fixed bug GH-14930 (Custom stream wrapper dir_readdir output truncated to 255 characters in PHP 8.3). Tidy: Fix memory leak in tidy_repair_file(). Treewide: Fix compatibility with libxml2 2.13.2. XML: Move away from to-be-deprecated libxml fields. Fixed bug GH-14834 (Error installing PHP when --with-pear is used). OBS-URL: https://build.opensuse.org/package/show/devel:languages:php/php8?expand=0&rev=170
97 lines
2.8 KiB
PHP
97 lines
2.8 KiB
PHP
# macros.php file
|
|
# macros for module building. handle with care.
|
|
|
|
#
|
|
# Interface versions exposed by PHP:
|
|
#
|
|
%php_core_api @PHP_APIVER@
|
|
%php_zend_api @PHP_ZENDVER@
|
|
|
|
# Useful php macros (from Christian Wittmer <chris@computersalat.de>)
|
|
#
|
|
%__php /usr/bin/php
|
|
%__phpize /usr/bin/phpize
|
|
%__php_config /usr/bin/php-config
|
|
%php_version %(%{__php_config} --version)
|
|
%php_cfgdir %(%{__php_config} --ini-dir)
|
|
%php_extdir %(%{__php_config} --extension-dir)
|
|
|
|
# pear related macros
|
|
%__pear /usr/bin/pear
|
|
%php_peardir %(%{__pear} config-get php_dir)
|
|
|
|
# %pear_xmldir should be replaced by %php_pearxmldir
|
|
%pear_xmldir /var/lib/pear
|
|
|
|
%php_pearxmldir /var/lib/pear
|
|
%pear_phpdir %(%{__pear} config-get php_dir 2> /dev/null || echo undefined)
|
|
%pear_docdir %(%{__pear} config-get doc_dir 2> /dev/null || echo undefined)
|
|
%pear_testdir %(%{__pear} config-get test_dir 2> /dev/null || echo undefined)
|
|
%pear_datadir %(%{__pear} config-get data_dir 2> /dev/null || echo undefined)
|
|
%pear_cfgdir %(%{__pear} config-get cfg_dir 2> /dev/null || echo undefined)
|
|
%pear_wwwdir %(%{__pear} config-get www_dir 2> /dev/null || echo undefined)
|
|
%pear_metadir %(%{__pear} config-get metadata_dir 2> /dev/null || echo undefined)
|
|
|
|
# pecl related macros
|
|
%__pecl /usr/bin/pecl
|
|
%pecl_phpdir %(%{__pecl} config-get php_dir 2> /dev/null || echo undefined)
|
|
%pecl_docdir %(%{__pecl} config-get doc_dir 2> /dev/null || echo undefined)
|
|
%pecl_testdir %(%{__pecl} config-get test_dir 2> /dev/null || echo undefined)
|
|
%pecl_datadir %(%{__pecl} config-get data_dir 2> /dev/null || echo undefined)
|
|
|
|
# macro: php_pear_gen_filelist
|
|
# do the rpmlint happy filelist generation
|
|
# with %dir in front of directories
|
|
%php_pear_gen_filelist(n)\
|
|
FILES=%{name}.files\
|
|
# fgen_dir func\
|
|
# IN: dir\
|
|
fgen_dir(){\
|
|
%{__cat} >> $FILES << EOF\
|
|
%dir ${1}\
|
|
EOF\
|
|
}\
|
|
# fgen_file func\
|
|
# IN: file\
|
|
fgen_file(){\
|
|
%{__cat} >> $FILES << EOF\
|
|
${1}\
|
|
EOF\
|
|
}\
|
|
# check for files in %{php_peardir}\
|
|
RES=`find ${RPM_BUILD_ROOT}%{php_peardir} -maxdepth 1 -type f`\
|
|
if [ -n "$RES" ]; then\
|
|
for file in $RES; do\
|
|
fgen_file "%{php_peardir}/$(basename ${file})"\
|
|
done\
|
|
fi\
|
|
\
|
|
# get all dirs into array\
|
|
base_dir="${RPM_BUILD_ROOT}%{php_peardir}/"\
|
|
for dir in `find ${base_dir} -type d | sort`; do\
|
|
if [ "$dir" = "${base_dir}" ]; then\
|
|
continue\
|
|
else\
|
|
el=`echo $dir | %{__awk} -F"${base_dir}" '{print $2}'`\
|
|
all_dir=(${all_dir[@]} $el)\
|
|
fi\
|
|
done\
|
|
\
|
|
# build filelist\
|
|
for i in ${all_dir[@]}; do\
|
|
if [ -d ${base_dir}/${i} ]; then\
|
|
RES=`find "${base_dir}/${i}" -maxdepth 1 -type f`\
|
|
if [ -n "$RES" ]; then\
|
|
fgen_dir "%{php_peardir}/${i}"\
|
|
for file in $RES; do\
|
|
fgen_file "%{php_peardir}/${i}/$(basename ${file})"\
|
|
done\
|
|
else\
|
|
fgen_dir "%{php_peardir}/${i}"\
|
|
fi\
|
|
fi\
|
|
done\
|
|
# add xml file\
|
|
fgen_file "%php_pearxmldir/%{pear_name}.xml"\
|
|
#
|