Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2231228/?format=api
{ "id": 2231228, "url": "http://patchwork.ozlabs.org/api/patches/2231228/?format=api", "web_url": "http://patchwork.ozlabs.org/project/buildroot/patch/20260430121520.2565804-1-chakrabortyshubham66@gmail.com/", "project": { "id": 27, "url": "http://patchwork.ozlabs.org/api/projects/27/?format=api", "name": "Buildroot development", "link_name": "buildroot", "list_id": "buildroot.buildroot.org", "list_email": "buildroot@buildroot.org", "web_url": "", "scm_url": "", "webscm_url": "", "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260430121520.2565804-1-chakrabortyshubham66@gmail.com>", "list_archive_url": null, "date": "2026-04-30T12:15:19", "name": "package/bash: bump to version 5.3", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "8ce18ad856bc7a597cf3aca0d8c9477dfea2ab62", "submitter": { "id": 92564, "url": "http://patchwork.ozlabs.org/api/people/92564/?format=api", "name": "Shubham Chakraborty", "email": "chakrabortyshubham66@gmail.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/buildroot/patch/20260430121520.2565804-1-chakrabortyshubham66@gmail.com/mbox/", "series": [ { "id": 502292, "url": "http://patchwork.ozlabs.org/api/series/502292/?format=api", "web_url": "http://patchwork.ozlabs.org/project/buildroot/list/?series=502292", "date": "2026-04-30T12:15:19", "name": "package/bash: bump to version 5.3", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/502292/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2231228/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2231228/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<buildroot-bounces@buildroot.org>", "X-Original-To": [ "incoming-buildroot@patchwork.ozlabs.org", "buildroot@buildroot.org" ], "Delivered-To": [ "patchwork-incoming-buildroot@legolas.ozlabs.org", "buildroot@buildroot.org" ], "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=buildroot.org header.i=@buildroot.org\n header.a=rsa-sha256 header.s=default header.b=SV1dlgz7;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=buildroot.org\n (client-ip=140.211.166.138; helo=smtp1.osuosl.org;\n envelope-from=buildroot-bounces@buildroot.org; receiver=patchwork.ozlabs.org)" ], "Received": [ "from smtp1.osuosl.org (smtp1.osuosl.org [140.211.166.138])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g5tS353CWz1yGq\n\tfor <incoming-buildroot@patchwork.ozlabs.org>;\n Thu, 30 Apr 2026 22:16:03 +1000 (AEST)", "from localhost (localhost [127.0.0.1])\n\tby smtp1.osuosl.org (Postfix) with ESMTP id C56AD84A1B;\n\tThu, 30 Apr 2026 12:16:01 +0000 (UTC)", "from smtp1.osuosl.org ([127.0.0.1])\n by localhost (smtp1.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id UgFipoNRouyY; Thu, 30 Apr 2026 12:16:00 +0000 (UTC)", "from lists1.osuosl.org (lists1.osuosl.org [140.211.166.142])\n\tby smtp1.osuosl.org (Postfix) with ESMTP id D8B9E849EE;\n\tThu, 30 Apr 2026 12:15:59 +0000 (UTC)", "from smtp4.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n by lists1.osuosl.org (Postfix) with ESMTP id 5D15718E\n for <buildroot@buildroot.org>; Thu, 30 Apr 2026 12:15:58 +0000 (UTC)", "from localhost (localhost [127.0.0.1])\n by smtp4.osuosl.org (Postfix) with ESMTP id 5B3814264B\n for <buildroot@buildroot.org>; Thu, 30 Apr 2026 12:15:58 +0000 (UTC)", "from smtp4.osuosl.org ([127.0.0.1])\n by localhost (smtp4.osuosl.org [127.0.0.1]) (amavis, port 10024) with ESMTP\n id yXcchYceiSx4 for <buildroot@buildroot.org>;\n Thu, 30 Apr 2026 12:15:57 +0000 (UTC)", "from mail-pl1-x62e.google.com (mail-pl1-x62e.google.com\n [IPv6:2607:f8b0:4864:20::62e])\n by smtp4.osuosl.org (Postfix) with ESMTPS id 1E8494260A\n for <buildroot@buildroot.org>; Thu, 30 Apr 2026 12:15:56 +0000 (UTC)", "by mail-pl1-x62e.google.com with SMTP id\n d9443c01a7336-2addb31945aso4234805ad.1\n for <buildroot@buildroot.org>; Thu, 30 Apr 2026 05:15:56 -0700 (PDT)", "from fedora ([2409:40e5:1163:19c9:4f2b:7a6c:119a:dd8b])\n by smtp.gmail.com with ESMTPSA id\n d9443c01a7336-2b98859f629sm52107065ad.0.2026.04.30.05.15.49\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Thu, 30 Apr 2026 05:15:54 -0700 (PDT)" ], "X-Virus-Scanned": [ "amavis at osuosl.org", "amavis at osuosl.org" ], "X-Comment": "SPF check N/A for local connections - client-ip=140.211.166.142;\n helo=lists1.osuosl.org; envelope-from=buildroot-bounces@buildroot.org;\n receiver=<UNKNOWN> ", "DKIM-Filter": [ "OpenDKIM Filter v2.11.0 smtp1.osuosl.org D8B9E849EE", "OpenDKIM Filter v2.11.0 smtp4.osuosl.org 1E8494260A" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=buildroot.org;\n\ts=default; t=1777551359;\n\tbh=biBfymgcwoiL5sXelcT2Ao3G+lAMRk+X2pd/1r7DUp8=;\n\th=From:To:Cc:Date:Subject:List-Id:List-Unsubscribe:List-Archive:\n\t List-Post:List-Help:List-Subscribe:From;\n\tb=SV1dlgz7dk2es4hATi6BoIhIXFtaSwmDpmuxLngZZlIIx0tFFwoWDn0AAwQPUd6qP\n\t igLQnNognI8qcZR66dhwAlK4/5x6K01/EcosLDr0NvjsLtmf6dw+SPa+dlt3xeEm+T\n\t +wCkdkq82RLJNZQ10SEblnYC19oHGQy4iLkcf18hCKh9wAlIX8HPepA7LC7PAIcNKp\n\t g2NiIxqeq8/7MH//ClLAWBpYeS2E2IsKn0mp+MuGHKH7Udi9jA3fa1wooC/HGwn5DY\n\t k5pAlOSrsPvcYnUpINODBrq/fm5QM/sb5LeYLEn6cF+RY9fb41F3dLkAFE99hrWTIC\n\t W6WR3/90Ojp1g==", "Received-SPF": "Pass (mailfrom) identity=mailfrom;\n client-ip=2607:f8b0:4864:20::62e; helo=mail-pl1-x62e.google.com;\n envelope-from=chakrabortyshubham66@gmail.com; receiver=<UNKNOWN>", "DMARC-Filter": "OpenDMARC Filter v1.4.2 smtp4.osuosl.org 1E8494260A", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777551356; x=1778156156;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=R/lBMDOjfCBh/pBHYMlM2l2fYaZLKVVinJxC1kHFSrg=;\n b=glW+DWksDKBW4qXY5ZNliQ2vqQkvmfcqtf2KoWylOZR/lyQpbOsOx+dVrsxckUJC54\n NWHNdBJ3oSP4FtgEnmDAkeQk/zeulm5hVnugNTgum3ZH6BLog0kdyFVcE7bmyea5OQzc\n ZQ9SJ0rZQT6SDEt6WMD9dVhe53wwK3A6X/SeDnENp5SNj+JZervB+/iaeX8dMTbavrHw\n tcRCD3SqMd7XgfqPNVI+JEttD/rraxcTeIqmi6cvAJeLNLYWgti96uiJCAmJEhb4qveb\n DQRKSLQXsYaplSrpebycHa0wuQle0atoSBN8FtKs+fqVIbDxuSbXHjI2sUnfncYRbyN+\n PTIg==", "X-Gm-Message-State": "AOJu0Yx1lTQ+GwHKOjkJJGTQ6VUnpQvgs62DAWkxqb6b/XDUo3i9yUO6\n bQz373oAAX0nQgLTt8P5fUIpgsSq9c0Xkg/TY47092jexwbx3Cpv44JCIDFxUF4e", "X-Gm-Gg": "AeBDies93U0aJv/ylMMFVZrl5ObbtOJVApozN1gPEAxgbT9j/VU6ojqO3UPmWuL2Iev\n M3jP2OK76lrBzLi8YtCK+75aScBRAHRR8e620sWVkhGqrtlBxdf5XXKImDJ6RoByyenZZFudvJH\n YrWSrEu8kSEhK5JnxkiEMu4xHu0k4x0Dd1zi8RAaQ/vZsk20gTinGhqzjS3+3U0dUmn449XywXs\n dmWzbbh2cOvwBjTIiuBT4ehezMI81S7D6lTkej8W4m0OMBF+b6J4eJU/lOgR5++xWDq1qT/3yeq\n 5CXZ6oipmiQ++aaVKWiAHqFI6i7wDQ31u5buUAoUUXwgBKrZzpSSzdeE1QVHqZS0tYrD+f94wC5\n e270FKs34nJXpyu95UQMF6zaJ6uRSCWgshOyU+CjB/L5sotkT58PgtSocrhR3I9TUXvfKNYr4jC\n DVB6OmxVeqCHanQFmtTMZNB8pGQPBhRQYFv/TxNZPPjKrnWg==", "X-Received": "by 2002:a17:902:850b:b0:2b0:6a22:5165 with SMTP id\n d9443c01a7336-2b9a230b3ecmr19502005ad.7.1777551355451;\n Thu, 30 Apr 2026 05:15:55 -0700 (PDT)", "From": "Shubham Chakraborty <chakrabortyshubham66@gmail.com>", "To": "buildroot@buildroot.org", "Cc": "Shubham Chakraborty <chakrabortyshubham66@gmail.com>", "Date": "Thu, 30 Apr 2026 17:45:19 +0530", "Message-ID": "<20260430121520.2565804-1-chakrabortyshubham66@gmail.com>", "X-Mailer": "git-send-email 2.54.0", "MIME-Version": "1.0", "X-Mailman-Original-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1777551356; x=1778156156; darn=buildroot.org;\n h=content-transfer-encoding:mime-version:message-id:date:subject:cc\n :to:from:from:to:cc:subject:date:message-id:reply-to;\n bh=R/lBMDOjfCBh/pBHYMlM2l2fYaZLKVVinJxC1kHFSrg=;\n b=T4psx6r3GN5uyxobOcnvWcX6Uk/J9JVmIxbV5yuZoa1gL+f3CmnMJDHuijYQ6cc2CR\n c+LvXyyWM3C0AM0P2iISVq2/aadOtOgiayI/d3JRsk8A/TT42GfJk5aYIhUPumvCc8K0\n cONBAmwdP06oingNWb4OVCSTnxlXOcuNArQGLdX78CWfqWLPtETsN1X5ud/WofiFEtXI\n F3uwpksapjfxCZt2qsXy/IaSO8sBo3f8AlHgatRydNfrGinSQ7RlpYyHj4gLy1UM5/d5\n vt9nGsUZNsRxEeHJkSbNZnPNNfON/fzALFLUPpRK2y2v8Rwa+WR6Tuzlhhby+yyDxBVb\n J3aA==", "X-Mailman-Original-Authentication-Results": [ "smtp4.osuosl.org;\n dmarc=pass (p=none dis=none)\n header.from=gmail.com", "smtp4.osuosl.org;\n dkim=pass (2048-bit key,\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=T4psx6r3" ], "Subject": "[Buildroot] [PATCH] package/bash: bump to version 5.3", "X-BeenThere": "buildroot@buildroot.org", "X-Mailman-Version": "2.1.30", "Precedence": "list", "List-Id": "Discussion and development of buildroot <buildroot.buildroot.org>", "List-Unsubscribe": "<https://lists.buildroot.org/mailman/options/buildroot>,\n <mailto:buildroot-request@buildroot.org?subject=unsubscribe>", "List-Archive": "<http://lists.buildroot.org/pipermail/buildroot/>", "List-Post": "<mailto:buildroot@buildroot.org>", "List-Help": "<mailto:buildroot-request@buildroot.org?subject=help>", "List-Subscribe": "<https://lists.buildroot.org/mailman/listinfo/buildroot>,\n <mailto:buildroot-request@buildroot.org?subject=subscribe>", "Content-Type": "text/plain; charset=\"us-ascii\"", "Content-Transfer-Encoding": "7bit", "Errors-To": "buildroot-bounces@buildroot.org", "Sender": "\"buildroot\" <buildroot-bounces@buildroot.org>" }, "content": "Major features:\n- New command substitution: ${ cmd; } and ${| cmd; }\n- GLOBSORT variable for pathname completion sorting\n- compgen can output to variable instead of stdout\n- read -E option for readline completions\n- Code updated to C23 standard\n- Better error reporting and script detection\n\nChanges:\n- Add bash_cv_func_strchrnul_works cache variable\n- Refresh patch 0001\n- Remove upstreamed patch 0002\n- Fixed build failure on toolchains without wide character\n support (uClibc) where wint_t was used while remaining undefined.\n- builtins/printf.def (Patch 0005): Fixed a type mismatch in the tescape\n call when HANDLE_MULTIBYTE is disabled (passing int * instead of char *).\n- lib/glob/smatch.c (Patch 0006): Fixed build failure by guarding usage of\n locale_utf8locale and UTF8_SINGLEBYTE with HANDLE_MULTIBYTE.\n- package/bash/bash.mk: Added bash_cv_func_strchrnul_works=yes to BASH_CONF_ENV\n to prevent multiple definition errors of strchrnul in static builds against uClibc.\n\nCHANGELOGS:\n- https://lwn.net/Articles/1029079/\n\nTested Using:\n- utils/test-pkg -a -p bash\n- utils/test-pkg -T br-arm-basic -p bash\n-\nSigned-off-by: Shubham Chakraborty <chakrabortyshubham66@gmail.com>\n---\n ...put.h-add-missing-include-on-stdio.h.patch | 20 +++---\n ...hline.c-fix-typo-in-vi_advance_point.patch | 31 ++++++++\n ...compilation-for-non-multibyte-builds.patch | 63 -----------------\n ...d-when-HANDLE_MULTIBYTE-is-undefined.patch | 36 ++++++++++\n ...fix-build-failure-when-multibyte-sup.patch | 44 ++++++++++++\n ...def-fix-type-mismatch-in-tescape-cal.patch | 46 ++++++++++++\n ...c-fix-build-failure-when-multibyte-s.patch | 70 +++++++++++++++++++\n package/bash/bash.hash | 4 +-\n package/bash/bash.mk | 8 ++-\n 9 files changed, 243 insertions(+), 79 deletions(-)\n create mode 100644 package/bash/0002-bashline.c-fix-typo-in-vi_advance_point.patch\n delete mode 100644 package/bash/0002-parse.y-fix-compilation-for-non-multibyte-builds.patch\n create mode 100644 package/bash/0003-builtins-printf.def-fix-build-when-HANDLE_MULTIBYTE-is-undefined.patch\n create mode 100644 package/bash/0004-lib-glob-glob.c-fix-build-failure-when-multibyte-sup.patch\n create mode 100644 package/bash/0005-builtins-printf.def-fix-type-mismatch-in-tescape-cal.patch\n create mode 100644 package/bash/0006-lib-glob-smatch.c-fix-build-failure-when-multibyte-s.patch", "diff": "diff --git a/package/bash/0001-input.h-add-missing-include-on-stdio.h.patch b/package/bash/0001-input.h-add-missing-include-on-stdio.h.patch\nindex fd008e9472..eb0fd5c6fb 100644\n--- a/package/bash/0001-input.h-add-missing-include-on-stdio.h.patch\n+++ b/package/bash/0001-input.h-add-missing-include-on-stdio.h.patch\n@@ -1,4 +1,4 @@\n-From 4fa85c85b9a76afd3b19ed75bf17ccd2940f1f55 Mon Sep 17 00:00:00 2001\n+From 62410ba4a20da08140050583f7468192fe8c3f85 Mon Sep 17 00:00:00 2001\n From: Fabrice Fontaine <fontaine.fabrice@gmail.com>\n Date: Sun, 16 Feb 2020 16:18:48 +0100\n Subject: [PATCH] input.h: add missing include on stdio.h\n@@ -15,24 +15,22 @@ Fixes:\n - http://autobuild.buildroot.org/results/bfca306868df54c567215c45c8cdac838d02f567\n \n Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>\n-[Upstream status: https://savannah.gnu.org/support/?110196]\n+Upstream: https://savannah.gnu.org/support/?110196\n ---\n- input.h | 2 ++\n- 1 file changed, 2 insertions(+)\n+ input.h | 1 +\n+ 1 file changed, 1 insertion(+)\n \n diff --git a/input.h b/input.h\n-index 6aef1269..08b0fdea 100644\n+index 592b6cb..37a60e1 100644\n --- a/input.h\n +++ b/input.h\n-@@ -21,6 +21,8 @@\n+@@ -20,6 +20,7 @@\n+ \n #if !defined (_INPUT_H_)\n #define _INPUT_H_\n- \n +#include <stdio.h>\n-+\n+ \n #include \"stdc.h\"\n \n- /* Function pointers can be declared as (Function *)foo. */\n -- \n-2.24.1\n-\n+2.54.0\ndiff --git a/package/bash/0002-bashline.c-fix-typo-in-vi_advance_point.patch b/package/bash/0002-bashline.c-fix-typo-in-vi_advance_point.patch\nnew file mode 100644\nindex 0000000000..d8a087f76d\n--- /dev/null\n+++ b/package/bash/0002-bashline.c-fix-typo-in-vi_advance_point.patch\n@@ -0,0 +1,31 @@\n+From aea2c50ea51c94b63d0475a4ff0e71960d16f87c Mon Sep 17 00:00:00 2001\n+From: Shubham Chakraborty <chakrabortyshubham66@gmail.com>\n+Date: Thu, 30 Apr 2026 15:05:28 +0530\n+Subject: [PATCH] bashline.c: fix typo in vi_advance_point\n+\n+Bash 5.3 contains a typo where a colon is used instead of a\n+semicolon in the non-multibyte version of vi_advance_point.\n+This causes build failures when HANDLE_MULTIBYTE is not defined.\n+\n+Upstream: https://lists.gnu.org/archive/html/bug-bash/2025-07/msg00045.html\n+Signed-off-by: Shubham Chakraborty <chakrabortyshubham66@gmail.com>\n+---\n+ bashline.c | 2 +-\n+ 1 file changed, 1 insertion(+), 1 deletion(-)\n+\n+diff --git a/bashline.c b/bashline.c\n+index 2b4da75..c603984 100644\n+--- a/bashline.c\n++++ b/bashline.c\n+@@ -4142,7 +4142,7 @@ vi_advance_point (void)\n+ \t}\n+ }\n+ #else\n+- rl_point++:\n++ rl_point++;\n+ #endif\n+ return point;\n+ }\n+-- \n+2.54.0\n+\ndiff --git a/package/bash/0002-parse.y-fix-compilation-for-non-multibyte-builds.patch b/package/bash/0002-parse.y-fix-compilation-for-non-multibyte-builds.patch\ndeleted file mode 100644\nindex 378ff0dfd3..0000000000\n--- a/package/bash/0002-parse.y-fix-compilation-for-non-multibyte-builds.patch\n+++ /dev/null\n@@ -1,63 +0,0 @@\n-From 0217fc2816e47ee296472df71d1011f0eb2937e6 Mon Sep 17 00:00:00 2001\n-From: Vincent Fazio <vfazio@gmail.com>\n-Date: Fri, 27 Jan 2023 14:37:26 -0600\n-Subject: [PATCH] parse.y: fix compilation for non-multibyte builds\n-\n-Builds configured with --disable-multibyte or when the toolchain does\n-not have WCHAR support would encounter a compile error due to an\n-undeclared reference to shell_input_line_property in shell_getc.\n-\n-Add a HANDLE_MULTIBYTE guard to conditionally compile the block that\n-references shell_input_line_property in shell_getc as it's only declared\n-when HANDLE_MULTIBYTE is defined.\n-\n-Signed-off-by: Vincent Fazio <vfazio@gmail.com>\n-[Upstream status: https://savannah.gnu.org/patch/index.php?10309]\n----\n- parse.y | 2 ++\n- y.tab.c | 2 ++\n- 2 files changed, 4 insertions(+)\n-\n-diff --git a/parse.y b/parse.y\n-index 1d12e639..8f1355c6 100644\n---- a/parse.y\n-+++ b/parse.y\n-@@ -2640,6 +2640,7 @@ next_alias_char:\n- parser_state |= PST_ENDALIAS;\n- /* We need to do this to make sure last_shell_getc_is_singlebyte returns\n- \t true, since we are returning a single-byte space. */\n-+#if defined (HANDLE_MULTIBYTE)\n- if (shell_input_line_index == shell_input_line_len && last_shell_getc_is_singlebyte == 0)\n- \t{\n- #if 0\n-@@ -2653,6 +2654,7 @@ next_alias_char:\n- \t shell_input_line_property[shell_input_line_index - 1] = 1;\n- #endif\n- \t}\n-+#endif /* HANDLE_MULTIBYTE */\n- return ' ';\t/* END_ALIAS */\n- }\n- #endif\n-diff --git a/y.tab.c b/y.tab.c\n-index 50c5845b..799f730f 100644\n---- a/y.tab.c\n-+++ b/y.tab.c\n-@@ -4955,6 +4955,7 @@ next_alias_char:\n- parser_state |= PST_ENDALIAS;\n- /* We need to do this to make sure last_shell_getc_is_singlebyte returns\n- \t true, since we are returning a single-byte space. */\n-+#if defined (HANDLE_MULTIBYTE)\n- if (shell_input_line_index == shell_input_line_len && last_shell_getc_is_singlebyte == 0)\n- \t{\n- #if 0\n-@@ -4968,6 +4969,7 @@ next_alias_char:\n- \t shell_input_line_property[shell_input_line_index - 1] = 1;\n- #endif\n- \t}\n-+#endif /* HANDLE_MULTIBYTE */\n- return ' ';\t/* END_ALIAS */\n- }\n- #endif\n--- \n-2.25.1\n-\ndiff --git a/package/bash/0003-builtins-printf.def-fix-build-when-HANDLE_MULTIBYTE-is-undefined.patch b/package/bash/0003-builtins-printf.def-fix-build-when-HANDLE_MULTIBYTE-is-undefined.patch\nnew file mode 100644\nindex 0000000000..a68d10a42a\n--- /dev/null\n+++ b/package/bash/0003-builtins-printf.def-fix-build-when-HANDLE_MULTIBYTE-is-undefined.patch\n@@ -0,0 +1,36 @@\n+From 3fd891f6a71f88aeeaa09ebee9296d8708cdcd08 Mon Sep 17 00:00:00 2001\n+From: Shubham Chakraborty <chakrabortyshubham66@gmail.com>\n+Date: Thu, 30 Apr 2026 15:29:45 +0530\n+Subject: [PATCH] builtins/printf.def: fix build when HANDLE_MULTIBYTE is\n+ undefined\n+\n+The local variable mb_cur_max is only declared when HANDLE_MULTIBYTE is\n+defined, but it is assigned MB_CUR_MAX unconditionally, leading to a\n+compilation error when multibyte support is disabled.\n+\n+Wrap the assignment in the same HANDLE_MULTIBYTE guard used for the\n+declaration and other usages in the function.\n+\n+Upstream: N/A\n+Signed-off-by: Shubham Chakraborty <chakrabortyshubham66@gmail.com>\n+---\n+ builtins/printf.def | 2 ++\n+ 1 file changed, 2 insertions(+)\n+\n+diff --git a/builtins/printf.def b/builtins/printf.def\n+index 7d7f8c2..f7abf53 100644\n+--- a/builtins/printf.def\n++++ b/builtins/printf.def\n+@@ -355,7 +355,9 @@ printf_builtin (WORD_LIST *list)\n+ \n+ garglist = orig_arglist = list->next;\n+ \n++#if defined (HANDLE_MULTIBYTE)\n+ mb_cur_max = MB_CUR_MAX;\n++#endif\n+ \n+ /* Basic algorithm is to scan the format string for conversion\n+ specifications -- once one is found, find out if the field\n+-- \n+2.54.0\n+\ndiff --git a/package/bash/0004-lib-glob-glob.c-fix-build-failure-when-multibyte-sup.patch b/package/bash/0004-lib-glob-glob.c-fix-build-failure-when-multibyte-sup.patch\nnew file mode 100644\nindex 0000000000..6deb6b5a75\n--- /dev/null\n+++ b/package/bash/0004-lib-glob-glob.c-fix-build-failure-when-multibyte-sup.patch\n@@ -0,0 +1,44 @@\n+From e37247455b11f745e30ea981c79fb9c24363931c Mon Sep 17 00:00:00 2001\n+From: Shubham Chakraborty <chakrabortyshubham66@gmail.com>\n+Date: Thu, 30 Apr 2026 16:45:59 +0530\n+Subject: [PATCH] lib/glob/glob.c: fix build failure when multibyte support is\n+ disabled\n+\n+When multibyte support is disabled (e.g. uClibc without wide character\n+support), wint_t is undefined. This causes a compilation error in\n+lib/glob/glob.c which uses wint_t in external declarations.\n+\n+This fixes the following failure seen with br-arm-basic toolchain:\n+\n+In file included from glob.c:1016:\n+glob_loop.c: In function 'internal_glob_pattern_p':\n+glob_loop.c:52:18: error: 'wint_t' undeclared (first use in this function)\n+\n+Upstream: N/A\n+Signed-off-by: Shubham Chakraborty <chakrabortyshubham66@gmail.com>\n+---\n+ lib/glob/glob.c | 4 ++++\n+ 1 file changed, 4 insertions(+)\n+\n+diff --git a/lib/glob/glob.c b/lib/glob/glob.c\n+index 4681f58..67ab5af 100644\n+--- a/lib/glob/glob.c\n++++ b/lib/glob/glob.c\n+@@ -120,10 +120,14 @@ static char **glob_dir_to_array (char *, char **, int);\n+ \n+ /* Make sure these names continue to agree with what's in smatch.c */\n+ extern char *glob_patscan (char *, char *, int, int);\n++#if HANDLE_MULTIBYTE\n+ extern wchar_t *glob_patscan_wc (wchar_t *, wchar_t *, wint_t, int);\n++#endif\n+ \n+ /* And this from gmisc.c/gm_loop.c */\n++#if HANDLE_MULTIBYTE\n+ extern int wextglob_pattern_p (wchar_t *);\n++#endif\n+ \n+ extern char *glob_dirscan (char *, int);\n+ \n+-- \n+2.54.0\n+\ndiff --git a/package/bash/0005-builtins-printf.def-fix-type-mismatch-in-tescape-cal.patch b/package/bash/0005-builtins-printf.def-fix-type-mismatch-in-tescape-cal.patch\nnew file mode 100644\nindex 0000000000..d850df2384\n--- /dev/null\n+++ b/package/bash/0005-builtins-printf.def-fix-type-mismatch-in-tescape-cal.patch\n@@ -0,0 +1,46 @@\n+From 11f4edc20dcce079be1c6afd2df9442fa8341215 Mon Sep 17 00:00:00 2001\n+From: Shubham Chakraborty <chakrabortyshubham66@gmail.com>\n+Date: Thu, 30 Apr 2026 16:46:26 +0530\n+Subject: [PATCH] builtins/printf.def: fix type mismatch in tescape call\n+\n+When HANDLE_MULTIBYTE is disabled, the 'c' variable is an int, but\n+tescape expects a char * as its second argument. This causes a type\n+mismatch error.\n+\n+This fixes the following failure seen with br-arm-basic toolchain:\n+\n+./printf.def:1230:26: error: passing argument 2 of 'tescape' from incompatible pointer type [-Werror=incompatible-pointer-types]\n+ 1230 | s += tescape (s, &c, (int *)NULL, &temp);\n+ | ^~\n+ | |\n+ | int *\n+./printf.def:1068:30: note: expected 'char *' but argument is of type 'int *'\n+ 1068 | tescape (char *estart, char *cp, int *lenp, int *sawc)\n+ | ~~~~~~^~\n+\n+Upstream: N/A\n+Signed-off-by: Shubham Chakraborty <chakrabortyshubham66@gmail.com>\n+---\n+ builtins/printf.def | 6 +++++-\n+ 1 file changed, 5 insertions(+), 1 deletion(-)\n+\n+diff --git a/builtins/printf.def b/builtins/printf.def\n+index 7d7f8c2..3e59cdf 100644\n+--- a/builtins/printf.def\n++++ b/builtins/printf.def\n+@@ -1225,7 +1225,11 @@ bexpand (char *string, size_t len, int *sawc, size_t *lenp)\n+ memset (mbch, '\\0', sizeof (mbch));\n+ s += tescape (s, mbch, &mblen, &temp);\n+ #else\n+- s += tescape (s, &c, (int *)NULL, &temp);\n++ {\n++\tchar cc;\n++\ts += tescape (s, &cc, (int *)NULL, &temp);\n++\tc = cc;\n++ }\n+ #endif\n+ if (temp)\n+ \t{\n+-- \n+2.54.0\n+\ndiff --git a/package/bash/0006-lib-glob-smatch.c-fix-build-failure-when-multibyte-s.patch b/package/bash/0006-lib-glob-smatch.c-fix-build-failure-when-multibyte-s.patch\nnew file mode 100644\nindex 0000000000..474e0f5846\n--- /dev/null\n+++ b/package/bash/0006-lib-glob-smatch.c-fix-build-failure-when-multibyte-s.patch\n@@ -0,0 +1,70 @@\n+From 1ced7e8a23808b232ee78c68c00a8815dcf1a72d Mon Sep 17 00:00:00 2001\n+From: Shubham Chakraborty <chakrabortyshubham66@gmail.com>\n+Date: Thu, 30 Apr 2026 16:47:15 +0530\n+Subject: [PATCH] lib/glob/smatch.c: fix build failure when multibyte support\n+ is disabled\n+\n+When multibyte support is disabled, locale_utf8locale and\n+UTF8_SINGLEBYTE are not available. This causes a compilation error in\n+lib/glob/smatch.c in functions like is_cclass, collseqcmp, and the FOLD\n+macro.\n+\n+This fixes the following failure seen with br-arm-basic toolchain:\n+\n+strmatch.c:145:7: error: 'locale_utf8locale' undeclared (first use in this function)\n+ 145 | if (locale_utf8locale && (UTF8_SINGLEBYTE (c) == 0 || UTF8_SINGLEBYTE (equiv) == 0))\n+\n+Upstream: N/A\n+Signed-off-by: Shubham Chakraborty <chakrabortyshubham66@gmail.com>\n+---\n+ lib/glob/smatch.c | 11 +++++++++++\n+ 1 file changed, 11 insertions(+)\n+\n+diff --git a/lib/glob/smatch.c b/lib/glob/smatch.c\n+index e42b8fc..b437062 100644\n+--- a/lib/glob/smatch.c\n++++ b/lib/glob/smatch.c\n+@@ -141,9 +141,11 @@ rangecmp (int c1, int c2, int forcecoll)\n+ static int\n+ collseqcmp (int c, int equiv)\n+ {\n++#if HANDLE_MULTIBYTE\n+ /* Make sure characters >= 0x80 are compared as bytes in a UTF-8 locale. */\n+ if (locale_utf8locale && (UTF8_SINGLEBYTE (c) == 0 || UTF8_SINGLEBYTE (equiv) == 0))\n+ return (c == equiv);\n++#endif\n+ \n+ if (charcmp (c, equiv, 1) == 0)\n+ return 1;\n+@@ -285,8 +287,10 @@ is_cclass (int c, const char *name)\n+ enum char_class char_class;\n+ int result;\n+ \n++#if HANDLE_MULTIBYTE\n+ if (locale_utf8locale && UTF8_SINGLEBYTE (c) == 0)\n+ return -1;\n++#endif\n+ \n+ char_class = is_valid_cclass (name);\n+ if (char_class == CC_NO_CLASS)\n+@@ -298,10 +302,17 @@ is_cclass (int c, const char *name)\n+ \n+ /* Now include `sm_loop.c' for single-byte characters. */\n+ /* The result of FOLD is an `unsigned char' */\n++#if HANDLE_MULTIBYTE\n+ # define FOLD(c) \\\n+ (((flags & FNM_CASEFOLD) && (locale_utf8locale == 0 || UTF8_SINGLEBYTE (c))) \\\n+ ? TOLOWER ((unsigned char)c) \\\n+ : ((unsigned char)c))\n++#else\n++# define FOLD(c) \\\n++ ((flags & FNM_CASEFOLD) \\\n++ ? TOLOWER ((unsigned char)c) \\\n++ : ((unsigned char)c))\n++#endif\n+ \n+ #if !defined (__CYGWIN__)\n+ # define ISDIRSEP(c)\t((c) == '/')\n+-- \n+2.54.0\n+\ndiff --git a/package/bash/bash.hash b/package/bash/bash.hash\nindex c2fb1d38d4..35475d5194 100644\n--- a/package/bash/bash.hash\n+++ b/package/bash/bash.hash\n@@ -1,4 +1,4 @@\n # Locally calculated after checking pgp signature from\n-# https://ftp.gnu.org/gnu/bash/bash-5.2.37.tar.gz.sig\n-sha256 9599b22ecd1d5787ad7d3b7bf0c59f312b3396d1e281175dd1f8a4014da621ff bash-5.2.37.tar.gz\n+# https://ftp.gnu.org/gnu/bash/bash-5.3.tar.gz.sig\n+sha256 0d5cd86965f869a26cf64f4b71be7b96f90a3ba8b3d74e27e8e9d9d5550f31ba bash-5.3.tar.gz\n sha256 8ceb4b9ee5adedde47b31e975c1d90c73ad27b6b165a1dcd80c7c545eb65b903 COPYING\ndiff --git a/package/bash/bash.mk b/package/bash/bash.mk\nindex 7fb43c52c0..4e0d112134 100644\n--- a/package/bash/bash.mk\n+++ b/package/bash/bash.mk\n@@ -4,7 +4,7 @@\n #\n ################################################################################\n \n-BASH_VERSION = 5.2.37\n+BASH_VERSION = 5.3\n BASH_SITE = $(BR2_GNU_MIRROR)/bash\n BASH_DEPENDENCIES = ncurses readline host-bison\n BASH_LICENSE = GPL-3.0+\n@@ -24,9 +24,11 @@ BASH_CONF_ENV = \\\n \tbash_cv_job_control_missing=present \\\n \tbash_cv_sys_named_pipes=present \\\n \tbash_cv_func_sigsetjmp=present \\\n-\tbash_cv_printf_a_format=yes\n+\tbash_cv_printf_a_format=yes \\\n+\tbash_cv_func_strchrnul_works=yes\n \n-# Can be dropped when bash is bumped to 5.3 or newer.\n+# Can be dropped when bash is bumped to 5.4 or newer.\n+# Bash 5.3 still has some issues with C23 (the default in GCC 15).\n ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_15),y)\n BASH_CONF_ENV += CFLAGS=\"$(TARGET_CFLAGS) -std=gnu17\"\n endif\n", "prefixes": [] }