diff options
Diffstat (limited to 'devel/pecl-vld')
-rw-r--r-- | devel/pecl-vld/Makefile | 2 | ||||
-rw-r--r-- | devel/pecl-vld/distinfo | 6 | ||||
-rw-r--r-- | devel/pecl-vld/files/patch-config.m4 | 83 | ||||
-rw-r--r-- | devel/pecl-vld/files/patch-php84 | 153 |
4 files changed, 4 insertions, 240 deletions
diff --git a/devel/pecl-vld/Makefile b/devel/pecl-vld/Makefile index 863855fa471d..024c7cf80852 100644 --- a/devel/pecl-vld/Makefile +++ b/devel/pecl-vld/Makefile @@ -1,5 +1,5 @@ PORTNAME= vld -PORTVERSION= 0.18.0 +PORTVERSION= 0.19.0 CATEGORIES= devel pear MAINTAINER= sunpoet@FreeBSD.org diff --git a/devel/pecl-vld/distinfo b/devel/pecl-vld/distinfo index 147d73ff00c8..d44215e540c7 100644 --- a/devel/pecl-vld/distinfo +++ b/devel/pecl-vld/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1663672796 -SHA256 (PECL/vld-0.18.0.tgz) = b891cea46fcd61e304a0945ec19eb13b3714a74256e9ec2b6d8edcffac45701d -SIZE (PECL/vld-0.18.0.tgz) = 22040 +TIMESTAMP = 1751622357 +SHA256 (PECL/vld-0.19.0.tgz) = c6f1da071980e5fddcefaec3c675236651c5085010bf4f51af69ee7d1f2f4d68 +SIZE (PECL/vld-0.19.0.tgz) = 22674 diff --git a/devel/pecl-vld/files/patch-config.m4 b/devel/pecl-vld/files/patch-config.m4 deleted file mode 100644 index 5812be7dee42..000000000000 --- a/devel/pecl-vld/files/patch-config.m4 +++ /dev/null @@ -1,83 +0,0 @@ -Obtained from: https://github.com/derickr/vld/commit/d7abb0c5ebda8277cda4be37a92d55e29ab5b503 - ---- config.m4.orig 2022-09-16 08:00:47 UTC -+++ config.m4 -@@ -20,42 +20,42 @@ if test "$PHP_VLD" != "no"; then - CPPFLAGS=$old_CPPFLAGS - - if test "$PHP_VLD_DEV" = "yes"; then -- PHP_CHECK_GCC_ARG(-Wbool-conversion, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wbool-conversion") -- PHP_CHECK_GCC_ARG(-Wdeclaration-after-statement, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wdeclaration-after-statement") -- PHP_CHECK_GCC_ARG(-Wdiscarded-qualifiers, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wdiscarded-qualifiers") -- PHP_CHECK_GCC_ARG(-Wduplicate-enum, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wduplicate-enum") -- PHP_CHECK_GCC_ARG(-Wempty-body, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wempty-body") -- PHP_CHECK_GCC_ARG(-Wenum-compare, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wenum-compare") -- PHP_CHECK_GCC_ARG(-Werror, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Werror") -- PHP_CHECK_GCC_ARG(-Wextra, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wextra") -- PHP_CHECK_GCC_ARG(-Wformat-nonliteral, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wformat-nonliteral") -- PHP_CHECK_GCC_ARG(-Wformat-security, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wformat-security") -- PHP_CHECK_GCC_ARG(-Wheader-guard, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wheader-guard") -- PHP_CHECK_GCC_ARG(-Wincompatible-pointer-types-discards-qualifiers, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wincompatible-pointer-types-discards-qualifiers") -- PHP_CHECK_GCC_ARG(-Wimplicit-fallthrough, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wimplicit-fallthrough") -- PHP_CHECK_GCC_ARG(-Winit-self, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Winit-self") -- PHP_CHECK_GCC_ARG(-Wlogical-not-parentheses, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wlogical-not-parentheses") -- PHP_CHECK_GCC_ARG(-Wlogical-op, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wlogical-op") -- PHP_CHECK_GCC_ARG(-Wlogical-op-parentheses, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wlogical-op-parentheses") -- PHP_CHECK_GCC_ARG(-Wloop-analysis, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wloop-analysis") -- PHP_CHECK_GCC_ARG(-Wmaybe-uninitialized, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wmaybe-uninitialized") -- PHP_CHECK_GCC_ARG(-Wmissing-format-attribute, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wmissing-format-attribute") -- PHP_CHECK_GCC_ARG(-Wno-missing-field-initializers, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-missing-field-initializers") -- PHP_CHECK_GCC_ARG(-Wno-sign-compare, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-sign-compare") -- PHP_CHECK_GCC_ARG(-Wno-unused-but-set-variable, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-unused-but-set-variable") -- PHP_CHECK_GCC_ARG(-Wno-unused-parameter, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-unused-parameter") -- PHP_CHECK_GCC_ARG(-Wno-variadic-macros, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-variadic-macros") -- PHP_CHECK_GCC_ARG(-Wparentheses, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wparentheses") -- PHP_CHECK_GCC_ARG(-Wpointer-bool-conversion, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wpointer-bool-conversion") -- PHP_CHECK_GCC_ARG(-Wsizeof-array-argument, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wsizeof-array-argument") -- PHP_CHECK_GCC_ARG(-Wstring-conversion, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wstring-conversion") -- PHP_CHECK_GCC_ARG(-Wwrite-strings, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wwrite-strings") -- PHP_CHECK_GCC_ARG(-fdiagnostics-show-option, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fdiagnostics-show-option") -- PHP_CHECK_GCC_ARG(-fno-exceptions, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fno-exceptions") -- PHP_CHECK_GCC_ARG(-fno-omit-frame-pointer, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fno-omit-frame-pointer") -- PHP_CHECK_GCC_ARG(-fno-optimize-sibling-calls, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fno-optimize-sibling-calls") -- PHP_CHECK_GCC_ARG(-fsanitize-address, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fsanitize-address") -- PHP_CHECK_GCC_ARG(-fstack-protector, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fstack-protector") -+ AX_CHECK_COMPILE_FLAG(-Wbool-conversion, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wbool-conversion") -+ AX_CHECK_COMPILE_FLAG(-Wdeclaration-after-statement, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wdeclaration-after-statement") -+ AX_CHECK_COMPILE_FLAG(-Wdiscarded-qualifiers, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wdiscarded-qualifiers") -+ AX_CHECK_COMPILE_FLAG(-Wduplicate-enum, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wduplicate-enum") -+ AX_CHECK_COMPILE_FLAG(-Wempty-body, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wempty-body") -+ AX_CHECK_COMPILE_FLAG(-Wenum-compare, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wenum-compare") -+ AX_CHECK_COMPILE_FLAG(-Werror, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Werror") -+ AX_CHECK_COMPILE_FLAG(-Wextra, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wextra") -+ AX_CHECK_COMPILE_FLAG(-Wformat-nonliteral, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wformat-nonliteral") -+ AX_CHECK_COMPILE_FLAG(-Wformat-security, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wformat-security") -+ AX_CHECK_COMPILE_FLAG(-Wheader-guard, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wheader-guard") -+ AX_CHECK_COMPILE_FLAG(-Wincompatible-pointer-types-discards-qualifiers, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wincompatible-pointer-types-discards-qualifiers") -+ AX_CHECK_COMPILE_FLAG(-Wimplicit-fallthrough, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wimplicit-fallthrough") -+ AX_CHECK_COMPILE_FLAG(-Winit-self, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Winit-self") -+ AX_CHECK_COMPILE_FLAG(-Wlogical-not-parentheses, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wlogical-not-parentheses") -+ AX_CHECK_COMPILE_FLAG(-Wlogical-op, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wlogical-op") -+ AX_CHECK_COMPILE_FLAG(-Wlogical-op-parentheses, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wlogical-op-parentheses") -+ AX_CHECK_COMPILE_FLAG(-Wloop-analysis, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wloop-analysis") -+ AX_CHECK_COMPILE_FLAG(-Wmaybe-uninitialized, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wmaybe-uninitialized") -+ AX_CHECK_COMPILE_FLAG(-Wmissing-format-attribute, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wmissing-format-attribute") -+ AX_CHECK_COMPILE_FLAG(-Wno-missing-field-initializers, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-missing-field-initializers") -+ AX_CHECK_COMPILE_FLAG(-Wno-sign-compare, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-sign-compare") -+ AX_CHECK_COMPILE_FLAG(-Wno-unused-but-set-variable, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-unused-but-set-variable") -+ AX_CHECK_COMPILE_FLAG(-Wno-unused-parameter, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-unused-parameter") -+ AX_CHECK_COMPILE_FLAG(-Wno-variadic-macros, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wno-variadic-macros") -+ AX_CHECK_COMPILE_FLAG(-Wparentheses, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wparentheses") -+ AX_CHECK_COMPILE_FLAG(-Wpointer-bool-conversion, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wpointer-bool-conversion") -+ AX_CHECK_COMPILE_FLAG(-Wsizeof-array-argument, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wsizeof-array-argument") -+ AX_CHECK_COMPILE_FLAG(-Wstring-conversion, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wstring-conversion") -+ AX_CHECK_COMPILE_FLAG(-Wwrite-strings, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -Wwrite-strings") -+ AX_CHECK_COMPILE_FLAG(-fdiagnostics-show-option, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fdiagnostics-show-option") -+ AX_CHECK_COMPILE_FLAG(-fno-exceptions, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fno-exceptions") -+ AX_CHECK_COMPILE_FLAG(-fno-omit-frame-pointer, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fno-omit-frame-pointer") -+ AX_CHECK_COMPILE_FLAG(-fno-optimize-sibling-calls, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fno-optimize-sibling-calls") -+ AX_CHECK_COMPILE_FLAG(-fsanitize-address, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fsanitize-address") -+ AX_CHECK_COMPILE_FLAG(-fstack-protector, _MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS -fstack-protector") - - MAINTAINER_CFLAGS="$_MAINTAINER_CFLAGS" - STD_CFLAGS="-g -O0 -Wall" diff --git a/devel/pecl-vld/files/patch-php84 b/devel/pecl-vld/files/patch-php84 deleted file mode 100644 index 96c47096e8c6..000000000000 --- a/devel/pecl-vld/files/patch-php84 +++ /dev/null @@ -1,153 +0,0 @@ -Obtained from: https://github.com/derickr/vld/commit/df1c52c4cb62e5ff31e1b72e3f11df9a45ee567a - https://github.com/derickr/vld/commit/dc56f73a25b0230745afb5523871f2e8dd33fccd - ---- srm_oparray.c.orig 2022-09-16 08:00:47 UTC -+++ srm_oparray.c -@@ -350,6 +350,16 @@ static const op_usage opcodes[] = { - /* 200 */ { "FETCH_GLOBALS", ALL_USED }, - /* 201 */ { "VERIFY_NEVER_TYPE", ALL_USED }, - /* 202 */ { "ZEND_CALLABLE_CONVERT", ALL_USED }, -+# if PHP_VERSION_ID >= 80300 -+ /* 203 */ { "ZEND_BIND_INIT_STATIC_OR_JMP", ALL_USED }, -+# if PHP_VERSION_ID >= 80400 -+ /* 204 */ { "ZEND_FRAMELESS_ICALL_0", ALL_USED | EXT_VAL_FLF }, -+ /* 205 */ { "ZEND_FRAMELESS_ICALL_1", ALL_USED | EXT_VAL_FLF }, -+ /* 206 */ { "ZEND_FRAMELESS_ICALL_2", ALL_USED | EXT_VAL_FLF }, -+ /* 207 */ { "ZEND_FRAMELESS_ICALL_3", ALL_USED | EXT_VAL_FLF }, -+ /* 208 */ { "ZEND_JMP_FRAMELESS", ALL_USED | EXT_CACHED_PTR | OP2_OPNUM }, -+# endif -+# endif - # endif - # endif - # else -@@ -811,6 +821,12 @@ void vld_dump_op(int nr, zend_op * op_ptr, unsigned in - last_lineno = op.lineno; - } - -+#if PHP_VERSION_ID >= 80400 -+ if (flags & EXT_VAL_FLF) { -+ fetch_type = (char*) ZEND_FLF_FUNC(&op)->common.function_name->val; -+ } -+#endif -+ - if (op.opcode >= NUM_KNOWN_OPCODES) { - if (VLD_G(format)) { - vld_printf(stderr, "%5d %s %c %c %c %c %s <%03d>%-23s %s %-14s ", nr, VLD_G(col_sep), notdead ? ' ' : '*', entry ? 'E' : ' ', start ? '>' : ' ', end ? '>' : ' ', VLD_G(col_sep), op.opcode, VLD_G(col_sep), fetch_type); -@@ -831,6 +847,11 @@ void vld_dump_op(int nr, zend_op * op_ptr, unsigned in - } - } - -+#if PHP_VERSION_ID >= 80400 -+ if (flags & EXT_CACHED_PTR) { -+ vld_printf(stderr, "s%-3d ", op.extended_value); -+ } else -+#endif - if (flags & EXT_VAL) { - #if PHP_VERSION_ID >= 70300 - if (op.opcode == ZEND_CATCH) { -@@ -1082,9 +1103,19 @@ int vld_find_jumps(zend_op_array *opa, unsigned int po - *jump_count = 1; - return 1; - -+#if PHP_VERSION_ID >= 80400 -+ } else if (opcode.opcode == ZEND_JMP_FRAMELESS) { -+ jumps[0] = position + 1; -+ jumps[1] = VLD_ZNODE_JMP_LINE(opcode.op2, position, base_address); -+ *jump_count = 2; -+ return 1; -+#endif -+ - } else if ( - opcode.opcode == ZEND_GENERATOR_RETURN || -+#if PHP_VERSION_ID < 80400 - opcode.opcode == ZEND_EXIT || -+#endif - opcode.opcode == ZEND_THROW || - #if PHP_VERSION_ID >= 80000 - opcode.opcode == ZEND_MATCH_ERROR || -@@ -1094,6 +1125,49 @@ int vld_find_jumps(zend_op_array *opa, unsigned int po - jumps[0] = VLD_JMP_EXIT; - *jump_count = 1; - return 1; -+#if PHP_VERSION_ID >= 80200 -+ } else if ( -+ opcode.opcode == ZEND_INIT_FCALL -+ ) { -+ zval *func_name = RT_CONSTANT(&opa->opcodes[position], opcode.op2); -+ if (zend_string_equals_literal(Z_PTR_P(func_name), "exit")) { -+ int level = 0; -+ uint32_t start = position + 1; -+ -+ for (;;) { -+ switch (opa->opcodes[start].opcode) { -+ case ZEND_INIT_FCALL: -+ case ZEND_INIT_FCALL_BY_NAME: -+ case ZEND_INIT_NS_FCALL_BY_NAME: -+ case ZEND_INIT_DYNAMIC_CALL: -+ case ZEND_INIT_USER_CALL: -+ case ZEND_INIT_METHOD_CALL: -+ case ZEND_INIT_STATIC_METHOD_CALL: -+#if PHP_VERSION_ID >= 80400 -+ case ZEND_INIT_PARENT_PROPERTY_HOOK_CALL: -+#endif -+ case ZEND_NEW: -+ level++; -+ break; -+ case ZEND_DO_FCALL: -+ case ZEND_DO_FCALL_BY_NAME: -+ case ZEND_DO_ICALL: -+ case ZEND_DO_UCALL: -+ if (level == 0) { -+ goto done; -+ } -+ level--; -+ break; -+ } -+ start++; -+ } -+ done: -+ ZEND_ASSERT(opa->opcodes[start].opcode == ZEND_DO_ICALL); -+ jumps[0] = VLD_JMP_EXIT; -+ *jump_count = 1; -+ return 1; -+ } -+# endif - #if PHP_VERSION_ID >= 70200 - } else if ( - # if PHP_VERSION_ID >= 80000 -@@ -1233,6 +1307,7 @@ void vld_analyse_branch(zend_op_array *opa, unsigned i - break; - } - -+#if PHP_VERSION_ID < 80400 - /* See if we have an exit instruction */ - if (opa->opcodes[position].opcode == ZEND_EXIT) { - VLD_PRINT(1, "Exit found\n"); -@@ -1240,6 +1315,7 @@ void vld_analyse_branch(zend_op_array *opa, unsigned i - branch_info->branches[position].start_lineno = opa->opcodes[position].lineno; - break; - } -+#endif - /* See if we have a return instruction */ - if ( - opa->opcodes[position].opcode == ZEND_RETURN ---- srm_oparray.h.orig 2022-09-16 08:00:47 UTC -+++ srm_oparray.h -@@ -57,6 +57,8 @@ - #define EXT_VAL_JMP_ABS 1<<25 - #define VLD_IS_JMP_ARRAY 1<<26 - #define VLD_IS_INDEX 1<<27 -+#define EXT_VAL_FLF 1<<28 -+#define EXT_CACHED_PTR 1<<29 - - typedef struct _op_usage { - const char *name; ---- tests/jmp_frameless.inc.orig 2024-07-29 13:37:33 UTC -+++ tests/jmp_frameless.inc -@@ -0,0 +1,6 @@ -+<?php -+namespace Foo { -+ -+echo substr("Derick Cool?", 7); -+ -+} |