diff --git a/archivers/php85-phar/files/patch-phar__internal.h b/archivers/php85-phar/files/patch-phar__internal.h new file mode 100644 index 000000000000..8e78b1e703f8 --- /dev/null +++ b/archivers/php85-phar/files/patch-phar__internal.h @@ -0,0 +1,18 @@ +--- phar_internal.h.orig 2025-08-19 05:47:26 UTC ++++ phar_internal.h +@@ -17,6 +17,9 @@ + +----------------------------------------------------------------------+ + */ + ++#ifndef PHAR_PHAR_INTERNAL_H ++#define PHAR_PHAR_INTERNAL_H ++ + #ifdef HAVE_CONFIG_H + #include + #endif +@@ -487,3 +490,5 @@ END_EXTERN_C() + phar_path_check_result phar_path_check(char **p, size_t *len, const char **error); + + END_EXTERN_C() ++ ++#endif /* PHAR_PHAR_INTERNAL_H */ diff --git a/archivers/php85-phar/files/patch-phar__path__check.c b/archivers/php85-phar/files/patch-phar__path__check.c deleted file mode 100644 index 8e599176ec86..000000000000 --- a/archivers/php85-phar/files/patch-phar__path__check.c +++ /dev/null @@ -1,241 +0,0 @@ ---- phar_path_check.c.orig 2025-07-02 12:00:06 UTC -+++ phar_path_check.c -@@ -0,0 +1,238 @@ -+/* Generated by re2c 3.1 */ -+/* -+ +----------------------------------------------------------------------+ -+ | phar php single-file executable PHP extension | -+ +----------------------------------------------------------------------+ -+ | Copyright (c) The PHP Group | -+ +----------------------------------------------------------------------+ -+ | This source file is subject to version 3.01 of the PHP license, | -+ | that is bundled with this package in the file LICENSE, and is | -+ | available through the world-wide-web at the following url: | -+ | https://www.php.net/license/3_01.txt | -+ | If you did not receive a copy of the PHP license and are unable to | -+ | obtain it through the world-wide-web, please send a note to | -+ | license@php.net so we can mail you a copy immediately. | -+ +----------------------------------------------------------------------+ -+ | Authors: Marcus Boerger | -+ +----------------------------------------------------------------------+ -+*/ -+ -+#include "phar_internal.h" -+ -+phar_path_check_result phar_path_check(char **s, size_t *len, const char **error) -+{ -+ const unsigned char *p = (const unsigned char*)*s; -+ const unsigned char *m; -+ -+ if (*len == 1 && *p == '.') { -+ *error = "current directory reference"; -+ return pcr_err_curr_dir; -+ } else if (*len == 2 && p[0] == '.' && p[1] == '.') { -+ *error = "upper directory reference"; -+ return pcr_err_up_dir; -+ } -+ -+#define YYCTYPE unsigned char -+#define YYCURSOR p -+#define YYLIMIT p+*len -+#define YYMARKER m -+#define YYFILL(n) do {} while (0) -+ -+loop: -+ -+{ -+ YYCTYPE yych; -+ unsigned int yyaccept = 0; -+ if ((YYLIMIT - YYCURSOR) < 4) YYFILL(4); -+ yych = *YYCURSOR; -+ if (yych <= '[') { -+ if (yych <= ')') { -+ if (yych <= '\f') { -+ if (yych >= 0x01) goto yy1; -+ } else { -+ if (yych <= '\r') goto yy3; -+ if (yych <= 0x19) goto yy1; -+ goto yy4; -+ } -+ } else { -+ if (yych <= '/') { -+ if (yych <= '*') goto yy6; -+ if (yych <= '.') goto yy4; -+ goto yy7; -+ } else { -+ if (yych == '?') goto yy8; -+ goto yy4; -+ } -+ } -+ } else { -+ if (yych <= 0xEC) { -+ if (yych <= 0xC1) { -+ if (yych <= '\\') goto yy9; -+ if (yych <= 0x7F) goto yy4; -+ goto yy1; -+ } else { -+ if (yych <= 0xDF) goto yy10; -+ if (yych <= 0xE0) goto yy11; -+ goto yy12; -+ } -+ } else { -+ if (yych <= 0xF0) { -+ if (yych <= 0xED) goto yy13; -+ if (yych <= 0xEF) goto yy12; -+ goto yy14; -+ } else { -+ if (yych <= 0xF3) goto yy15; -+ if (yych <= 0xF4) goto yy16; -+ goto yy1; -+ } -+ } -+ } -+ ++YYCURSOR; -+ { -+ if (**s == '/') { -+ (*s)++; -+ (*len)--; -+ } -+ if ((p - (const unsigned char*)*s) - 1 != *len) -+ { -+ *error ="illegal character"; -+ return pcr_err_illegal_char; -+ } -+ *error = NULL; -+ return pcr_is_ok; -+ } -+yy1: -+ ++YYCURSOR; -+yy2: -+ { -+ *error ="illegal character"; -+ return pcr_err_illegal_char; -+ } -+yy3: -+ yych = *++YYCURSOR; -+ if (yych == '\n') goto yy1; -+ goto yy2; -+yy4: -+ ++YYCURSOR; -+yy5: -+ { -+ goto loop; -+ } -+yy6: -+ ++YYCURSOR; -+ { -+ *error = "star"; -+ return pcr_err_star; -+ } -+yy7: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= '-') goto yy5; -+ if (yych <= '.') goto yy17; -+ if (yych <= '/') goto yy19; -+ goto yy5; -+yy8: -+ ++YYCURSOR; -+ { -+ if (**s == '/') { -+ (*s)++; -+ } -+ *len = (p - (const unsigned char*)*s) -1; -+ *error = NULL; -+ return pcr_use_query; -+ } -+yy9: -+ ++YYCURSOR; -+ { -+ *error = "back-slash"; -+ return pcr_err_back_slash; -+ } -+yy10: -+ yych = *++YYCURSOR; -+ if (yych <= 0x7F) goto yy2; -+ if (yych <= 0xBF) goto yy4; -+ goto yy2; -+yy11: -+ yyaccept = 1; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x9F) goto yy2; -+ if (yych <= 0xBF) goto yy20; -+ goto yy2; -+yy12: -+ yyaccept = 1; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x7F) goto yy2; -+ if (yych <= 0xBF) goto yy20; -+ goto yy2; -+yy13: -+ yyaccept = 1; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x7F) goto yy2; -+ if (yych <= 0x9F) goto yy20; -+ goto yy2; -+yy14: -+ yyaccept = 1; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x8F) goto yy2; -+ if (yych <= 0xBF) goto yy21; -+ goto yy2; -+yy15: -+ yyaccept = 1; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x7F) goto yy2; -+ if (yych <= 0xBF) goto yy21; -+ goto yy2; -+yy16: -+ yyaccept = 1; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x7F) goto yy2; -+ if (yych <= 0x8F) goto yy21; -+ goto yy2; -+yy17: -+ yych = *++YYCURSOR; -+ if (yych <= 0x00) goto yy22; -+ if (yych <= '-') goto yy18; -+ if (yych <= '.') goto yy23; -+ if (yych <= '/') goto yy22; -+yy18: -+ YYCURSOR = YYMARKER; -+ if (yyaccept == 0) { -+ goto yy5; -+ } else { -+ goto yy2; -+ } -+yy19: -+ ++YYCURSOR; -+ { -+ *error = "double slash"; -+ return pcr_err_double_slash; -+ } -+yy20: -+ yych = *++YYCURSOR; -+ if (yych <= 0x7F) goto yy18; -+ if (yych <= 0xBF) goto yy4; -+ goto yy18; -+yy21: -+ yych = *++YYCURSOR; -+ if (yych <= 0x7F) goto yy18; -+ if (yych <= 0xBF) goto yy20; -+ goto yy18; -+yy22: -+ ++YYCURSOR; -+ { -+ *error = "current directory reference"; -+ return pcr_err_curr_dir; -+ } -+yy23: -+ yych = *++YYCURSOR; -+ if (yych <= 0x00) goto yy24; -+ if (yych != '/') goto yy18; -+yy24: -+ ++YYCURSOR; -+ { -+ *error = "upper directory reference"; -+ return pcr_err_up_dir; -+ } -+} -+ -+} diff --git a/archivers/php85-phar/files/patch-pharzip.h b/archivers/php85-phar/files/patch-pharzip.h new file mode 100644 index 000000000000..5e0e89f2a844 --- /dev/null +++ b/archivers/php85-phar/files/patch-pharzip.h @@ -0,0 +1,19 @@ +--- pharzip.h.orig 2025-08-19 05:41:37 UTC ++++ pharzip.h +@@ -17,6 +17,10 @@ + +----------------------------------------------------------------------+ + */ + ++/* Add missing include guard to avoid multiple inclusion */ ++#ifndef PHAR_PHARZIP_H ++#define PHAR_PHARZIP_H ++ + typedef struct _phar_zip_file_header { + char signature[4]; /* local file header signature 4 bytes (0x04034b50) */ + char zipversion[2]; /* version needed to extract 2 bytes */ +@@ -238,3 +242,5 @@ typedef struct _phar_zip_dir_end { + char comment_len[2]; /* .ZIP file comment length 2 bytes */ + /* .ZIP file comment (variable size) */ + } phar_zip_dir_end; ++ ++#endif /* PHAR_PHARZIP_H */ diff --git a/databases/php85-pdo/files/patch-pdo__sql__parser.c b/databases/php85-pdo/files/patch-pdo__sql__parser.c deleted file mode 100644 index 191eea16a3bd..000000000000 --- a/databases/php85-pdo/files/patch-pdo__sql__parser.c +++ /dev/null @@ -1,729 +0,0 @@ ---- pdo_sql_parser.c.orig 2025-07-02 12:59:51 UTC -+++ pdo_sql_parser.c -@@ -0,0 +1,726 @@ -+/* Generated by re2c 3.1 */ -+/* -+ +----------------------------------------------------------------------+ -+ | Copyright (c) The PHP Group | -+ +----------------------------------------------------------------------+ -+ | This source file is subject to version 3.01 of the PHP license, | -+ | that is bundled with this package in the file LICENSE, and is | -+ | available through the world-wide-web at the following url: | -+ | https://www.php.net/license/3_01.txt | -+ | If you did not receive a copy of the PHP license and are unable to | -+ | obtain it through the world-wide-web, please send a note to | -+ | license@php.net so we can mail you a copy immediately. | -+ +----------------------------------------------------------------------+ -+ | Author: George Schlossnagle | -+ +----------------------------------------------------------------------+ -+*/ -+ -+#include "php.h" -+#include "php_pdo_driver.h" -+#include "pdo_sql_parser.h" -+ -+static int default_scanner(pdo_scanner_t *s) -+{ -+ const char *cursor = s->cur; -+ -+ s->tok = cursor; -+ -+ -+ -+{ -+ YYCTYPE yych; -+ unsigned int yyaccept = 0; -+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '"': goto yy4; -+ case '\'': goto yy6; -+ case '-': goto yy7; -+ case '/': goto yy8; -+ case ':': goto yy9; -+ case '?': goto yy10; -+ default: goto yy2; -+ } -+yy1: -+ YYCURSOR = YYMARKER; -+ switch (yyaccept) { -+ case 0: goto yy5; -+ case 1: goto yy15; -+ default: goto yy19; -+ } -+yy2: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: -+ case '"': -+ case '\'': -+ case '-': -+ case '/': -+ case ':': -+ case '?': goto yy3; -+ default: goto yy2; -+ } -+yy3: -+ { RET(PDO_PARSER_TEXT); } -+yy4: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych >= 0x01) goto yy13; -+yy5: -+ { SKIP_ONE(PDO_PARSER_TEXT); } -+yy6: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x00) goto yy5; -+ goto yy17; -+yy7: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '-': goto yy20; -+ default: goto yy5; -+ } -+yy8: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '*': goto yy22; -+ default: goto yy5; -+ } -+yy9: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '0': -+ case '1': -+ case '2': -+ case '3': -+ case '4': -+ case '5': -+ case '6': -+ case '7': -+ case '8': -+ case '9': -+ case 'A': -+ case 'B': -+ case 'C': -+ case 'D': -+ case 'E': -+ case 'F': -+ case 'G': -+ case 'H': -+ case 'I': -+ case 'J': -+ case 'K': -+ case 'L': -+ case 'M': -+ case 'N': -+ case 'O': -+ case 'P': -+ case 'Q': -+ case 'R': -+ case 'S': -+ case 'T': -+ case 'U': -+ case 'V': -+ case 'W': -+ case 'X': -+ case 'Y': -+ case 'Z': -+ case '_': -+ case 'a': -+ case 'b': -+ case 'c': -+ case 'd': -+ case 'e': -+ case 'f': -+ case 'g': -+ case 'h': -+ case 'i': -+ case 'j': -+ case 'k': -+ case 'l': -+ case 'm': -+ case 'n': -+ case 'o': -+ case 'p': -+ case 'q': -+ case 'r': -+ case 's': -+ case 't': -+ case 'u': -+ case 'v': -+ case 'w': -+ case 'x': -+ case 'y': -+ case 'z': goto yy23; -+ case ':': goto yy25; -+ default: goto yy5; -+ } -+yy10: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '?': goto yy27; -+ default: goto yy11; -+ } -+yy11: -+ { RET(PDO_PARSER_BIND_POS); } -+yy12: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+yy13: -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '"': goto yy14; -+ default: goto yy12; -+ } -+yy14: -+ yyaccept = 1; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '"': goto yy12; -+ default: goto yy15; -+ } -+yy15: -+ { RET(PDO_PARSER_TEXT); } -+yy16: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+yy17: -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '\'': goto yy18; -+ default: goto yy16; -+ } -+yy18: -+ yyaccept = 2; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '\'': goto yy16; -+ default: goto yy19; -+ } -+yy19: -+ { RET(PDO_PARSER_TEXT); } -+yy20: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '\n': goto yy21; -+ default: goto yy20; -+ } -+yy21: -+ { RET(PDO_PARSER_TEXT); } -+yy22: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '*': goto yy28; -+ default: goto yy22; -+ } -+yy23: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '0': -+ case '1': -+ case '2': -+ case '3': -+ case '4': -+ case '5': -+ case '6': -+ case '7': -+ case '8': -+ case '9': -+ case 'A': -+ case 'B': -+ case 'C': -+ case 'D': -+ case 'E': -+ case 'F': -+ case 'G': -+ case 'H': -+ case 'I': -+ case 'J': -+ case 'K': -+ case 'L': -+ case 'M': -+ case 'N': -+ case 'O': -+ case 'P': -+ case 'Q': -+ case 'R': -+ case 'S': -+ case 'T': -+ case 'U': -+ case 'V': -+ case 'W': -+ case 'X': -+ case 'Y': -+ case 'Z': -+ case '_': -+ case 'a': -+ case 'b': -+ case 'c': -+ case 'd': -+ case 'e': -+ case 'f': -+ case 'g': -+ case 'h': -+ case 'i': -+ case 'j': -+ case 'k': -+ case 'l': -+ case 'm': -+ case 'n': -+ case 'o': -+ case 'p': -+ case 'q': -+ case 'r': -+ case 's': -+ case 't': -+ case 'u': -+ case 'v': -+ case 'w': -+ case 'x': -+ case 'y': -+ case 'z': goto yy23; -+ default: goto yy24; -+ } -+yy24: -+ { RET(PDO_PARSER_BIND); } -+yy25: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case ':': goto yy25; -+ default: goto yy26; -+ } -+yy26: -+ { RET(PDO_PARSER_TEXT); } -+yy27: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '?': goto yy27; -+ default: goto yy26; -+ } -+yy28: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '*': goto yy28; -+ case '/': goto yy29; -+ default: goto yy22; -+ } -+yy29: -+ ++YYCURSOR; -+ goto yy21; -+} -+ -+} -+ -+struct placeholder { -+ const char *pos; -+ size_t len; -+ zend_string *quoted; /* quoted value */ -+ int bindno; -+ struct placeholder *next; -+}; -+ -+struct custom_quote { -+ const char *pos; -+ size_t len; -+}; -+ -+static void free_param_name(zval *el) { -+ zend_string_release(Z_PTR_P(el)); -+} -+ -+PDO_API int pdo_parse_params(pdo_stmt_t *stmt, zend_string *inquery, zend_string **outquery) -+{ -+ pdo_scanner_t s; -+ char *newbuffer; -+ ptrdiff_t t; -+ uint32_t bindno = 0; -+ int ret = 0, escapes = 0; -+ size_t newbuffer_len; -+ HashTable *params; -+ struct pdo_bound_param_data *param; -+ int query_type = PDO_PLACEHOLDER_NONE; -+ struct placeholder *placeholders = NULL, *placetail = NULL, *plc = NULL; -+ int (*scan)(pdo_scanner_t *s); -+ struct custom_quote custom_quote = {NULL, 0}; -+ -+ scan = stmt->dbh->methods->scanner ? stmt->dbh->methods->scanner : default_scanner; -+ -+ s.cur = ZSTR_VAL(inquery); -+ s.end = s.cur + ZSTR_LEN(inquery) + 1; -+ -+ /* phase 1: look for args */ -+ while((t = scan(&s)) != PDO_PARSER_EOI) { -+ if (custom_quote.pos) { -+ /* Inside a custom quote */ -+ if (t == PDO_PARSER_CUSTOM_QUOTE && custom_quote.len == s.cur - s.tok && !strncmp(s.tok, custom_quote.pos, custom_quote.len)) { -+ /* Matching closing quote found, end custom quoting */ -+ custom_quote.pos = NULL; -+ custom_quote.len = 0; -+ } else if (t == PDO_PARSER_ESCAPED_QUESTION) { -+ /* An escaped question mark has been used inside a dollar quoted string, most likely as a workaround -+ * as a single "?" would have been parsed as placeholder, due to the lack of support for dollar quoted -+ * strings. For now, we emit a deprecation notice, but still process it */ -+ php_error_docref(NULL, E_DEPRECATED, "Escaping question marks inside dollar quoted strings is not required anymore and is deprecated"); -+ -+ goto placeholder; -+ } -+ -+ continue; -+ } -+ -+ if (t == PDO_PARSER_CUSTOM_QUOTE) { -+ /* Start of a custom quote, keep a reference to search for the matching closing quote */ -+ custom_quote.pos = s.tok; -+ custom_quote.len = s.cur - s.tok; -+ -+ continue; -+ } -+ -+ if (t == PDO_PARSER_BIND || t == PDO_PARSER_BIND_POS || t == PDO_PARSER_ESCAPED_QUESTION) { -+ if (t == PDO_PARSER_ESCAPED_QUESTION && stmt->supports_placeholders == PDO_PLACEHOLDER_POSITIONAL) { -+ /* escaped question marks unsupported, treat as text */ -+ continue; -+ } -+ -+ if (t == PDO_PARSER_BIND) { -+ ptrdiff_t len = s.cur - s.tok; -+ if ((ZSTR_VAL(inquery) < (s.cur - len)) && isalnum(*(s.cur - len - 1))) { -+ continue; -+ } -+ query_type |= PDO_PLACEHOLDER_NAMED; -+ } else if (t == PDO_PARSER_BIND_POS) { -+ query_type |= PDO_PLACEHOLDER_POSITIONAL; -+ } -+ -+placeholder: -+ plc = emalloc(sizeof(*plc)); -+ memset(plc, 0, sizeof(*plc)); -+ plc->next = NULL; -+ plc->pos = s.tok; -+ plc->len = s.cur - s.tok; -+ -+ if (t == PDO_PARSER_ESCAPED_QUESTION) { -+ plc->bindno = PDO_PARSER_BINDNO_ESCAPED_CHAR; -+ plc->quoted = ZSTR_CHAR('?'); -+ escapes++; -+ } else { -+ plc->bindno = bindno++; -+ } -+ -+ if (placetail) { -+ placetail->next = plc; -+ } else { -+ placeholders = plc; -+ } -+ placetail = plc; -+ } -+ } -+ -+ /* did the query make sense to me? */ -+ if (query_type == (PDO_PLACEHOLDER_NAMED|PDO_PLACEHOLDER_POSITIONAL)) { -+ /* they mixed both types; punt */ -+ pdo_raise_impl_error(stmt->dbh, stmt, "HY093", "mixed named and positional parameters"); -+ ret = -1; -+ goto clean_up; -+ } -+ -+ params = stmt->bound_params; -+ if (stmt->supports_placeholders == PDO_PLACEHOLDER_NONE && params && bindno != zend_hash_num_elements(params)) { -+ /* extra bit of validation for instances when same params are bound more than once */ -+ if (query_type != PDO_PLACEHOLDER_POSITIONAL && bindno > zend_hash_num_elements(params)) { -+ int ok = 1; -+ for (plc = placeholders; plc; plc = plc->next) { -+ if ((param = zend_hash_str_find_ptr(params, plc->pos, plc->len)) == NULL) { -+ ok = 0; -+ break; -+ } -+ } -+ if (ok) { -+ goto safe; -+ } -+ } -+ pdo_raise_impl_error(stmt->dbh, stmt, "HY093", "number of bound variables does not match number of tokens"); -+ ret = -1; -+ goto clean_up; -+ } -+ -+ if (!placeholders) { -+ /* nothing to do; good! */ -+ return 0; -+ } -+ -+ if (stmt->supports_placeholders == query_type && !stmt->named_rewrite_template) { -+ /* query matches native syntax */ -+ if (escapes) { -+ newbuffer_len = ZSTR_LEN(inquery); -+ goto rewrite; -+ } -+ -+ ret = 0; -+ goto clean_up; -+ } -+ -+ if (query_type == PDO_PLACEHOLDER_NAMED && stmt->named_rewrite_template) { -+ /* magic/hack. -+ * We we pretend that the query was positional even if -+ * it was named so that we fall into the -+ * named rewrite case below. Not too pretty, -+ * but it works. */ -+ query_type = PDO_PLACEHOLDER_POSITIONAL; -+ } -+ -+safe: -+ /* what are we going to do ? */ -+ if (stmt->supports_placeholders == PDO_PLACEHOLDER_NONE) { -+ /* query generation */ -+ -+ newbuffer_len = ZSTR_LEN(inquery); -+ -+ /* let's quote all the values */ -+ for (plc = placeholders; plc && params; plc = plc->next) { -+ if (plc->bindno == PDO_PARSER_BINDNO_ESCAPED_CHAR) { -+ /* escaped character */ -+ continue; -+ } -+ -+ if (query_type == PDO_PLACEHOLDER_NONE) { -+ continue; -+ } -+ -+ if (query_type == PDO_PLACEHOLDER_POSITIONAL) { -+ param = zend_hash_index_find_ptr(params, plc->bindno); -+ } else { -+ param = zend_hash_str_find_ptr(params, plc->pos, plc->len); -+ } -+ if (param == NULL) { -+ /* parameter was not defined */ -+ ret = -1; -+ pdo_raise_impl_error(stmt->dbh, stmt, "HY093", "parameter was not defined"); -+ goto clean_up; -+ } -+ if (stmt->dbh->methods->quoter) { -+ zval *parameter; -+ if (Z_ISREF(param->parameter)) { -+ parameter = Z_REFVAL(param->parameter); -+ } else { -+ parameter = ¶m->parameter; -+ } -+ if (param->param_type == PDO_PARAM_LOB && Z_TYPE_P(parameter) == IS_RESOURCE) { -+ php_stream *stm; -+ -+ php_stream_from_zval_no_verify(stm, parameter); -+ if (stm) { -+ zend_string *buf; -+ -+ buf = php_stream_copy_to_mem(stm, PHP_STREAM_COPY_ALL, 0); -+ if (!buf) { -+ buf = ZSTR_EMPTY_ALLOC(); -+ } -+ -+ plc->quoted = stmt->dbh->methods->quoter(stmt->dbh, buf, param->param_type); -+ -+ if (buf) { -+ zend_string_release_ex(buf, 0); -+ } -+ if (plc->quoted == NULL) { -+ /* bork */ -+ ret = -1; -+ strncpy(stmt->error_code, stmt->dbh->error_code, 6); -+ goto clean_up; -+ } -+ -+ } else { -+ pdo_raise_impl_error(stmt->dbh, stmt, "HY105", "Expected a stream resource"); -+ ret = -1; -+ goto clean_up; -+ } -+ } else { -+ enum pdo_param_type param_type = param->param_type; -+ zend_string *buf = NULL; -+ -+ /* assume all types are nullable */ -+ if (Z_TYPE_P(parameter) == IS_NULL) { -+ param_type = PDO_PARAM_NULL; -+ } -+ -+ switch (param_type) { -+ case PDO_PARAM_BOOL: -+ plc->quoted = zend_is_true(parameter) ? ZSTR_CHAR('1') : ZSTR_CHAR('0'); -+ break; -+ -+ case PDO_PARAM_INT: -+ plc->quoted = zend_long_to_str(zval_get_long(parameter)); -+ break; -+ -+ case PDO_PARAM_NULL: -+ plc->quoted = ZSTR_KNOWN(ZEND_STR_NULL); -+ break; -+ -+ default: { -+ buf = zval_try_get_string(parameter); -+ /* parameter does not have a string representation, buf == NULL */ -+ if (EG(exception)) { -+ /* bork */ -+ ret = -1; -+ strncpy(stmt->error_code, stmt->dbh->error_code, 6); -+ goto clean_up; -+ } -+ -+ plc->quoted = stmt->dbh->methods->quoter(stmt->dbh, buf, param_type); -+ } -+ } -+ -+ if (buf) { -+ zend_string_release_ex(buf, 0); -+ } -+ } -+ } else { -+ zval *parameter; -+ if (Z_ISREF(param->parameter)) { -+ parameter = Z_REFVAL(param->parameter); -+ } else { -+ parameter = ¶m->parameter; -+ } -+ plc->quoted = zend_string_copy(Z_STR_P(parameter)); -+ } -+ newbuffer_len += ZSTR_LEN(plc->quoted); -+ } -+ -+rewrite: -+ /* allocate output buffer */ -+ *outquery = zend_string_alloc(newbuffer_len, 0); -+ newbuffer = ZSTR_VAL(*outquery); -+ -+ /* and build the query */ -+ const char *ptr = ZSTR_VAL(inquery); -+ plc = placeholders; -+ -+ do { -+ t = plc->pos - ptr; -+ if (t) { -+ memcpy(newbuffer, ptr, t); -+ newbuffer += t; -+ } -+ if (plc->quoted) { -+ memcpy(newbuffer, ZSTR_VAL(plc->quoted), ZSTR_LEN(plc->quoted)); -+ newbuffer += ZSTR_LEN(plc->quoted); -+ } else { -+ memcpy(newbuffer, plc->pos, plc->len); -+ newbuffer += plc->len; -+ } -+ ptr = plc->pos + plc->len; -+ -+ plc = plc->next; -+ } while (plc); -+ -+ t = ZSTR_VAL(inquery) + ZSTR_LEN(inquery) - ptr; -+ if (t) { -+ memcpy(newbuffer, ptr, t); -+ newbuffer += t; -+ } -+ *newbuffer = '\0'; -+ ZSTR_LEN(*outquery) = newbuffer - ZSTR_VAL(*outquery); -+ -+ ret = 1; -+ goto clean_up; -+ -+ } else if (query_type == PDO_PLACEHOLDER_POSITIONAL) { -+ /* rewrite ? to :pdoX */ -+ const char *tmpl = stmt->named_rewrite_template ? stmt->named_rewrite_template : ":pdo%d"; -+ int bind_no = 1; -+ -+ newbuffer_len = ZSTR_LEN(inquery); -+ -+ if (stmt->bound_param_map == NULL) { -+ ALLOC_HASHTABLE(stmt->bound_param_map); -+ zend_hash_init(stmt->bound_param_map, 13, NULL, free_param_name, 0); -+ } -+ -+ for (plc = placeholders; plc; plc = plc->next) { -+ int skip_map = 0; -+ zend_string *p; -+ zend_string *idxbuf; -+ -+ if (plc->bindno == PDO_PARSER_BINDNO_ESCAPED_CHAR) { -+ continue; -+ } -+ -+ zend_string *name = zend_string_init(plc->pos, plc->len, 0); -+ -+ /* check if bound parameter is already available */ -+ if (zend_string_equals_literal(name, "?") || (p = zend_hash_find_ptr(stmt->bound_param_map, name)) == NULL) { -+ idxbuf = zend_strpprintf(0, tmpl, bind_no++); -+ } else { -+ idxbuf = zend_string_copy(p); -+ skip_map = 1; -+ } -+ -+ plc->quoted = idxbuf; -+ newbuffer_len += ZSTR_LEN(plc->quoted); -+ -+ if (!skip_map && stmt->named_rewrite_template) { -+ /* create a mapping */ -+ zend_hash_update_ptr(stmt->bound_param_map, name, zend_string_copy(plc->quoted)); -+ } -+ -+ /* map number to name */ -+ zend_hash_index_update_ptr(stmt->bound_param_map, plc->bindno, zend_string_copy(plc->quoted)); -+ -+ zend_string_release(name); -+ } -+ -+ goto rewrite; -+ -+ } else { -+ /* rewrite :name to ? */ -+ -+ newbuffer_len = ZSTR_LEN(inquery); -+ -+ if (stmt->bound_param_map == NULL) { -+ ALLOC_HASHTABLE(stmt->bound_param_map); -+ zend_hash_init(stmt->bound_param_map, 13, NULL, free_param_name, 0); -+ } -+ -+ for (plc = placeholders; plc; plc = plc->next) { -+ zend_string *name = zend_string_init(plc->pos, plc->len, 0); -+ zend_hash_index_update_ptr(stmt->bound_param_map, plc->bindno, name); -+ plc->quoted = ZSTR_CHAR('?'); -+ newbuffer_len -= plc->len - 1; -+ } -+ -+ goto rewrite; -+ } -+ -+clean_up: -+ -+ while (placeholders) { -+ plc = placeholders; -+ placeholders = plc->next; -+ if (plc->quoted) { -+ zend_string_release_ex(plc->quoted, 0); -+ } -+ efree(plc); -+ } -+ -+ return ret; -+} diff --git a/databases/php85-pdo_mysql/files/patch-mysql__sql__parser.c b/databases/php85-pdo_mysql/files/patch-mysql__sql__parser.c deleted file mode 100644 index 9a6c3b11bb6e..000000000000 --- a/databases/php85-pdo_mysql/files/patch-mysql__sql__parser.c +++ /dev/null @@ -1,398 +0,0 @@ ---- mysql_sql_parser.c.orig 2025-07-02 13:18:02 UTC -+++ mysql_sql_parser.c -@@ -0,0 +1,395 @@ -+/* Generated by re2c 3.1 */ -+/* -+ +----------------------------------------------------------------------+ -+ | Copyright (c) The PHP Group | -+ +----------------------------------------------------------------------+ -+ | This source file is subject to version 3.01 of the PHP license, | -+ | that is bundled with this package in the file LICENSE, and is | -+ | available through the world-wide-web at the following url: | -+ | https://www.php.net/license/3_01.txt | -+ | If you did not receive a copy of the PHP license and are unable to | -+ | obtain it through the world-wide-web, please send a note to | -+ | license@php.net so we can mail you a copy immediately. | -+ +----------------------------------------------------------------------+ -+ | Author: Matteo Beccati | -+ +----------------------------------------------------------------------+ -+*/ -+ -+ -+#include "php.h" -+#include "ext/pdo/php_pdo_driver.h" -+#include "ext/pdo/pdo_sql_parser.h" -+ -+int pdo_mysql_scanner(pdo_scanner_t *s) -+{ -+ const char *cursor = s->cur; -+ -+ s->tok = cursor; -+ -+ -+ -+{ -+ YYCTYPE yych; -+ unsigned int yyaccept = 0; -+ if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '"': goto yy4; -+ case '#': goto yy6; -+ case '\'': goto yy7; -+ case '-': goto yy8; -+ case '/': goto yy9; -+ case ':': goto yy10; -+ case '?': goto yy11; -+ case '`': goto yy13; -+ default: goto yy2; -+ } -+yy1: -+ YYCURSOR = YYMARKER; -+ switch (yyaccept) { -+ case 0: goto yy5; -+ case 1: goto yy17; -+ case 2: goto yy24; -+ default: goto yy36; -+ } -+yy2: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: -+ case '"': -+ case '#': -+ case '\'': -+ case '-': -+ case '/': -+ case ':': -+ case '?': -+ case '`': goto yy3; -+ default: goto yy2; -+ } -+yy3: -+ { RET(PDO_PARSER_TEXT); } -+yy4: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych >= 0x01) goto yy15; -+yy5: -+ { SKIP_ONE(PDO_PARSER_TEXT); } -+yy6: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '\n': goto yy5; -+ default: goto yy19; -+ } -+yy7: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x00) goto yy5; -+ goto yy22; -+yy8: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ switch (yych) { -+ case '-': goto yy26; -+ default: goto yy5; -+ } -+yy9: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '*': goto yy27; -+ default: goto yy5; -+ } -+yy10: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '0': -+ case '1': -+ case '2': -+ case '3': -+ case '4': -+ case '5': -+ case '6': -+ case '7': -+ case '8': -+ case '9': -+ case 'A': -+ case 'B': -+ case 'C': -+ case 'D': -+ case 'E': -+ case 'F': -+ case 'G': -+ case 'H': -+ case 'I': -+ case 'J': -+ case 'K': -+ case 'L': -+ case 'M': -+ case 'N': -+ case 'O': -+ case 'P': -+ case 'Q': -+ case 'R': -+ case 'S': -+ case 'T': -+ case 'U': -+ case 'V': -+ case 'W': -+ case 'X': -+ case 'Y': -+ case 'Z': -+ case '_': -+ case 'a': -+ case 'b': -+ case 'c': -+ case 'd': -+ case 'e': -+ case 'f': -+ case 'g': -+ case 'h': -+ case 'i': -+ case 'j': -+ case 'k': -+ case 'l': -+ case 'm': -+ case 'n': -+ case 'o': -+ case 'p': -+ case 'q': -+ case 'r': -+ case 's': -+ case 't': -+ case 'u': -+ case 'v': -+ case 'w': -+ case 'x': -+ case 'y': -+ case 'z': goto yy28; -+ case ':': goto yy30; -+ default: goto yy5; -+ } -+yy11: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '?': goto yy32; -+ default: goto yy12; -+ } -+yy12: -+ { RET(PDO_PARSER_BIND_POS); } -+yy13: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x00) goto yy5; -+ goto yy34; -+yy14: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+yy15: -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '"': goto yy16; -+ case '\\': goto yy18; -+ default: goto yy14; -+ } -+yy16: -+ yyaccept = 1; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '"': goto yy14; -+ default: goto yy17; -+ } -+yy17: -+ { RET(PDO_PARSER_TEXT); } -+yy18: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ if (yych <= 0x00) goto yy1; -+ goto yy14; -+yy19: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '\n': goto yy20; -+ default: goto yy19; -+ } -+yy20: -+ { RET(PDO_PARSER_TEXT); } -+yy21: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+yy22: -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '\'': goto yy23; -+ case '\\': goto yy25; -+ default: goto yy21; -+ } -+yy23: -+ yyaccept = 2; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '\'': goto yy21; -+ default: goto yy24; -+ } -+yy24: -+ { RET(PDO_PARSER_TEXT); } -+yy25: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ if (yych <= 0x00) goto yy1; -+ goto yy21; -+yy26: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '\t': -+ case '\v': -+ case '\f': -+ case '\r': -+ case ' ': goto yy19; -+ default: goto yy1; -+ } -+yy27: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '*': goto yy37; -+ default: goto yy27; -+ } -+yy28: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '0': -+ case '1': -+ case '2': -+ case '3': -+ case '4': -+ case '5': -+ case '6': -+ case '7': -+ case '8': -+ case '9': -+ case 'A': -+ case 'B': -+ case 'C': -+ case 'D': -+ case 'E': -+ case 'F': -+ case 'G': -+ case 'H': -+ case 'I': -+ case 'J': -+ case 'K': -+ case 'L': -+ case 'M': -+ case 'N': -+ case 'O': -+ case 'P': -+ case 'Q': -+ case 'R': -+ case 'S': -+ case 'T': -+ case 'U': -+ case 'V': -+ case 'W': -+ case 'X': -+ case 'Y': -+ case 'Z': -+ case '_': -+ case 'a': -+ case 'b': -+ case 'c': -+ case 'd': -+ case 'e': -+ case 'f': -+ case 'g': -+ case 'h': -+ case 'i': -+ case 'j': -+ case 'k': -+ case 'l': -+ case 'm': -+ case 'n': -+ case 'o': -+ case 'p': -+ case 'q': -+ case 'r': -+ case 's': -+ case 't': -+ case 'u': -+ case 'v': -+ case 'w': -+ case 'x': -+ case 'y': -+ case 'z': goto yy28; -+ default: goto yy29; -+ } -+yy29: -+ { RET(PDO_PARSER_BIND); } -+yy30: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case ':': goto yy30; -+ default: goto yy31; -+ } -+yy31: -+ { RET(PDO_PARSER_TEXT); } -+yy32: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '?': goto yy32; -+ default: goto yy31; -+ } -+yy33: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+yy34: -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '`': goto yy35; -+ default: goto yy33; -+ } -+yy35: -+ yyaccept = 3; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '`': goto yy33; -+ default: goto yy36; -+ } -+yy36: -+ { RET(PDO_PARSER_TEXT); } -+yy37: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '*': goto yy37; -+ case '/': goto yy38; -+ default: goto yy27; -+ } -+yy38: -+ ++YYCURSOR; -+ goto yy20; -+} -+ -+} diff --git a/databases/php85-pdo_pgsql/files/patch-pgsql__sql__parser.c b/databases/php85-pdo_pgsql/files/patch-pgsql__sql__parser.c deleted file mode 100644 index e2f535ec545e..000000000000 --- a/databases/php85-pdo_pgsql/files/patch-pgsql__sql__parser.c +++ /dev/null @@ -1,528 +0,0 @@ ---- pgsql_sql_parser.c.orig 2025-07-02 13:28:41 UTC -+++ pgsql_sql_parser.c -@@ -0,0 +1,525 @@ -+/* Generated by re2c 3.1 */ -+/* -+ +----------------------------------------------------------------------+ -+ | Copyright (c) The PHP Group | -+ +----------------------------------------------------------------------+ -+ | This source file is subject to version 3.01 of the PHP license, | -+ | that is bundled with this package in the file LICENSE, and is | -+ | available through the world-wide-web at the following url: | -+ | https://www.php.net/license/3_01.txt | -+ | If you did not receive a copy of the PHP license and are unable to | -+ | obtain it through the world-wide-web, please send a note to | -+ | license@php.net so we can mail you a copy immediately. | -+ +----------------------------------------------------------------------+ -+ | Author: Matteo Beccati | -+ +----------------------------------------------------------------------+ -+*/ -+ -+ -+#include "php.h" -+#include "ext/pdo/php_pdo_driver.h" -+#include "ext/pdo/pdo_sql_parser.h" -+ -+int pdo_pgsql_scanner(pdo_scanner_t *s) -+{ -+ const char *cursor = s->cur; -+ -+ s->tok = cursor; -+ -+ -+ -+{ -+ YYCTYPE yych; -+ unsigned int yyaccept = 0; -+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '"': goto yy4; -+ case '$': goto yy6; -+ case '\'': goto yy7; -+ case '-': goto yy8; -+ case '/': goto yy9; -+ case ':': goto yy10; -+ case '?': goto yy11; -+ case 'E': -+ case 'e': goto yy13; -+ default: goto yy2; -+ } -+yy1: -+ YYCURSOR = YYMARKER; -+ switch (yyaccept) { -+ case 0: goto yy5; -+ case 1: goto yy17; -+ case 2: goto yy23; -+ default: goto yy35; -+ } -+yy2: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: -+ case '"': -+ case '$': -+ case '\'': -+ case '-': -+ case '/': -+ case ':': -+ case '?': -+ case 'E': -+ case 'e': goto yy3; -+ default: goto yy2; -+ } -+yy3: -+ { RET(PDO_PARSER_TEXT); } -+yy4: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych >= 0x01) goto yy15; -+yy5: -+ { SKIP_ONE(PDO_PARSER_TEXT); } -+yy6: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ switch (yych) { -+ case 0x00: -+ case 0x01: -+ case 0x02: -+ case 0x03: -+ case 0x04: -+ case 0x05: -+ case 0x06: -+ case 0x07: -+ case 0x08: -+ case '\t': -+ case '\n': -+ case '\v': -+ case '\f': -+ case '\r': -+ case 0x0E: -+ case 0x0F: -+ case 0x10: -+ case 0x11: -+ case 0x12: -+ case 0x13: -+ case 0x14: -+ case 0x15: -+ case 0x16: -+ case 0x17: -+ case 0x18: -+ case 0x19: -+ case 0x1A: -+ case 0x1B: -+ case 0x1C: -+ case 0x1D: -+ case 0x1E: -+ case 0x1F: -+ case ' ': -+ case '!': -+ case '"': -+ case '#': -+ case '%': -+ case '&': -+ case '\'': -+ case '(': -+ case ')': -+ case '*': -+ case '+': -+ case ',': -+ case '-': -+ case '.': -+ case '/': -+ case '0': -+ case '1': -+ case '2': -+ case '3': -+ case '4': -+ case '5': -+ case '6': -+ case '7': -+ case '8': -+ case '9': -+ case ':': -+ case ';': -+ case '<': -+ case '=': -+ case '>': -+ case '?': -+ case '@': -+ case '[': -+ case '\\': -+ case ']': -+ case '^': -+ case '`': -+ case '{': -+ case '|': -+ case '}': -+ case '~': -+ case 0x7F: goto yy5; -+ case '$': goto yy18; -+ default: goto yy19; -+ } -+yy7: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x00) goto yy5; -+ goto yy21; -+yy8: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '-': goto yy24; -+ default: goto yy5; -+ } -+yy9: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '*': goto yy26; -+ default: goto yy5; -+ } -+yy10: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '0': -+ case '1': -+ case '2': -+ case '3': -+ case '4': -+ case '5': -+ case '6': -+ case '7': -+ case '8': -+ case '9': -+ case 'A': -+ case 'B': -+ case 'C': -+ case 'D': -+ case 'E': -+ case 'F': -+ case 'G': -+ case 'H': -+ case 'I': -+ case 'J': -+ case 'K': -+ case 'L': -+ case 'M': -+ case 'N': -+ case 'O': -+ case 'P': -+ case 'Q': -+ case 'R': -+ case 'S': -+ case 'T': -+ case 'U': -+ case 'V': -+ case 'W': -+ case 'X': -+ case 'Y': -+ case 'Z': -+ case '_': -+ case 'a': -+ case 'b': -+ case 'c': -+ case 'd': -+ case 'e': -+ case 'f': -+ case 'g': -+ case 'h': -+ case 'i': -+ case 'j': -+ case 'k': -+ case 'l': -+ case 'm': -+ case 'n': -+ case 'o': -+ case 'p': -+ case 'q': -+ case 'r': -+ case 's': -+ case 't': -+ case 'u': -+ case 'v': -+ case 'w': -+ case 'x': -+ case 'y': -+ case 'z': goto yy27; -+ case ':': goto yy29; -+ default: goto yy5; -+ } -+yy11: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '?': goto yy31; -+ default: goto yy12; -+ } -+yy12: -+ { RET(PDO_PARSER_BIND_POS); } -+yy13: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ switch (yych) { -+ case '\'': goto yy32; -+ default: goto yy5; -+ } -+yy14: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+yy15: -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '"': goto yy16; -+ default: goto yy14; -+ } -+yy16: -+ yyaccept = 1; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '"': goto yy14; -+ default: goto yy17; -+ } -+yy17: -+ { RET(PDO_PARSER_TEXT); } -+yy18: -+ ++YYCURSOR; -+ { RET(PDO_PARSER_CUSTOM_QUOTE); } -+yy19: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: -+ case 0x01: -+ case 0x02: -+ case 0x03: -+ case 0x04: -+ case 0x05: -+ case 0x06: -+ case 0x07: -+ case 0x08: -+ case '\t': -+ case '\n': -+ case '\v': -+ case '\f': -+ case '\r': -+ case 0x0E: -+ case 0x0F: -+ case 0x10: -+ case 0x11: -+ case 0x12: -+ case 0x13: -+ case 0x14: -+ case 0x15: -+ case 0x16: -+ case 0x17: -+ case 0x18: -+ case 0x19: -+ case 0x1A: -+ case 0x1B: -+ case 0x1C: -+ case 0x1D: -+ case 0x1E: -+ case 0x1F: -+ case ' ': -+ case '!': -+ case '"': -+ case '#': -+ case '%': -+ case '&': -+ case '\'': -+ case '(': -+ case ')': -+ case '*': -+ case '+': -+ case ',': -+ case '-': -+ case '.': -+ case '/': -+ case ':': -+ case ';': -+ case '<': -+ case '=': -+ case '>': -+ case '?': -+ case '@': -+ case '[': -+ case '\\': -+ case ']': -+ case '^': -+ case '`': -+ case '{': -+ case '|': -+ case '}': -+ case '~': -+ case 0x7F: goto yy1; -+ case '$': goto yy18; -+ default: goto yy19; -+ } -+yy20: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+yy21: -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '\'': goto yy22; -+ default: goto yy20; -+ } -+yy22: -+ yyaccept = 2; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '\'': goto yy20; -+ default: goto yy23; -+ } -+yy23: -+ { RET(PDO_PARSER_TEXT); } -+yy24: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '\n': goto yy25; -+ default: goto yy24; -+ } -+yy25: -+ { RET(PDO_PARSER_TEXT); } -+yy26: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '*': goto yy33; -+ default: goto yy26; -+ } -+yy27: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '0': -+ case '1': -+ case '2': -+ case '3': -+ case '4': -+ case '5': -+ case '6': -+ case '7': -+ case '8': -+ case '9': -+ case 'A': -+ case 'B': -+ case 'C': -+ case 'D': -+ case 'E': -+ case 'F': -+ case 'G': -+ case 'H': -+ case 'I': -+ case 'J': -+ case 'K': -+ case 'L': -+ case 'M': -+ case 'N': -+ case 'O': -+ case 'P': -+ case 'Q': -+ case 'R': -+ case 'S': -+ case 'T': -+ case 'U': -+ case 'V': -+ case 'W': -+ case 'X': -+ case 'Y': -+ case 'Z': -+ case '_': -+ case 'a': -+ case 'b': -+ case 'c': -+ case 'd': -+ case 'e': -+ case 'f': -+ case 'g': -+ case 'h': -+ case 'i': -+ case 'j': -+ case 'k': -+ case 'l': -+ case 'm': -+ case 'n': -+ case 'o': -+ case 'p': -+ case 'q': -+ case 'r': -+ case 's': -+ case 't': -+ case 'u': -+ case 'v': -+ case 'w': -+ case 'x': -+ case 'y': -+ case 'z': goto yy27; -+ default: goto yy28; -+ } -+yy28: -+ { RET(PDO_PARSER_BIND); } -+yy29: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case ':': goto yy29; -+ default: goto yy30; -+ } -+yy30: -+ { RET(PDO_PARSER_TEXT); } -+yy31: -+ ++YYCURSOR; -+ { RET(PDO_PARSER_ESCAPED_QUESTION); } -+yy32: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '\'': goto yy34; -+ case '\\': goto yy36; -+ default: goto yy32; -+ } -+yy33: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '*': goto yy33; -+ case '/': goto yy37; -+ default: goto yy26; -+ } -+yy34: -+ yyaccept = 3; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '\'': goto yy32; -+ default: goto yy35; -+ } -+yy35: -+ { RET(PDO_PARSER_TEXT); } -+yy36: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ if (yych <= 0x00) goto yy1; -+ goto yy32; -+yy37: -+ ++YYCURSOR; -+ goto yy25; -+} -+ -+} diff --git a/databases/php85-pdo_sqlite/files/patch-sqlite__sql__parser.c b/databases/php85-pdo_sqlite/files/patch-sqlite__sql__parser.c deleted file mode 100644 index 5770c5cf3f7f..000000000000 --- a/databases/php85-pdo_sqlite/files/patch-sqlite__sql__parser.c +++ /dev/null @@ -1,398 +0,0 @@ ---- sqlite_sql_parser.c.orig 2025-07-02 13:27:28 UTC -+++ sqlite_sql_parser.c -@@ -0,0 +1,395 @@ -+/* Generated by re2c 3.1 */ -+/* -+ +----------------------------------------------------------------------+ -+ | Copyright (c) The PHP Group | -+ +----------------------------------------------------------------------+ -+ | This source file is subject to version 3.01 of the PHP license, | -+ | that is bundled with this package in the file LICENSE, and is | -+ | available through the world-wide-web at the following url: | -+ | https://www.php.net/license/3_01.txt | -+ | If you did not receive a copy of the PHP license and are unable to | -+ | obtain it through the world-wide-web, please send a note to | -+ | license@php.net so we can mail you a copy immediately. | -+ +----------------------------------------------------------------------+ -+ | Author: Matteo Beccati | -+ +----------------------------------------------------------------------+ -+*/ -+ -+ -+#include "php.h" -+#include "ext/pdo/php_pdo_driver.h" -+#include "ext/pdo/pdo_sql_parser.h" -+ -+int pdo_sqlite_scanner(pdo_scanner_t *s) -+{ -+ const char *cursor = s->cur; -+ -+ s->tok = cursor; -+ -+ -+ -+{ -+ YYCTYPE yych; -+ unsigned int yyaccept = 0; -+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '"': goto yy4; -+ case '\'': goto yy6; -+ case '-': goto yy7; -+ case '/': goto yy8; -+ case ':': goto yy9; -+ case '?': goto yy10; -+ case '[': goto yy12; -+ case '`': goto yy13; -+ default: goto yy2; -+ } -+yy1: -+ YYCURSOR = YYMARKER; -+ switch (yyaccept) { -+ case 0: goto yy5; -+ case 1: goto yy17; -+ case 2: goto yy21; -+ case 3: goto yy33; -+ default: goto yy37; -+ } -+yy2: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: -+ case '"': -+ case '\'': -+ case '-': -+ case '/': -+ case ':': -+ case '?': -+ case '[': -+ case '`': goto yy3; -+ default: goto yy2; -+ } -+yy3: -+ { RET(PDO_PARSER_TEXT); } -+yy4: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych >= 0x01) goto yy15; -+yy5: -+ { SKIP_ONE(PDO_PARSER_TEXT); } -+yy6: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x00) goto yy5; -+ goto yy19; -+yy7: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '-': goto yy22; -+ default: goto yy5; -+ } -+yy8: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '*': goto yy24; -+ default: goto yy5; -+ } -+yy9: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '0': -+ case '1': -+ case '2': -+ case '3': -+ case '4': -+ case '5': -+ case '6': -+ case '7': -+ case '8': -+ case '9': -+ case 'A': -+ case 'B': -+ case 'C': -+ case 'D': -+ case 'E': -+ case 'F': -+ case 'G': -+ case 'H': -+ case 'I': -+ case 'J': -+ case 'K': -+ case 'L': -+ case 'M': -+ case 'N': -+ case 'O': -+ case 'P': -+ case 'Q': -+ case 'R': -+ case 'S': -+ case 'T': -+ case 'U': -+ case 'V': -+ case 'W': -+ case 'X': -+ case 'Y': -+ case 'Z': -+ case '_': -+ case 'a': -+ case 'b': -+ case 'c': -+ case 'd': -+ case 'e': -+ case 'f': -+ case 'g': -+ case 'h': -+ case 'i': -+ case 'j': -+ case 'k': -+ case 'l': -+ case 'm': -+ case 'n': -+ case 'o': -+ case 'p': -+ case 'q': -+ case 'r': -+ case 's': -+ case 't': -+ case 'u': -+ case 'v': -+ case 'w': -+ case 'x': -+ case 'y': -+ case 'z': goto yy25; -+ case ':': goto yy27; -+ default: goto yy5; -+ } -+yy10: -+ yych = *++YYCURSOR; -+ switch (yych) { -+ case '?': goto yy29; -+ default: goto yy11; -+ } -+yy11: -+ { RET(PDO_PARSER_BIND_POS); } -+yy12: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x00) goto yy5; -+ goto yy31; -+yy13: -+ yyaccept = 0; -+ yych = *(YYMARKER = ++YYCURSOR); -+ if (yych <= 0x00) goto yy5; -+ goto yy35; -+yy14: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+yy15: -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '"': goto yy16; -+ default: goto yy14; -+ } -+yy16: -+ yyaccept = 1; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: goto yy17; -+ case '"': goto yy16; -+ default: goto yy14; -+ } -+yy17: -+ { RET(PDO_PARSER_TEXT); } -+yy18: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+yy19: -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '\'': goto yy20; -+ default: goto yy18; -+ } -+yy20: -+ yyaccept = 2; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: goto yy21; -+ case '\'': goto yy20; -+ default: goto yy18; -+ } -+yy21: -+ { RET(PDO_PARSER_TEXT); } -+yy22: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '\n': goto yy23; -+ default: goto yy22; -+ } -+yy23: -+ { RET(PDO_PARSER_TEXT); } -+yy24: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '*': goto yy38; -+ default: goto yy24; -+ } -+yy25: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '0': -+ case '1': -+ case '2': -+ case '3': -+ case '4': -+ case '5': -+ case '6': -+ case '7': -+ case '8': -+ case '9': -+ case 'A': -+ case 'B': -+ case 'C': -+ case 'D': -+ case 'E': -+ case 'F': -+ case 'G': -+ case 'H': -+ case 'I': -+ case 'J': -+ case 'K': -+ case 'L': -+ case 'M': -+ case 'N': -+ case 'O': -+ case 'P': -+ case 'Q': -+ case 'R': -+ case 'S': -+ case 'T': -+ case 'U': -+ case 'V': -+ case 'W': -+ case 'X': -+ case 'Y': -+ case 'Z': -+ case '_': -+ case 'a': -+ case 'b': -+ case 'c': -+ case 'd': -+ case 'e': -+ case 'f': -+ case 'g': -+ case 'h': -+ case 'i': -+ case 'j': -+ case 'k': -+ case 'l': -+ case 'm': -+ case 'n': -+ case 'o': -+ case 'p': -+ case 'q': -+ case 'r': -+ case 's': -+ case 't': -+ case 'u': -+ case 'v': -+ case 'w': -+ case 'x': -+ case 'y': -+ case 'z': goto yy25; -+ default: goto yy26; -+ } -+yy26: -+ { RET(PDO_PARSER_BIND); } -+yy27: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case ':': goto yy27; -+ default: goto yy28; -+ } -+yy28: -+ { RET(PDO_PARSER_TEXT); } -+yy29: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '?': goto yy29; -+ default: goto yy28; -+ } -+yy30: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+yy31: -+ switch (yych) { -+ case 0x00: goto yy1; -+ case ']': goto yy32; -+ default: goto yy30; -+ } -+yy32: -+ yyaccept = 3; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: goto yy33; -+ case ']': goto yy32; -+ default: goto yy30; -+ } -+yy33: -+ { RET(PDO_PARSER_TEXT); } -+yy34: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+yy35: -+ switch (yych) { -+ case 0x00: goto yy1; -+ case '`': goto yy36; -+ default: goto yy34; -+ } -+yy36: -+ yyaccept = 4; -+ YYMARKER = ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case 0x00: goto yy37; -+ case '`': goto yy36; -+ default: goto yy34; -+ } -+yy37: -+ { RET(PDO_PARSER_TEXT); } -+yy38: -+ ++YYCURSOR; -+ if (YYLIMIT <= YYCURSOR) YYFILL(1); -+ yych = *YYCURSOR; -+ switch (yych) { -+ case '*': goto yy38; -+ case '/': goto yy39; -+ default: goto yy24; -+ } -+yy39: -+ ++YYCURSOR; -+ goto yy23; -+} -+ -+} diff --git a/lang/php85/Makefile b/lang/php85/Makefile index a2789381c584..4cd024aca5ea 100644 --- a/lang/php85/Makefile +++ b/lang/php85/Makefile @@ -1,608 +1,606 @@ PORTNAME= php85 -DISTVERSION= 8.5.0alpha4 +DISTVERSION= 8.5.0beta1 PORTREVISION?= 0 CATEGORIES?= lang devel www -MASTER_SITES= LOCAL/bofh/lang/${PORTNAME} +MASTER_SITES= https://downloads.php.net/~edorian/ DISTNAME= php-${DISTVERSION} MAINTAINER= bofh@FreeBSD.org COMMENT= PHP Scripting Language (8.5.X branch) WWW= https://www.php.net/ LICENSE= PHP301 USES+= compiler:c11 cpe gnome localbase pkgconfig #tar:xz CPE_PRODUCT= php PHP_VER= 85 -PHP_WRKSRC= php-src-php-${DISTVERSION} -WRKSRC= ${WRKDIR}/${PHP_WRKSRC} CONFLICTS_INSTALL?= php[0-9][0-9]${PKGNAMESUFFIX} .if !defined(PKGNAMESUFFIX) LIB_DEPENDS= libargon2.so:security/libargon2 \ libcapstone.so:devel/capstone \ libpcre2-8.so:devel/pcre2 GNU_CONFIGURE= yes CONFIGURE_ARGS+= \ --disable-all \ --program-prefix="" \ --with-config-file-scan-dir=${PREFIX}/etc/php \ --with-layout=GNU \ --with-libxml \ --with-openssl \ --with-password-argon2=${LOCALBASE} USES+= autoreconf:build bison ssl USE_GNOME= libxml2 LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl # PR230207 Allow relocations against read-only segments (override lld default) LDFLAGS_i386= -Wl,-z,notext OPTIONS_DEFINE+=CGI CLI DEBUG DTRACE EMBED FPM IPV6 LINKTHR \ MYSQLND NOASLR PCRE PHPDBG ZTS OPTIONS_DEFAULT= CGI CLI DTRACE EMBED FPM LINKTHR MYSQLND PCRE OPTIONS_EXCLUDE_DragonFly= DTRACE # ld(1) fails to link probes: Relocations in generic ELF (EM: 0) OPTIONS_EXCLUDE_aarch64= DTRACE # dt_modtext:opensolaris/ib/libdtrace/common/dt_link.c: arm not impemented OPTIONS_EXCLUDE_armv6= DTRACE OPTIONS_EXCLUDE_armv7= DTRACE # Bug 197128: No ASM code for MIPS/MIPS64, disable FPM OPTIONS_EXCLUDE_mips= DTRACE FPM OPTIONS_EXCLUDE_mips64= DTRACE FPM OPTIONS_EXCLUDE_riscv64= DTRACE NO_OPTIONS_SORT= yes OPTIONS_SUB= yes CGI_DESC= Build CGI version CLI_DESC= Build CLI version EMBED_DESC= Build embedded library FPM_DESC= Build FPM version LINKTHR_DESC= Link thread lib (for threaded extensions) MYSQLND_DESC= Build with MySQL Native Driver PCRE_DESC= Use system pcre instead of bundled one PHPDBG_DESC= Interactive PHP debugger ZTS_DESC= Force Zend Thread Safety (ZTS) build CGI_CONFIGURE_OFF= --disable-cgi CGI_VARS= PHP_SAPI+=cgi CLI_CONFIGURE_OFF= --disable-cli CLI_VARS= PHP_SAPI+=cli DEBUG_CONFIGURE_ON= --enable-debug DTRACE_CONFIGURE_ON= --enable-dtrace EMBED_CONFIGURE_ON= --enable-embed EMBED_VARS= PHP_SAPI+=embed FPM_CONFIGURE_ON= --enable-fpm \ --with-fpm-group=${WWWGRP} \ --with-fpm-user=${WWWOWN} FPM_VARS= PHP_SAPI+=fpm \ USE_RC_SUBR+=php_fpm IPV6_CONFIGURE_OFF= --disable-ipv6 LINKTHR_LIBS= -lpthread NOASLR_USES= elfctl MYSQLND_CONFIGURE_ON= --enable-mysqlnd PCRE_BUILD_DEPENDS= re2c>0:devel/re2c PCRE_CONFIGURE_ON= --with-external-pcre=${LOCALBASE} PCRE_PLIST_SUB= BUNDLED_PCRE="@comment " PCRE_PLIST_SUB_OFF= BUNDLED_PCRE="" PHPDBG_CONFIGURE_ON= --enable-phpdbg PHPDBG_VARS= PHP_SAPI+=phpdbg ZTS_CONFIGURE_ON= --enable-zts ZTS_CONFIGURE_ENV= pthreads_working="yes" DESTDIRNAME= INSTALL_ROOT . if defined(PKGNAMEPREFIX) USES+= apache PLIST= ${PKGDIR}/pkg-plist.mod PKGMESSAGE= ${PKGDIR}/pkg-message.mod MODULENAME= libphp SHORTMODNAME= php WARNING= "!!! If you have a threaded Apache, you must build ${PHP_PORT} with ZTS support to enable thread-safety in extensions !!!" WARNING+= "!!! Consider switching to php-fpm and mod_proxy_fcgi as per Apache httpd recommendations !!!" . endif .include . if ${PORT_OPTIONS:MNOASLR} . if ${PORT_OPTIONS:MCLI} ELF_FEATURES+=+noaslr:sapi/cli/php . endif . if ${PORT_OPTIONS:MCGI} ELF_FEATURES+=+noaslr:sapi/cgi/php-cgi . endif . if ${PORT_OPTIONS:MPHPDBG} ELF_FEATURES+=+noaslr:sapi/phpdbg/phpdbg . endif . if ${PORT_OPTIONS:MFPM} ELF_FEATURES+=+noaslr:sapi/fpm/php-fpm . endif . endif .include . if ${ARCH} == riscv64 CONFIGURE_ARGS+= --without-pcre-jit . endif . if ${PORT_OPTIONS:MPHPDBG} && ${PORT_OPTIONS:MDEBUG} CONFIGURE_ARGS+= --enable-phpdbg-debug . endif . if ${PORT_OPTIONS:MCLI} || ${PORT_OPTIONS:MEMBED} PLIST_SUB+= SAPI_INC="" . else PLIST_SUB+= SAPI_INC="@comment " . endif CONFIGURE_ENV+= ac_cv_decimal_fp_supported="no" \ lt_cv_path_SED="sed" \ OPENSSL_CFLAGS="-I${OPENSSLINC}" \ OPENSSL_LIBS="-L${OPENSSLLIB} -lssl -lcrypto" \ PHP_OPENSSL=yes post-patch: @${TOUCH} ${WRKSRC}/ext/php_config.h post-patch-FPM-on: @${REINPLACE_CMD} -e "s|^;\(pid\)|\1|;s|^;\(pm\.[a-z_]*_servers\)|\1|" \ ${WRKSRC}/sapi/fpm/php-fpm.conf.in pre-configure: @(cd ${WRKSRC} && ${SETENV} MAKE=${MAKE_CMD} ./buildconf --force) . if !defined(PKGNAMEPREFIX) post-build: @${ECHO_CMD} "PHP_VER=${PHP_VER}" > ${WRKDIR}/php.conf @${ECHO_CMD} "PHP_VERSION=${PORTVERSION}" >> ${WRKDIR}/php.conf @${ECHO_CMD} "PHP_SAPI=${PHP_SAPI}" >> ${WRKDIR}/php.conf @${ECHO_CMD} -n "PHP_EXT_DIR=" >> ${WRKDIR}/php.conf @${SH} ${WRKSRC}/scripts/php-config --extension-dir | ${SED} -ne 's,^${PREFIX}/lib/php/,,p' >> ${WRKDIR}/php.conf @${ECHO_CMD} "PHP_EXT_INC=hash json opcache openssl pcre random spl" >> ${WRKDIR}/php.conf test: build @(cd ${WRKSRC} && ${MAKE} test) post-install: ${INSTALL_DATA} ${WRKSRC}/php.ini-development ${WRKSRC}/php.ini-production \ ${WRKDIR}/php.conf ${STAGEDIR}/${PREFIX}/etc ${INSTALL_DATA} ${WRKSRC}/Zend/zend_property_hooks.h ${STAGEDIR}${PREFIX}/include/php/Zend ${INSTALL_DATA} ${WRKSRC}/Zend/zend_lazy_objects.h ${STAGEDIR}${PREFIX}/include/php/Zend (cd ${WRKSRC}/ext/lexbor && \ ${COPYTREE_SHARE} lexbor ${STAGEDIR}${PREFIX}/include/php/ext "-name *\.h") post-install-CGI-on: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/php-cgi post-install-CLI-on: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/php post-install-EMBED-on: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libphp.so post-install-FPM-on: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/sbin/php-fpm post-install-PHPDBG-on: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/phpdbg . else do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/${APACHEMODDIR} ${INSTALL_LIB} ${WRKSRC}/libs/${MODULENAME}.so \ ${STAGEDIR}${PREFIX}/${APACHEMODDIR} . endif .else COMMENT= The ${PHP_MODNAME} shared extension for php USES+= php:ext,noflavors PHP_MODNAME= ${PKGNAMESUFFIX:S/-//} PHP_VER= 85 IGNORE_WITH_PHP= 81 82 83 84 -EXTSUBDIR= ${PHP_WRKSRC}/ext/${PHP_MODNAME} +EXTSUBDIR= ${DISTNAME}/ext/${PHP_MODNAME} WRKSRC= ${WRKDIR}/${EXTSUBDIR} PATCHDIR= ${.CURDIR}/files PLIST= ${NONEXISTENT} EXTRACT_AFTER_ARGS?= ${EXTSUBDIR} TEST_TARGET= test . if ${PHP_MODNAME} == "bcmath" CONFIGURE_ARGS+= --enable-bcmath PHP_HEADER_DIRS= libbcmath/src . endif . if ${PHP_MODNAME} == "bz2" CONFIGURE_ARGS+= --with-bz2=/usr . endif . if ${PHP_MODNAME} == "calendar" CONFIGURE_ARGS+= --enable-calendar . endif . if ${PHP_MODNAME} == "ctype" CONFIGURE_ARGS+= --enable-ctype . endif . if ${PHP_MODNAME} == "curl" LIB_DEPENDS+= libcurl.so:ftp/curl CONFIGURE_ARGS+= --with-curl=${LOCALBASE} USES+= pkgconfig . endif . if ${PHP_MODNAME} == "dba" CONFIGURE_ARGS+= --enable-dba OPTIONS_DEFINE= CDB DB4 FLATFILE GDBM INIFILE LMDB QDBM TOKYO OPTIONS_DEFAULT= CDB FLATFILE INIFILE CDB_DESC= cdb database support DB4_DESC= Berkeley DB4 support FLATFILE_DESC= flatfile support GDBM_DESC= GDBM database support INIFILE_DESC= INI file support LMDB_DESC= LMDB database support QDBM_DESC= QDBM database support TOKYO_DESC= Tokyo Cabinet database support CDB_CONFIGURE_OFF= --without-cdb DB4_CONFIGURE_ON= --with-db4=${LOCALBASE} DB4_USES= bdb DB4_VARS= WITH_BDB_HIGHEST=yes FLATFILE_CONFIGURE_ON= --disable-flatfile GDBM_LIB_DEPENDS= libgdbm.so:databases/gdbm GDBM_CONFIGURE_ARGS= --with-gdbm=${LOCALBASE} INIFILE_CONFIGURE_OFF= --disable-inifile LMDB_LIB_DEPENDS= liblmdb.so:databases/lmdb LMDB_CONFIGURE_ARGS= --with-lmdb=${LOCALBASE} QDBM_LIB_DEPENDS= libqdbm.so:databases/qdbm QDBM_CONFIGURE_ARGS= --with-qdbm=${LOCALBASE} TOKYO_LIB_DEPENDS= libtokyocabinet.so:databases/tokyocabinet TOKYO_CONFIGURE_ON= --with-tcadb=${LOCALBASE} PHP_HEADER_DIRS= libcdb libflatfile libinifile . endif . if ${PHP_MODNAME} == "dom" CONFIGURE_ARGS+= --enable-dom USES+= pkgconfig USE_GNOME= libxml2 . endif . if ${PHP_MODNAME} == "enchant" LIB_DEPENDS+= libenchant-2.so:textproc/enchant2 CONFIGURE_ARGS+=--with-enchant=${LOCALBASE} USES+= pkgconfig . endif . if ${PHP_MODNAME} == "exif" CONFIGURE_ARGS+= --enable-exif . endif . if ${PHP_MODNAME} == "ffi" LIB_DEPENDS= libffi.so:devel/libffi CONFIGURE_ARGS+= --with-ffi . endif . if ${PHP_MODNAME} == "fileinfo" CONFIGURE_ARGS+= --enable-fileinfo PHP_HEADER_DIRS= libmagic . endif . if ${PHP_MODNAME} == "filter" CONFIGURE_ARGS+= --enable-filter . endif . if ${PHP_MODNAME} == "ftp" CONFIGURE_ARGS+= --enable-ftp CONFIGURE_ENV+= OPENSSL_CFLAGS="-I${OPENSSLINC}" \ OPENSSL_LIBS="-L${OPENSSLLIB} -lssl -lcrypto" \ PHP_OPENSSL=yes LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl USES+= pkgconfig ssl . endif . if ${PHP_MODNAME} == "gd" LIB_DEPENDS= libfreetype.so:print/freetype2 \ libgd.so:graphics/gd \ libpng.so:graphics/png USES+= jpeg CONFIGURE_ARGS+= --enable-gd \ --with-external-gd EXTRACT_AFTER_ARGS= --no-same-owner --no-same-permissions --exclude libgd \ - ${PHP_WRKSRC}/ext/gd + php-${DISTVERSION}/ext/gd OPTIONS_DEFINE= JIS WEBP X11 JIS_DESC= Enable JIS-mapped Japanese font support WEBP_DESC= Enable WebP image format support X11_DESC= Enable XPM support JIS_CONFIGURE_ON= --enable-gd-jis-conv WEBP_CONFIGURE_ON= --with-webp WEBP_LIB_DEPENDS= libwebp.so:graphics/webp X11_CONFIGURE_ON= --with-xpm X11_USE= XORG=xpm X11_USES= xorg . endif . if ${PHP_MODNAME} == "gettext" CONFIGURE_ARGS+= --with-gettext=${LOCALBASE} USES+= gettext . endif . if ${PHP_MODNAME} == "gmp" LIB_DEPENDS+= libgmp.so:math/gmp CONFIGURE_ARGS+= --with-gmp=${LOCALBASE} . endif . if ${PHP_MODNAME} == "iconv" CONFIGURE_ARGS+= --with-iconv=${LOCALBASE} USES+= iconv:translit . endif . if ${PHP_MODNAME} == "intl" LIB_DEPENDS= libicui18n.so:devel/icu USES+= pkgconfig CPPFLAGS+= -DU_USING_ICU_NAMESPACE=1 . endif . if ${PHP_MODNAME} == "ldap" LIB_DEPENDS+=libsasl2.so:security/cyrus-sasl2 CONFIGURE_ARGS+=--with-ldap=${LOCALBASE} --with-ldap-sasl=${LOCALBASE} USES+= ldap . endif . if ${PHP_MODNAME} == "mbstring" CONFIGURE_ARGS+= --enable-mbstring OPTIONS_DEFINE= REGEX OPTIONS_DEFAULT= REGEX REGEX_DESC= Enable multibyte regex support REGEX_LIB_DEPENDS= libonig.so:devel/oniguruma REGEX_CONFIGURE_OFF= --disable-mbregex PHP_HEADER_DIRS= libmbfl libmbfl/filters libmbfl/mbfl libmbfl/nls . endif . if ${PHP_MODNAME} == "mysqli" CONFIGURE_ARGS+= --with-mysqli . endif . if ${PHP_MODNAME} == "odbc" LIB_DEPENDS+= libodbc.so:databases/unixODBC CONFIGURE_ARGS+= --with-unixODBC=${LOCALBASE} . endif . if ${PHP_MODNAME} == "pcntl" CONFIGURE_ARGS+= --enable-pcntl . endif . if ${PHP_MODNAME} == "pdo" CONFIGURE_ARGS+= --enable-pdo . endif . if ${PHP_MODNAME} == "pdo_dblib" CONFIGURE_ARGS+= --with-pdo-dblib=${LOCALBASE} USE_PHP= pdo:build OPTIONS_DEFINE= MSSQL MSSQL_DESC= Enable Microsoft SQL Server support MSSQL_LIB_DEPENDS= libsybdb.so:databases/freetds MSSQL_LIB_DEPENDS_OFF= libct.so:databases/freetds . endif . if ${PHP_MODNAME} == "pdo_firebird" CONFIGURE_ARGS+= --with-pdo-firebird=${LOCALBASE} USES+= firebird USE_PHP= pdo:build . endif . if ${PHP_MODNAME} == "pdo_odbc" LIB_DEPENDS+= libodbc.so:databases/unixODBC CONFIGURE_ARGS+= --with-pdo-odbc=unixODBC,${LOCALBASE} USE_PHP= pdo:build . endif . if ${PHP_MODNAME} == "pdo_mysql" OPTIONS_DEFINE= MYSQLND OPTIONS_DEFAULT= MYSQLND MYSQLND_DESC= Use MySQL Native Driver MYSQLND_CONFIGURE_ON= --with-pdo-mysql=mysqlnd MYSQLND_CONFIGURE_OFF= --with-pdo-mysql=${LOCALBASE} \ --with-zlib-dir=/usr MYSQLND_USES_OFF= mysql USE_PHP= pdo:build . endif . if ${PHP_MODNAME} == "pdo_pgsql" USES+= pgsql CONFIGURE_ARGS+= --with-pdo-pgsql=${LOCALBASE} USE_PHP= pdo:build . endif . if ${PHP_MODNAME} == "pdo_sqlite" USES+= localbase sqlite CONFIGURE_ARGS+= --with-pdo-sqlite=${LOCALBASE} USE_PHP= pdo:build . endif . if ${PHP_MODNAME} == "pgsql" USES+= pgsql CONFIGURE_ARGS+= --with-pgsql=${LOCALBASE} . endif . if ${PHP_MODNAME} == "phar" CONFIGURE_ARGS+= --enable-phar . endif . if ${PHP_MODNAME} == "posix" CONFIGURE_ARGS+= --enable-posix . endif . if ${PHP_MODNAME} == "readline" CONFIGURE_ARGS+=--with-libedit USES+= libedit . endif . if ${PHP_MODNAME} == "session" CONFIGURE_ARGS+= --enable-session PHP_MOD_PRIO= 18 . endif . if ${PHP_MODNAME} == "shmop" CONFIGURE_ARGS+= --enable-shmop . endif . if ${PHP_MODNAME} == "simplexml" CONFIGURE_ARGS+= --enable-simplexml USES+= pkgconfig USE_GNOME= libxml2 . endif . if ${PHP_MODNAME} == "snmp" CONFIGURE_ARGS+= --with-snmp=${LOCALBASE} CONFIGURE_ENV+= ac_cv_buggy_snprint_value="no" LIB_DEPENDS+= libnetsnmp.so:net-mgmt/net-snmp LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl USES+= ssl . endif . if ${PHP_MODNAME} == "soap" CONFIGURE_ARGS+= --enable-soap USES+= pkgconfig USE_GNOME= libxml2 . endif . if ${PHP_MODNAME} == "sockets" CONFIGURE_ARGS+= --enable-sockets CONFIGURE_ENV+= LOCAL_CREDS_PERSISTENT=yes . endif . if ${PHP_MODNAME} == "sodium" CONFIGURE_ARGS+= --with-sodium=${LOCALBASE} LIB_DEPENDS+= libsodium.so:security/libsodium . endif . if ${PHP_MODNAME} == "sqlite3" USES+= localbase pkgconfig sqlite CONFIGURE_ARGS+= --with-sqlite3=${LOCALBASE} . endif . if ${PHP_MODNAME} == "sysvmsg" CONFIGURE_ARGS+= --enable-sysvmsg . endif . if ${PHP_MODNAME} == "sysvsem" CONFIGURE_ARGS+= --enable-sysvsem . endif . if ${PHP_MODNAME} == "sysvshm" CONFIGURE_ARGS+= --enable-sysvshm . endif . if ${PHP_MODNAME} == "tidy" CONFIGURE_ARGS+= --with-tidy=${LOCALBASE} LIB_DEPENDS+= libtidy5.so:www/tidy-html5 . endif . if ${PHP_MODNAME} == "tokenizer" CONFIGURE_ARGS+= --enable-tokenizer . endif . if ${PHP_MODNAME} == "xml" CONFIGURE_ARGS+= --enable-xml USES+= pkgconfig USE_GNOME= libxml2 . endif . if ${PHP_MODNAME} == "xmlreader" CONFIGURE_ARGS+= --enable-xmlreader USE_GNOME= libxml2 USE_PHP= dom:build . endif . if ${PHP_MODNAME} == "xmlwriter" CONFIGURE_ARGS+= --enable-xmlwriter USES+= pkgconfig USE_GNOME= libxml2 . endif . if ${PHP_MODNAME} == "xsl" CONFIGURE_ARGS+= --with-xsl=${LOCALBASE} USE_GNOME= libxslt USE_PHP= dom:build xml:build . endif . if ${PHP_MODNAME} == "zip" LIB_DEPENDS+= libzip.so:archivers/libzip CONFIGURE_ARGS+= --with-zip USES+= pkgconfig . endif . if ${PHP_MODNAME} == "zlib" CONFIGURE_ARGS+= --with-zlib=/usr USES+= pkgconfig . endif .include . if ${PHP_MODNAME} == "soap" post-extract: @${MKDIR} ${WRKSRC}/ext/session @${CP} ${FILESDIR}/php_session.h ${WRKSRC}/ext/session . endif . if ${PHP_MODNAME} == "sqlite3" || ${PHP_MODNAME} == "zlib" post-extract: @${MV} ${WRKSRC}/config0.m4 ${WRKSRC}/config.m4 . endif . if ${PHP_MODNAME} == "xml" post-extract: @${MKDIR} ${WRKSRC}/ext/xml @${CP} ${WRKSRC}/expat_compat.h ${WRKSRC}/ext/xml . endif .endif .include diff --git a/lang/php85/distinfo b/lang/php85/distinfo index a9e0d22ffb76..4c473c0e48cd 100644 --- a/lang/php85/distinfo +++ b/lang/php85/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1754375752 -SHA256 (php-8.5.0alpha4.tar.gz) = 17975c72ac7d019df1385690f82dca2052362e3182becb88ccb458063b9abb38 -SIZE (php-8.5.0alpha4.tar.gz) = 23062941 +TIMESTAMP = 1755580765 +SHA256 (php-8.5.0beta1.tar.gz) = d28f6de0744fa733db898ddcdeaa784a5e87ec1b4b4822e83529d9a76229ea61 +SIZE (php-8.5.0beta1.tar.gz) = 23797736 diff --git a/lang/php85/pkg-plist b/lang/php85/pkg-plist index 3b6491e7c801..15aebd735077 100644 --- a/lang/php85/pkg-plist +++ b/lang/php85/pkg-plist @@ -1,547 +1,548 @@ %%CLI%%bin/php %%CGI%%bin/php-cgi bin/php-config %%PHPDBG%%bin/phpdbg bin/phpize %%FPM%%sbin/php-fpm etc/php.conf etc/php.ini-development etc/php.ini-production %%FPM%%@sample etc/php-fpm.conf.default etc/php-fpm.conf %%FPM%%@sample etc/php-fpm.d/www.conf.default etc/php-fpm.d/www.conf include/php/TSRM/TSRM.h include/php/TSRM/tsrm_win32.h include/php/Zend/Optimizer/zend_call_graph.h include/php/Zend/Optimizer/zend_cfg.h include/php/Zend/Optimizer/zend_dfg.h include/php/Zend/Optimizer/zend_dump.h include/php/Zend/Optimizer/zend_func_info.h include/php/Zend/Optimizer/zend_inference.h include/php/Zend/Optimizer/zend_optimizer.h include/php/Zend/Optimizer/zend_ssa.h include/php/Zend/Optimizer/zend_worklist.h include/php/Zend/zend.h include/php/Zend/zend_API.h include/php/Zend/zend_alloc.h include/php/Zend/zend_alloc_sizes.h include/php/Zend/zend_arena.h include/php/Zend/zend_ast.h include/php/Zend/zend_atomic.h include/php/Zend/zend_attributes.h include/php/Zend/zend_attributes_arginfo.h include/php/Zend/zend_bitset.h include/php/Zend/zend_build.h include/php/Zend/zend_builtin_functions.h include/php/Zend/zend_builtin_functions_arginfo.h include/php/Zend/zend_call_stack.h include/php/Zend/zend_closures.h include/php/Zend/zend_closures_arginfo.h include/php/Zend/zend_compile.h include/php/Zend/zend_config.h include/php/Zend/zend_config.w32.h include/php/Zend/zend_constants.h include/php/Zend/zend_constants_arginfo.h include/php/Zend/zend_cpuinfo.h include/php/Zend/zend_dtrace.h %%DTRACE%%include/php/Zend/zend_dtrace_gen.h include/php/Zend/zend_enum.h include/php/Zend/zend_enum_arginfo.h include/php/Zend/zend_errors.h include/php/Zend/zend_exceptions.h include/php/Zend/zend_exceptions_arginfo.h include/php/Zend/zend_execute.h include/php/Zend/zend_extensions.h include/php/Zend/zend_fibers.h include/php/Zend/zend_fibers_arginfo.h include/php/Zend/zend_float.h include/php/Zend/zend_frameless_function.h include/php/Zend/zend_gc.h include/php/Zend/zend_gdb.h include/php/Zend/zend_generators.h include/php/Zend/zend_generators_arginfo.h include/php/Zend/zend_globals.h include/php/Zend/zend_globals_macros.h include/php/Zend/zend_hash.h include/php/Zend/zend_highlight.h include/php/Zend/zend_hrtime.h include/php/Zend/zend_inheritance.h include/php/Zend/zend_ini.h include/php/Zend/zend_ini_parser.h include/php/Zend/zend_ini_scanner.h include/php/Zend/zend_ini_scanner_defs.h include/php/Zend/zend_interfaces.h include/php/Zend/zend_interfaces_arginfo.h include/php/Zend/zend_iterators.h include/php/Zend/zend_language_parser.h include/php/Zend/zend_language_scanner.h include/php/Zend/zend_language_scanner_defs.h include/php/Zend/zend_lazy_objects.h include/php/Zend/zend_list.h include/php/Zend/zend_llist.h include/php/Zend/zend_long.h include/php/Zend/zend_map_ptr.h include/php/Zend/zend_max_execution_timer.h include/php/Zend/zend_mmap.h include/php/Zend/zend_modules.h include/php/Zend/zend_multibyte.h include/php/Zend/zend_multiply.h include/php/Zend/zend_object_handlers.h include/php/Zend/zend_objects.h include/php/Zend/zend_objects_API.h include/php/Zend/zend_observer.h include/php/Zend/zend_operators.h include/php/Zend/zend_portability.h include/php/Zend/zend_property_hooks.h include/php/Zend/zend_ptr_stack.h include/php/Zend/zend_range_check.h include/php/Zend/zend_signal.h include/php/Zend/zend_simd.h include/php/Zend/zend_smart_str.h include/php/Zend/zend_smart_str_public.h include/php/Zend/zend_smart_string.h include/php/Zend/zend_smart_string_public.h include/php/Zend/zend_sort.h include/php/Zend/zend_stack.h include/php/Zend/zend_stream.h include/php/Zend/zend_string.h include/php/Zend/zend_strtod.h include/php/Zend/zend_strtod_int.h include/php/Zend/zend_system_id.h include/php/Zend/zend_type_info.h include/php/Zend/zend_types.h include/php/Zend/zend_variables.h include/php/Zend/zend_verify_type_inference.h include/php/Zend/zend_virtual_cwd.h include/php/Zend/zend_vm.h include/php/Zend/zend_vm_def.h include/php/Zend/zend_vm_execute.h include/php/Zend/zend_vm_handlers.h include/php/Zend/zend_vm_opcodes.h include/php/Zend/zend_vm_trace_handlers.h include/php/Zend/zend_vm_trace_lines.h include/php/Zend/zend_vm_trace_map.h include/php/Zend/zend_weakrefs.h include/php/Zend/zend_weakrefs_arginfo.h include/php/ext/date/lib/timelib.h include/php/ext/date/lib/timelib_config.h include/php/ext/date/php_date.h include/php/ext/hash/php_hash.h include/php/ext/hash/php_hash_adler32.h include/php/ext/hash/php_hash_crc32.h include/php/ext/hash/php_hash_fnv.h include/php/ext/hash/php_hash_gost.h include/php/ext/hash/php_hash_haval.h include/php/ext/hash/php_hash_joaat.h include/php/ext/hash/php_hash_md.h include/php/ext/hash/php_hash_murmur.h include/php/ext/hash/php_hash_ripemd.h include/php/ext/hash/php_hash_sha.h include/php/ext/hash/php_hash_sha3.h include/php/ext/hash/php_hash_snefru.h include/php/ext/hash/php_hash_tiger.h include/php/ext/hash/php_hash_whirlpool.h include/php/ext/hash/php_hash_xxhash.h include/php/ext/hash/xxhash/xxhash.h include/php/ext/json/php_json.h include/php/ext/json/php_json_parser.h include/php/ext/json/php_json_scanner.h include/php/ext/lexbor/core/array.h include/php/ext/lexbor/core/array_obj.h include/php/ext/lexbor/core/avl.h include/php/ext/lexbor/core/base.h include/php/ext/lexbor/core/bst.h include/php/ext/lexbor/core/bst_map.h include/php/ext/lexbor/core/conv.h include/php/ext/lexbor/core/core.h include/php/ext/lexbor/core/def.h include/php/ext/lexbor/core/diyfp.h include/php/ext/lexbor/core/dobject.h include/php/ext/lexbor/core/dtoa.h include/php/ext/lexbor/core/fs.h include/php/ext/lexbor/core/hash.h include/php/ext/lexbor/core/in.h include/php/ext/lexbor/core/lexbor.h include/php/ext/lexbor/core/mem.h include/php/ext/lexbor/core/mraw.h include/php/ext/lexbor/core/perf.h include/php/ext/lexbor/core/plog.h include/php/ext/lexbor/core/print.h include/php/ext/lexbor/core/sbst.h include/php/ext/lexbor/core/serialize.h include/php/ext/lexbor/core/shs.h include/php/ext/lexbor/core/str.h include/php/ext/lexbor/core/strtod.h include/php/ext/lexbor/core/str_res.h include/php/ext/lexbor/core/swar.h include/php/ext/lexbor/core/types.h include/php/ext/lexbor/core/utils.h include/php/ext/lexbor/css/at_rule.h include/php/ext/lexbor/css/at_rule/const.h include/php/ext/lexbor/css/at_rule/res.h include/php/ext/lexbor/css/at_rule/state.h include/php/ext/lexbor/css/base.h include/php/ext/lexbor/css/css.h include/php/ext/lexbor/css/declaration.h include/php/ext/lexbor/css/property.h include/php/ext/lexbor/css/property/const.h include/php/ext/lexbor/css/property/res.h include/php/ext/lexbor/css/property/state.h include/php/ext/lexbor/css/rule.h include/php/ext/lexbor/css/selectors/base.h include/php/ext/lexbor/css/selectors/pseudo.h include/php/ext/lexbor/css/selectors/pseudo_const.h include/php/ext/lexbor/css/selectors/pseudo_res.h include/php/ext/lexbor/css/selectors/pseudo_state.h include/php/ext/lexbor/css/selectors/selector.h include/php/ext/lexbor/css/selectors/selectors.h include/php/ext/lexbor/css/selectors/state.h include/php/ext/lexbor/css/state.h include/php/ext/lexbor/css/stylesheet.h include/php/ext/lexbor/css/syntax/anb.h include/php/ext/lexbor/css/syntax/base.h include/php/ext/lexbor/css/syntax/parser.h include/php/ext/lexbor/css/syntax/res.h include/php/ext/lexbor/css/syntax/state.h include/php/ext/lexbor/css/syntax/state_res.h include/php/ext/lexbor/css/syntax/syntax.h include/php/ext/lexbor/css/syntax/token.h include/php/ext/lexbor/css/syntax/token_res.h include/php/ext/lexbor/css/syntax/tokenizer.h include/php/ext/lexbor/css/syntax/tokenizer/error.h include/php/ext/lexbor/css/unit.h include/php/ext/lexbor/css/unit/const.h include/php/ext/lexbor/css/unit/res.h include/php/ext/lexbor/css/value.h include/php/ext/lexbor/css/value/const.h include/php/ext/lexbor/css/value/res.h include/php/ext/lexbor/dom/interfaces/attr.h include/php/ext/lexbor/dom/interfaces/attr_const.h include/php/ext/lexbor/dom/interfaces/attr_res.h include/php/ext/lexbor/dom/interfaces/cdata_section.h include/php/ext/lexbor/dom/interfaces/character_data.h include/php/ext/lexbor/dom/interfaces/comment.h include/php/ext/lexbor/dom/interfaces/document.h include/php/ext/lexbor/dom/interfaces/document_fragment.h include/php/ext/lexbor/dom/interfaces/document_type.h include/php/ext/lexbor/dom/interfaces/element.h include/php/ext/lexbor/dom/interfaces/event_target.h include/php/ext/lexbor/dom/interfaces/processing_instruction.h include/php/ext/lexbor/dom/interfaces/shadow_root.h include/php/ext/lexbor/dom/interfaces/text.h include/php/ext/lexbor/encoding/multi.h include/php/ext/lexbor/encoding/range.h include/php/ext/lexbor/encoding/single.h include/php/ext/lexbor/html/encoding.h include/php/ext/lexbor/html/html.h include/php/ext/lexbor/html/interface.h include/php/ext/lexbor/html/interface_res.h include/php/ext/lexbor/html/interfaces/anchor_element.h include/php/ext/lexbor/html/interfaces/area_element.h include/php/ext/lexbor/html/interfaces/audio_element.h include/php/ext/lexbor/html/interfaces/base_element.h include/php/ext/lexbor/html/interfaces/body_element.h include/php/ext/lexbor/html/interfaces/br_element.h include/php/ext/lexbor/html/interfaces/button_element.h include/php/ext/lexbor/html/interfaces/canvas_element.h include/php/ext/lexbor/html/interfaces/d_list_element.h include/php/ext/lexbor/html/interfaces/data_element.h include/php/ext/lexbor/html/interfaces/data_list_element.h include/php/ext/lexbor/html/interfaces/details_element.h include/php/ext/lexbor/html/interfaces/dialog_element.h include/php/ext/lexbor/html/interfaces/directory_element.h include/php/ext/lexbor/html/interfaces/div_element.h include/php/ext/lexbor/html/interfaces/document.h include/php/ext/lexbor/html/interfaces/element.h include/php/ext/lexbor/html/interfaces/embed_element.h include/php/ext/lexbor/html/interfaces/field_set_element.h include/php/ext/lexbor/html/interfaces/font_element.h include/php/ext/lexbor/html/interfaces/form_element.h include/php/ext/lexbor/html/interfaces/frame_element.h include/php/ext/lexbor/html/interfaces/frame_set_element.h include/php/ext/lexbor/html/interfaces/head_element.h include/php/ext/lexbor/html/interfaces/heading_element.h include/php/ext/lexbor/html/interfaces/hr_element.h include/php/ext/lexbor/html/interfaces/html_element.h include/php/ext/lexbor/html/interfaces/iframe_element.h include/php/ext/lexbor/html/interfaces/image_element.h include/php/ext/lexbor/html/interfaces/input_element.h include/php/ext/lexbor/html/interfaces/label_element.h include/php/ext/lexbor/html/interfaces/legend_element.h include/php/ext/lexbor/html/interfaces/li_element.h include/php/ext/lexbor/html/interfaces/link_element.h include/php/ext/lexbor/html/interfaces/map_element.h include/php/ext/lexbor/html/interfaces/marquee_element.h include/php/ext/lexbor/html/interfaces/media_element.h include/php/ext/lexbor/html/interfaces/menu_element.h include/php/ext/lexbor/html/interfaces/meta_element.h include/php/ext/lexbor/html/interfaces/meter_element.h include/php/ext/lexbor/html/interfaces/mod_element.h include/php/ext/lexbor/html/interfaces/o_list_element.h include/php/ext/lexbor/html/interfaces/object_element.h include/php/ext/lexbor/html/interfaces/opt_group_element.h include/php/ext/lexbor/html/interfaces/option_element.h include/php/ext/lexbor/html/interfaces/output_element.h include/php/ext/lexbor/html/interfaces/paragraph_element.h include/php/ext/lexbor/html/interfaces/param_element.h include/php/ext/lexbor/html/interfaces/picture_element.h include/php/ext/lexbor/html/interfaces/pre_element.h include/php/ext/lexbor/html/interfaces/progress_element.h include/php/ext/lexbor/html/interfaces/quote_element.h include/php/ext/lexbor/html/interfaces/script_element.h include/php/ext/lexbor/html/interfaces/select_element.h include/php/ext/lexbor/html/interfaces/slot_element.h include/php/ext/lexbor/html/interfaces/source_element.h include/php/ext/lexbor/html/interfaces/span_element.h include/php/ext/lexbor/html/interfaces/style_element.h include/php/ext/lexbor/html/interfaces/table_caption_element.h include/php/ext/lexbor/html/interfaces/table_cell_element.h include/php/ext/lexbor/html/interfaces/table_col_element.h include/php/ext/lexbor/html/interfaces/table_element.h include/php/ext/lexbor/html/interfaces/table_row_element.h include/php/ext/lexbor/html/interfaces/table_section_element.h include/php/ext/lexbor/html/interfaces/template_element.h include/php/ext/lexbor/html/interfaces/text_area_element.h include/php/ext/lexbor/html/interfaces/time_element.h include/php/ext/lexbor/html/interfaces/title_element.h include/php/ext/lexbor/html/interfaces/track_element.h include/php/ext/lexbor/html/interfaces/u_list_element.h include/php/ext/lexbor/html/interfaces/unknown_element.h include/php/ext/lexbor/html/interfaces/video_element.h include/php/ext/lexbor/html/interfaces/window.h include/php/ext/lexbor/html/node.h include/php/ext/lexbor/html/serialize.h include/php/ext/lexbor/html/style.h include/php/ext/lexbor/html/tag.h include/php/ext/lexbor/html/tag_res.h include/php/ext/lexbor/html/token.h include/php/ext/lexbor/html/token_attr.h include/php/ext/lexbor/html/tokenizer.h include/php/ext/lexbor/html/tokenizer/error.h include/php/ext/lexbor/html/tokenizer/res.h include/php/ext/lexbor/html/tokenizer/state.h include/php/ext/lexbor/html/tokenizer/state_comment.h include/php/ext/lexbor/html/tokenizer/state_doctype.h include/php/ext/lexbor/html/tokenizer/state_rawtext.h include/php/ext/lexbor/html/tokenizer/state_rcdata.h include/php/ext/lexbor/html/tokenizer/state_script.h include/php/ext/lexbor/html/tree/active_formatting.h include/php/ext/lexbor/html/tree/error.h include/php/ext/lexbor/html/tree/insertion_mode.h include/php/ext/lexbor/html/tree/open_elements.h include/php/ext/lexbor/html/tree/template_insertion.h include/php/ext/lexbor/html/tree_res.h include/php/ext/lexbor/ns/base.h include/php/ext/lexbor/ns/ns.h include/php/ext/lexbor/ns/res.h include/php/ext/lexbor/punycode/base.h include/php/ext/lexbor/punycode/punycode.h include/php/ext/lexbor/selectors/selectors.h include/php/ext/lexbor/tag/base.h include/php/ext/lexbor/tag/res.h include/php/ext/lexbor/tag/tag.h include/php/ext/lexbor/unicode/base.h include/php/ext/lexbor/unicode/idna.h include/php/ext/lexbor/unicode/res.h include/php/ext/lexbor/unicode/unicode.h include/php/ext/lexbor/url/base.h include/php/ext/lexbor/url/url.h include/php/ext/lexbor/css/log.h include/php/ext/lexbor/css/parser.h include/php/ext/lexbor/dom/base.h include/php/ext/lexbor/dom/collection.h include/php/ext/lexbor/dom/dom.h include/php/ext/lexbor/dom/exception.h include/php/ext/lexbor/dom/interface.h include/php/ext/lexbor/dom/interfaces/node.h include/php/ext/lexbor/encoding/base.h include/php/ext/lexbor/encoding/const.h include/php/ext/lexbor/encoding/decode.h include/php/ext/lexbor/encoding/encode.h include/php/ext/lexbor/encoding/encoding.h include/php/ext/lexbor/encoding/res.h include/php/ext/lexbor/html/base.h include/php/ext/lexbor/html/parser.h include/php/ext/lexbor/html/tree.h include/php/ext/lexbor/ns/const.h include/php/ext/lexbor/php_lexbor.h include/php/ext/lexbor/selectors/base.h include/php/ext/lexbor/tag/const.h include/php/ext/libxml/php_libxml.h %%MYSQLND%%include/php/ext/mysqlnd/config-win.h %%MYSQLND%%include/php/ext/mysqlnd/mysql_float_to_double.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_alloc.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_auth.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_block_alloc.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_charset.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_commands.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_connection.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_debug.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_enum_n_def.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_ext_plugin.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_libmysql_compat.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_plugin.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_portability.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_priv.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_protocol_frame_codec.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_ps.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_read_buffer.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_result.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_result_meta.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_reverse_api.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_statistics.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_structs.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_vio.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_wireprotocol.h %%MYSQLND%%include/php/ext/mysqlnd/php_mysqlnd.h %%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/config.h %%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2.h %%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2_internal.h %%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2_intmodedep.h %%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2_jit_neon_inc.h %%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2_jit_simd_inc.h %%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2_ucp.h +include/php/ext/opcache/zend_accelerator_api.h include/php/ext/pcre/php_pcre.h include/php/ext/random/php_random.h include/php/ext/random/php_random_csprng.h include/php/ext/random/php_random_uint128.h include/php/ext/spl/php_spl.h include/php/ext/spl/spl_array.h include/php/ext/spl/spl_directory.h include/php/ext/spl/spl_dllist.h include/php/ext/spl/spl_exceptions.h include/php/ext/spl/spl_fixedarray.h include/php/ext/spl/spl_functions.h include/php/ext/spl/spl_heap.h include/php/ext/spl/spl_iterators.h include/php/ext/spl/spl_observer.h include/php/ext/standard/base64.h include/php/ext/standard/basic_functions.h include/php/ext/standard/basic_functions_arginfo.h include/php/ext/standard/crc32.h include/php/ext/standard/crc32_x86.h include/php/ext/standard/credits.h include/php/ext/standard/credits_ext.h include/php/ext/standard/credits_sapi.h include/php/ext/standard/crypt_blowfish.h include/php/ext/standard/crypt_freesec.h include/php/ext/standard/css.h include/php/ext/standard/dir_arginfo.h include/php/ext/standard/dl.h include/php/ext/standard/dl_arginfo.h include/php/ext/standard/exec.h include/php/ext/standard/file.h include/php/ext/standard/file_arginfo.h include/php/ext/standard/flock_compat.h include/php/ext/standard/fsock.h include/php/ext/standard/head.h include/php/ext/standard/html.h include/php/ext/standard/html_tables.h include/php/ext/standard/info.h include/php/ext/standard/md5.h include/php/ext/standard/pageinfo.h include/php/ext/standard/password_arginfo.h include/php/ext/standard/php_array.h include/php/ext/standard/php_assert.h include/php/ext/standard/php_browscap.h include/php/ext/standard/php_crypt.h include/php/ext/standard/php_crypt_r.h include/php/ext/standard/php_dir.h include/php/ext/standard/php_dir_int.h include/php/ext/standard/php_dns.h include/php/ext/standard/php_ext_syslog.h include/php/ext/standard/php_filestat.h include/php/ext/standard/php_fopen_wrappers.h include/php/ext/standard/php_http.h include/php/ext/standard/php_image.h include/php/ext/standard/php_incomplete_class.h include/php/ext/standard/php_mail.h include/php/ext/standard/php_math.h include/php/ext/standard/php_math_round_mode.h include/php/ext/standard/php_net.h include/php/ext/standard/php_password.h include/php/ext/standard/php_standard.h include/php/ext/standard/php_string.h include/php/ext/standard/php_uuencode.h include/php/ext/standard/php_var.h include/php/ext/standard/php_versioning.h include/php/ext/standard/proc_open.h include/php/ext/standard/quot_print.h include/php/ext/standard/scanf.h include/php/ext/standard/sha1.h include/php/ext/standard/streamsfuncs.h include/php/ext/standard/url.h include/php/ext/standard/url_scanner_ex.h include/php/ext/standard/user_filters_arginfo.h include/php/ext/standard/winver.h include/php/ext/uri/php_lexbor.h include/php/ext/uri/php_uri.h include/php/ext/uri/php_uri_common.h include/php/ext/uri/php_uriparser.h @touch include/php/ext/php_config.h @rmempty include/php/ext/php_config.h include/php/main/SAPI.h include/php/main/build-defs.h include/php/main/charclass.h include/php/main/fastcgi.h include/php/main/fopen_wrappers.h include/php/main/http_status_codes.h include/php/main/main_arginfo.h include/php/main/php.h include/php/main/php_compat.h include/php/main/php_config.h include/php/main/php_content_types.h include/php/main/php_getopt.h include/php/main/php_glob.h include/php/main/php_globals.h include/php/main/php_ini.h include/php/main/php_ini_builder.h include/php/main/php_main.h include/php/main/php_memory_streams.h include/php/main/php_network.h include/php/main/php_odbc_utils.h include/php/main/php_open_temporary_file.h include/php/main/php_output.h include/php/main/php_reentrancy.h include/php/main/php_scandir.h include/php/main/php_streams.h include/php/main/php_syslog.h include/php/main/php_ticks.h include/php/main/php_variables.h include/php/main/php_version.h include/php/main/rfc1867.h include/php/main/snprintf.h include/php/main/spprintf.h include/php/main/streams/php_stream_context.h include/php/main/streams/php_stream_filter_api.h include/php/main/streams/php_stream_glob_wrapper.h include/php/main/streams/php_stream_mmap.h include/php/main/streams/php_stream_plain_wrapper.h include/php/main/streams/php_stream_transport.h include/php/main/streams/php_stream_userspace.h include/php/main/streams/php_streams_int.h include/php/main/streams/userspace_arginfo.h %%CLI%%include/php/sapi/cli/cli.h %%EMBED%%include/php/sapi/embed/php_embed.h %%EMBED%%lib/libphp.so lib/php/build/Makefile.global lib/php/build/ax_check_compile_flag.m4 lib/php/build/ax_gcc_func_attribute.m4 lib/php/build/config.guess lib/php/build/config.sub lib/php/build/gen_stub.php lib/php/build/libtool.m4 lib/php/build/ltmain.sh lib/php/build/php.m4 lib/php/build/php_cxx_compile_stdcxx.m4 lib/php/build/phpize.m4 lib/php/build/pkg.m4 lib/php/build/run-tests.php lib/php/build/shtool %%CGI%%share/man/man1/php-cgi.1.gz share/man/man1/php-config.1.gz %%CLI%%share/man/man1/php.1.gz %%PHPDBG%%share/man/man1/phpdbg.1.gz share/man/man1/phpize.1.gz %%FPM%%share/man/man8/php-fpm.8.gz %%FPM%%share/php/fpm/status.html