2
1
Peter Korsgaard 1 жил өмнө
parent
commit
216e99e9b4
37 өөрчлөгдсөн 203 нэмэгдсэн , 191 устгасан
  1. 0 3
      .checkpackageignore
  2. 8 0
      Config.in.legacy
  3. 1 0
      DEVELOPERS
  4. 1 0
      package/Config.in
  5. 0 50
      package/binutils/2.39/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch
  6. 8 6
      package/binutils/2.42/0001-sh-conf.patch
  7. 89 78
      package/binutils/2.42/0002-poison-system-directories.patch
  8. 5 9
      package/binutils/Config.in.host
  9. 0 1
      package/binutils/binutils.hash
  10. 2 8
      package/binutils/binutils.mk
  11. 1 1
      package/elf2flt/elf2flt.mk
  12. 1 1
      package/hwdata/hwdata.hash
  13. 1 1
      package/hwdata/hwdata.mk
  14. 2 1
      package/iozone/iozone.hash
  15. 3 4
      package/iozone/iozone.mk
  16. 2 2
      package/mc/mc.hash
  17. 1 1
      package/mc/mc.mk
  18. 1 1
      package/mongoose/mongoose.hash
  19. 1 1
      package/mongoose/mongoose.mk
  20. 1 1
      package/musl/Config.in
  21. 2 2
      package/musl/musl.hash
  22. 1 1
      package/musl/musl.mk
  23. 3 3
      package/pcre2/pcre2.hash
  24. 1 1
      package/pcre2/pcre2.mk
  25. 12 0
      package/python-jc/Config.in
  26. 5 0
      package/python-jc/python-jc.hash
  27. 14 0
      package/python-jc/python-jc.mk
  28. 2 2
      package/python-uvicorn/python-uvicorn.hash
  29. 2 2
      package/python-uvicorn/python-uvicorn.mk
  30. 1 1
      package/quickjs/quickjs.hash
  31. 1 1
      package/quickjs/quickjs.mk
  32. 3 3
      package/xz/xz.hash
  33. 2 2
      package/xz/xz.mk
  34. 1 1
      package/zlib-ng/zlib-ng.hash
  35. 1 1
      package/zlib-ng/zlib-ng.mk
  36. 2 2
      support/config-fragments/autobuild/br-arm-internal-glibc.config
  37. 22 0
      support/testing/tests/package/test_python_jc.py

+ 0 - 3
.checkpackageignore

@@ -193,9 +193,6 @@ package/berkeleydb/0001-cwd-db_config.patch Upstream
 package/berkeleydb/0002-atomic_compare_exchange.patch Upstream
 package/bind/0001-cross.patch Upstream
 package/bind/S81named Indent Shellcheck Variables
-package/binutils/2.39/0001-sh-conf.patch Upstream
-package/binutils/2.39/0002-poison-system-directories.patch Upstream
-package/binutils/2.39/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch Upstream
 package/bird/0001-configure.ac-fix-build-with-autoconf-2.70.patch Upstream
 package/bitcoin/0001-src-randomenv.cpp-fix-build-on-uclibc.patch Upstream
 package/bmx7/0001-Fix-schedule.c-378-36-error-SIOCGSTAMP-undeclared.patch Upstream

+ 8 - 0
Config.in.legacy

@@ -144,6 +144,14 @@ endif
 
 ###############################################################################
 
+comment "Legacy options removed in 2024.05"
+
+config BR2_BINUTILS_VERSION_2_39_X
+	bool "binutils 2.39 has been removed"
+	select BR2_LEGACY
+	help
+	  binutils 2.39 has been removed, use a newer version.
+
 comment "Legacy options removed in 2024.02"
 
 config BR2_PACKAGE_MYSQL

+ 1 - 0
DEVELOPERS

@@ -2092,6 +2092,7 @@ F:	utils/config
 F:	utils/diffconfig
 
 N:	Marcus Hoffmann <bubu@bubu1.eu>
+F:	package/python-jc/
 F:	support/testing/tests/package/test_python_fastapi.py
 F:	support/testing/tests/package/sample_python_fastapi.py
 

+ 1 - 0
package/Config.in

@@ -1150,6 +1150,7 @@ menu "External python modules"
 	source "package/python-janus/Config.in"
 	source "package/python-jaraco-classes/Config.in"
 	source "package/python-jaraco-functools/Config.in"
+	source "package/python-jc/Config.in"
 	source "package/python-jedi/Config.in"
 	source "package/python-jeepney/Config.in"
 	source "package/python-jinja2/Config.in"

+ 0 - 50
package/binutils/2.39/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch

@@ -1,50 +0,0 @@
-From ef4ba1da823e8366ea4f126f50885a44ebf4dcf0 Mon Sep 17 00:00:00 2001
-From: Giulio Benetti <giulio.benetti@benettiengineering.com>
-Date: Wed, 9 Jun 2021 17:28:27 +0200
-Subject: [PATCH] bfd/elf32-or1k: fix building with gcc version < 5
-
-Gcc version >= 5 has standard C mode not set to -std=gnu11, so if we use
-an old compiler(i.e. gcc 4.9) build fails on:
-```
-elf32-or1k.c:2251:3: error: 'for' loop initial declarations are only allowed in
-C99 or C11 mode
-    for (size_t i = 0; i < insn_count; i++)
-    ^
-```
-
-So let's declare `size_t i` at the top of the function instead of inside
-for loop.
-
-Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
----
- bfd/elf32-or1k.c | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/bfd/elf32-or1k.c b/bfd/elf32-or1k.c
-index 4ae7f324d33..32063ab0289 100644
---- a/bfd/elf32-or1k.c
-+++ b/bfd/elf32-or1k.c
-@@ -2244,9 +2244,10 @@ or1k_write_plt_entry (bfd *output_bfd, bfd_byte *contents, unsigned insnj,
- {
-   unsigned nodelay = elf_elfheader (output_bfd)->e_flags & EF_OR1K_NODELAY;
-   unsigned output_insns[PLT_MAX_INSN_COUNT];
-+  size_t i;
- 
-   /* Copy instructions into the output buffer.  */
--  for (size_t i = 0; i < insn_count; i++)
-+  for (i = 0; i < insn_count; i++)
-     output_insns[i] = insns[i];
- 
-   /* Honor the no-delay-slot setting.  */
-@@ -2277,7 +2278,7 @@ or1k_write_plt_entry (bfd *output_bfd, bfd_byte *contents, unsigned insnj,
-     }
- 
-   /* Write out the output buffer.  */
--  for (size_t i = 0; i < (insn_count+1); i++)
-+  for (i = 0; i < (insn_count+1); i++)
-     bfd_put_32 (output_bfd, output_insns[i], contents + (i*4));
- }
- 
--- 
-2.31.1
-

+ 8 - 6
package/binutils/2.39/0001-sh-conf.patch → package/binutils/2.42/0001-sh-conf.patch

@@ -1,4 +1,4 @@
-From 33f3c1f804efc2e4f97849081589efb70cda31e5 Mon Sep 17 00:00:00 2001
+From d71fb5a9999ee7c8963342caa0d5cbb16872ab07 Mon Sep 17 00:00:00 2001
 From: Romain Naour <romain.naour@gmail.com>
 Date: Fri, 25 Dec 2015 11:38:13 +0100
 Subject: [PATCH] sh-conf
@@ -8,6 +8,8 @@ fix that up too.. now we're able to actually build a real toolchain for
 sh2a_nofpu- and other more ineptly named toolchains (and yes, there are more
 inept targets than that one, really. Go look, I promise).
 
+Upstream: N/A [Buildroot specific]
+
 [Romain: rebase on top of 2.32]
 Signed-off-by: Romain Naour <romain.naour@gmail.com>
 [Thomas: rebase on top of 2.29, in which sh64 support was removed.]
@@ -18,10 +20,10 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/configure b/configure
-index 3dd206525a7..6881ce632f5 100755
+index 670684d83d1..967c6708a0c 100755
 --- a/configure
 +++ b/configure
-@@ -3892,7 +3892,7 @@ case "${target}" in
+@@ -4042,7 +4042,7 @@ case "${target}" in
    nvptx*-*-*)
      noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc"
      ;;
@@ -31,10 +33,10 @@ index 3dd206525a7..6881ce632f5 100755
        sh*-*-elf)
           ;;
 diff --git a/configure.ac b/configure.ac
-index 797a624621e..1f9256bbf18 100644
+index 88b4800e298..2c8d08ff6ec 100644
 --- a/configure.ac
 +++ b/configure.ac
-@@ -1175,7 +1175,7 @@ case "${target}" in
+@@ -1269,7 +1269,7 @@ case "${target}" in
    nvptx*-*-*)
      noconfigdirs="$noconfigdirs target-libssp target-libstdc++-v3 target-libobjc"
      ;;
@@ -44,5 +46,5 @@ index 797a624621e..1f9256bbf18 100644
        sh*-*-elf)
           ;;
 -- 
-2.31.1
+2.43.0
 

+ 89 - 78
package/binutils/2.39/0002-poison-system-directories.patch → package/binutils/2.42/0002-poison-system-directories.patch

@@ -1,4 +1,4 @@
-From 4d8705ddb55897e8a74b617ab95736d520d9e1ea Mon Sep 17 00:00:00 2001
+From 00f6b0a7d31085831429834b2bc8f511b8fab6ce Mon Sep 17 00:00:00 2001
 From: Romain Naour <romain.naour@gmail.com>
 Date: Fri, 25 Dec 2015 11:45:38 +0100
 Subject: [PATCH] poison-system-directories
@@ -15,6 +15,7 @@ Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
 
 Upstream-Status: Inappropriate [distribution: codesourcery]
+Upstream: N/A [Buildroot specific]
 
 Patch originally created by Mark Hatle, forward-ported to
 binutils 2.21 by Scott Garman.
@@ -79,10 +80,11 @@ Signed-off-by: Scott Garman <scott.a.garman@intel.com>
  ld/lexsup.c     | 21 +++++++++++++++++++++
  9 files changed, 89 insertions(+)
 
-diff -Nur binutils-2.39.orig/ld/config.in binutils-2.39/ld/config.in
---- binutils-2.39.orig/ld/config.in	2022-08-05 11:56:56.000000000 +0200
-+++ binutils-2.39/ld/config.in	2022-08-11 13:00:55.310472243 +0200
-@@ -55,6 +55,9 @@
+diff --git a/ld/config.in b/ld/config.in
+index 52d62f06ff0..b5944e7ba55 100644
+--- a/ld/config.in
++++ b/ld/config.in
+@@ -70,6 +70,9 @@
     language is requested. */
  #undef ENABLE_NLS
  
@@ -92,10 +94,11 @@ diff -Nur binutils-2.39.orig/ld/config.in binutils-2.39/ld/config.in
  /* Additional extension a shared object might have. */
  #undef EXTRA_SHLIB_EXTENSION
  
-diff -Nur binutils-2.39.orig/ld/configure binutils-2.39/ld/configure
---- binutils-2.39.orig/ld/configure	2022-08-05 11:56:54.000000000 +0200
-+++ binutils-2.39/ld/configure	2022-08-11 13:00:55.370470806 +0200
-@@ -836,6 +836,7 @@
+diff --git a/ld/configure b/ld/configure
+index ba1e5e2a215..2220d7afe2a 100755
+--- a/ld/configure
++++ b/ld/configure
+@@ -844,6 +844,7 @@ with_lib_path
  enable_targets
  enable_64_bit_bfd
  with_sysroot
@@ -103,7 +106,7 @@ diff -Nur binutils-2.39.orig/ld/configure binutils-2.39/ld/configure
  enable_gold
  enable_got
  enable_compressed_debug_sections
-@@ -1514,6 +1515,8 @@
+@@ -1534,6 +1535,8 @@ Optional Features:
    --enable-checking       enable run-time checks
    --enable-targets        alternative target configurations
    --enable-64-bit-bfd     64-bit support (on hosts with narrower word sizes)
@@ -112,7 +115,7 @@ diff -Nur binutils-2.39.orig/ld/configure binutils-2.39/ld/configure
    --enable-gold[=ARG]     build gold [ARG={default,yes,no}]
    --enable-got=<type>     GOT handling scheme (target, single, negative,
                            multigot)
-@@ -15370,7 +15373,18 @@
+@@ -15587,7 +15590,18 @@ else
  fi
  
  
@@ -131,10 +134,11 @@ diff -Nur binutils-2.39.orig/ld/configure binutils-2.39/ld/configure
  
  # Check whether --enable-got was given.
  if test "${enable_got+set}" = set; then :
-diff -Nur binutils-2.39.orig/ld/configure.ac binutils-2.39/ld/configure.ac
---- binutils-2.39.orig/ld/configure.ac	2022-07-08 11:46:48.000000000 +0200
-+++ binutils-2.39/ld/configure.ac	2022-08-11 13:00:55.370470806 +0200
-@@ -102,6 +102,16 @@
+diff --git a/ld/configure.ac b/ld/configure.ac
+index 4a11787ae71..104a531fb0f 100644
+--- a/ld/configure.ac
++++ b/ld/configure.ac
+@@ -103,6 +103,16 @@ AC_SUBST(use_sysroot)
  AC_SUBST(TARGET_SYSTEM_ROOT)
  AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE)
  
@@ -151,10 +155,53 @@ diff -Nur binutils-2.39.orig/ld/configure.ac binutils-2.39/ld/configure.ac
  dnl Use --enable-gold to decide if this linker should be the default.
  dnl "install_as_default" is set to false if gold is the default linker.
  dnl "installed_linker" is the installed BFD linker name.
-diff -Nur binutils-2.39.orig/ld/ldfile.c binutils-2.39/ld/ldfile.c
---- binutils-2.39.orig/ld/ldfile.c	2022-07-08 11:46:48.000000000 +0200
-+++ binutils-2.39/ld/ldfile.c	2022-08-11 13:00:55.394470231 +0200
-@@ -117,6 +117,23 @@
+diff --git a/ld/ld.h b/ld/ld.h
+index 54d9079678c..9f0163b2911 100644
+--- a/ld/ld.h
++++ b/ld/ld.h
+@@ -166,6 +166,14 @@ typedef struct
+      in the linker script.  */
+   bool force_group_allocation;
+ 
++  /* If TRUE (the default) warn for uses of system directories when
++     cross linking.  */
++  bool poison_system_directories;
++
++  /* If TRUE (default FALSE) give an error for uses of system
++     directories when cross linking instead of a warning.  */
++  bool error_poison_system_directories;
++
+   /* Big or little endian as set on command line.  */
+   enum endian_enum endian;
+ 
+diff --git a/ld/ld.texi b/ld/ld.texi
+index 4fda259a552..11fd8f7547b 100644
+--- a/ld/ld.texi
++++ b/ld/ld.texi
+@@ -3108,6 +3108,18 @@ string identifying the original linked file does not change.
+ Passing @code{none} for @var{style} disables the setting from any
+ @code{--build-id} options earlier on the command line.
+ 
++@kindex --no-poison-system-directories
++@item --no-poison-system-directories
++Do not warn for @option{-L} options using system directories such as
++@file{/usr/lib} when cross linking.  This option is intended for use
++in chroot environments when such directories contain the correct
++libraries for the target system rather than the host.
++
++@kindex --error-poison-system-directories
++@item --error-poison-system-directories
++Give an error instead of a warning for @option{-L} options using
++system directories when cross linking.
++
+ @kindex --package-metadata=@var{JSON}
+ @item --package-metadata=@var{JSON}
+ Request the creation of a @code{.note.package} ELF note section.  The
+diff --git a/ld/ldfile.c b/ld/ldfile.c
+index dc9875d8813..49d899ee49d 100644
+--- a/ld/ldfile.c
++++ b/ld/ldfile.c
+@@ -327,6 +327,23 @@ ldfile_add_library_path (const char *name, bool cmdline)
      new_dirs->name = concat (ld_sysroot, name + strlen ("$SYSROOT"), (const char *) NULL);
    else
      new_dirs->name = xstrdup (name);
@@ -178,40 +225,24 @@ diff -Nur binutils-2.39.orig/ld/ldfile.c binutils-2.39/ld/ldfile.c
  }
  
  /* Try to open a BFD for a lang_input_statement.  */
-diff -Nur binutils-2.39.orig/ld/ld.h binutils-2.39/ld/ld.h
---- binutils-2.39.orig/ld/ld.h	2022-07-08 11:46:48.000000000 +0200
-+++ binutils-2.39/ld/ld.h	2022-08-11 13:00:55.382470519 +0200
-@@ -162,6 +162,14 @@
-      in the linker script.  */
-   bool force_group_allocation;
- 
-+  /* If TRUE (the default) warn for uses of system directories when
-+     cross linking.  */
-+  bool poison_system_directories;
-+
-+  /* If TRUE (default FALSE) give an error for uses of system
-+     directories when cross linking instead of a warning.  */
-+  bool error_poison_system_directories;
-+
-   /* Big or little endian as set on command line.  */
-   enum endian_enum endian;
- 
-diff -Nur binutils-2.39.orig/ld/ldlex.h binutils-2.39/ld/ldlex.h
---- binutils-2.39.orig/ld/ldlex.h	2022-07-08 11:46:48.000000000 +0200
-+++ binutils-2.39/ld/ldlex.h	2022-08-11 13:03:35.462636396 +0200
-@@ -164,6 +164,8 @@
+diff --git a/ld/ldlex.h b/ld/ldlex.h
+index 161a9d4d8dc..4ca50b9c299 100644
+--- a/ld/ldlex.h
++++ b/ld/ldlex.h
+@@ -168,6 +168,8 @@ enum option_values
    OPTION_CTF_VARIABLES,
    OPTION_NO_CTF_VARIABLES,
    OPTION_CTF_SHARE_TYPES,
 +  OPTION_NO_POISON_SYSTEM_DIRECTORIES,
 +  OPTION_ERROR_POISON_SYSTEM_DIRECTORIES,
-   OPTION_WARN_EXECSTACK,
-   OPTION_NO_WARN_EXECSTACK,
-   OPTION_WARN_RWX_SEGMENTS,
-diff -Nur binutils-2.39.orig/ld/ldmain.c binutils-2.39/ld/ldmain.c
---- binutils-2.39.orig/ld/ldmain.c	2022-07-08 11:46:48.000000000 +0200
-+++ binutils-2.39/ld/ldmain.c	2022-08-11 13:00:55.402470040 +0200
-@@ -321,6 +321,8 @@
+   OPTION_ERROR_EXECSTACK,
+   OPTION_NO_ERROR_EXECSTACK,
+   OPTION_WARN_EXECSTACK_OBJECTS,
+diff --git a/ld/ldmain.c b/ld/ldmain.c
+index e90c2021b33..43fe888eba8 100644
+--- a/ld/ldmain.c
++++ b/ld/ldmain.c
+@@ -325,6 +325,8 @@ main (int argc, char **argv)
    command_line.warn_mismatch = true;
    command_line.warn_search_mismatch = true;
    command_line.check_section_addresses = -1;
@@ -220,32 +251,11 @@ diff -Nur binutils-2.39.orig/ld/ldmain.c binutils-2.39/ld/ldmain.c
  
    /* We initialize DEMANGLING based on the environment variable
       COLLECT_NO_DEMANGLE.  The gcc collect2 program will demangle the
-diff -Nur binutils-2.39.orig/ld/ld.texi binutils-2.39/ld/ld.texi
---- binutils-2.39.orig/ld/ld.texi	2022-07-08 11:46:48.000000000 +0200
-+++ binutils-2.39/ld/ld.texi	2022-08-11 13:02:44.627853889 +0200
-@@ -2936,6 +2936,18 @@
- Passing @code{none} for @var{style} disables the setting from any
- @code{--build-id} options earlier on the command line.
- 
-+@kindex --no-poison-system-directories
-+@item --no-poison-system-directories
-+Do not warn for @option{-L} options using system directories such as
-+@file{/usr/lib} when cross linking.  This option is intended for use
-+in chroot environments when such directories contain the correct
-+libraries for the target system rather than the host.
-+
-+@kindex --error-poison-system-directories
-+@item --error-poison-system-directories
-+Give an error instead of a warning for @option{-L} options using
-+system directories when cross linking.
-+
- @kindex --package-metadata=@var{JSON}
- @item --package-metadata=@var{JSON}
- Request the creation of a @code{.note.package} ELF note section.  The
-diff -Nur binutils-2.39.orig/ld/lexsup.c binutils-2.39/ld/lexsup.c
---- binutils-2.39.orig/ld/lexsup.c	2022-07-08 11:46:48.000000000 +0200
-+++ binutils-2.39/ld/lexsup.c	2022-08-11 13:00:55.434469274 +0200
-@@ -608,6 +608,14 @@
+diff --git a/ld/lexsup.c b/ld/lexsup.c
+index 099dff8ecde..01626712c77 100644
+--- a/ld/lexsup.c
++++ b/ld/lexsup.c
+@@ -642,6 +642,14 @@ static const struct ld_option ld_options[] =
  		   "                                <method> is: share-unconflicted (default),\n"
  		   "                                             share-duplicated"),
      TWO_DASHES },
@@ -260,7 +270,7 @@ diff -Nur binutils-2.39.orig/ld/lexsup.c binutils-2.39/ld/lexsup.c
  };
  
  #define OPTION_COUNT ARRAY_SIZE (ld_options)
-@@ -620,6 +628,7 @@
+@@ -654,6 +662,7 @@ parse_args (unsigned argc, char **argv)
    int ingroup = 0;
    char *default_dirlist = NULL;
    char *shortopts;
@@ -268,7 +278,7 @@ diff -Nur binutils-2.39.orig/ld/lexsup.c binutils-2.39/ld/lexsup.c
    struct option *longopts;
    struct option *really_longopts;
    int last_optind;
-@@ -1679,6 +1688,14 @@
+@@ -1769,6 +1778,14 @@ parse_args (unsigned argc, char **argv)
  	  }
  	  break;
  
@@ -283,7 +293,7 @@ diff -Nur binutils-2.39.orig/ld/lexsup.c binutils-2.39/ld/lexsup.c
  	case OPTION_PUSH_STATE:
  	  input_flags.pushed = xmemdup (&input_flags,
  					sizeof (input_flags),
-@@ -1824,6 +1841,10 @@
+@@ -1922,6 +1939,10 @@ parse_args (unsigned argc, char **argv)
        command_line.soname = NULL;
      }
  
@@ -295,4 +305,5 @@ diff -Nur binutils-2.39.orig/ld/lexsup.c binutils-2.39/ld/lexsup.c
      {
        einfo (_("%P: missing --end-group; added as last command line option\n"));
 -- 
-2.31.1
+2.43.0
+

+ 5 - 9
package/binutils/Config.in.host

@@ -5,20 +5,13 @@ config BR2_PACKAGE_HOST_BINUTILS_SUPPORTS_CFI
 	default y
 	depends on !BR2_microblaze
 
-config BR2_PACKAGE_BINUTILS_HAS_NO_LIBSFRAME
-	bool
-
 choice
 	prompt "Binutils Version"
-	default BR2_BINUTILS_VERSION_2_40_X if !BR2_arc
+	default BR2_BINUTILS_VERSION_2_41_X if !BR2_arc
 	default BR2_BINUTILS_VERSION_ARC if BR2_arc
 	help
 	  Select the version of binutils you wish to use.
 
-config BR2_BINUTILS_VERSION_2_39_X
-	bool "binutils 2.39"
-	select BR2_PACKAGE_BINUTILS_HAS_NO_LIBSFRAME
-
 config BR2_BINUTILS_VERSION_2_40_X
 	bool "binutils 2.40"
 
@@ -29,14 +22,17 @@ config BR2_BINUTILS_VERSION_ARC
 	bool "binutils arc (2.41)"
 	depends on BR2_arc
 
+config BR2_BINUTILS_VERSION_2_42_X
+	bool "binutils 2.42"
+
 endchoice
 
 config BR2_BINUTILS_VERSION
 	string
 	default "arc-2023.09-release"	if BR2_BINUTILS_VERSION_ARC
-	default "2.39"		if BR2_BINUTILS_VERSION_2_39_X
 	default "2.40"		if BR2_BINUTILS_VERSION_2_40_X
 	default "2.41"		if BR2_BINUTILS_VERSION_2_41_X
+	default "2.42"		if BR2_BINUTILS_VERSION_2_42_X
 
 config BR2_BINUTILS_GPROFNG
 	bool "gprofng support"

+ 0 - 1
package/binutils/binutils.hash

@@ -1,5 +1,4 @@
 # From https://gcc.gnu.org/pub/binutils/releases/sha512.sum
-sha512  68e038f339a8c21faa19a57bbc447a51c817f47c2e06d740847c6e9cc3396c025d35d5369fa8c3f8b70414757c89f0e577939ddc0d70f283182504920f53b0a3  binutils-2.39.tar.xz
 sha512  a37e042523bc46494d99d5637c3f3d8f9956d9477b748b3b1f6d7dfbb8d968ed52c932e88a4e946c6f77b8f48f1e1b360ca54c3d298f17193f3b4963472f6925  binutils-2.40.tar.xz
 sha512  5df45d0bd6ddabdce4f35878c041e46a92deef01e7dea5facc97fd65cc06b59abc6fba0eb454b68e571c7e14038dc823fe7f2263843e6e627b7444eaf0fe9374  binutils-2.41.tar.xz
 sha512  155f3ba14cd220102f4f29a4f1e5cfee3c48aa03b74603460d05afb73c70d6657a9d87eee6eb88bf13203fe6f31177a5c9addc04384e956e7da8069c8ecd20a6  binutils-2.42.tar.xz

+ 2 - 8
package/binutils/binutils.mk

@@ -11,7 +11,7 @@ ifeq ($(BINUTILS_VERSION),)
 ifeq ($(BR2_arc),y)
 BINUTILS_VERSION = arc-2023.09-release
 else
-BINUTILS_VERSION = 2.40
+BINUTILS_VERSION = 2.41
 endif
 endif # BINUTILS_VERSION
 
@@ -105,19 +105,13 @@ endif
 # our TARGET_CONFIGURE_ARGS are taken into consideration for those
 BINUTILS_MAKE_ENV = $(TARGET_CONFIGURE_ARGS)
 
-ifeq ($(BR2_PACKAGE_BINUTILS_HAS_NO_LIBSFRAME),)
-define BINUTILS_INSTALL_STAGING_LIBSFRAME
-	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libsframe DESTDIR=$(STAGING_DIR) install
-endef
-endif
-
 # We just want libbfd, libiberty and libopcodes,
 # not the full-blown binutils in staging
 define BINUTILS_INSTALL_STAGING_CMDS
 	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/bfd DESTDIR=$(STAGING_DIR) install
 	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/opcodes DESTDIR=$(STAGING_DIR) install
 	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libiberty DESTDIR=$(STAGING_DIR) install
-	$(BINUTILS_INSTALL_STAGING_LIBSFRAME)
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/libsframe DESTDIR=$(STAGING_DIR) install
 endef
 
 # If we don't want full binutils on target

+ 1 - 1
package/elf2flt/elf2flt.mk

@@ -23,7 +23,7 @@ HOST_ELF2FLT_AUTORECONF = YES
 # considered because Buildroot only supports ARC CPUs with a MMU and
 # therefore host-elf2flt is never used on ARC. libiberty.a has
 # remained at the same location.
-ifeq ($(BR2_BINUTILS_VERSION_2_39_X)$(BR2_BINUTILS_VERSION_2_40_X),y)
+ifeq ($(BR2_BINUTILS_VERSION_2_40_X),y)
 HOST_ELF2FLT_LIBBFD_PATH = $(HOST_BINUTILS_DIR)/bfd/libbfd.a
 else
 HOST_ELF2FLT_LIBBFD_PATH = $(HOST_BINUTILS_DIR)/bfd/.libs/libbfd.a

+ 1 - 1
package/hwdata/hwdata.hash

@@ -1,4 +1,4 @@
 # Locally calculated
-sha256  0db28dc635d5059ad23d068d2e56ef5dc540f95bc813ea5a3c0f5d63b03d20d6  hwdata-0.373.tar.gz
+sha256  b98ef646d530d5fd3afa3180efbf7c8e22d3da0088f5836f41ee25380d87b092  hwdata-0.379.tar.gz
 sha256  8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  COPYING
 sha256  21d0406f93e884a050426ebc21931839a45d56bfcbcbfdda7686d583f36f107f  LICENSE

+ 1 - 1
package/hwdata/hwdata.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-HWDATA_VERSION = 0.373
+HWDATA_VERSION = 0.379
 HWDATA_SITE = $(call github,vcrhonek,hwdata,v$(HWDATA_VERSION))
 HWDATA_LICENSE = GPL-2.0+, BSD-3-Clause, XFree86 1.0
 HWDATA_LICENSE_FILES = COPYING LICENSE

+ 2 - 1
package/iozone/iozone.hash

@@ -1,2 +1,3 @@
 # Locally calculated
-sha256  5a52f5017e022e737f5b55f320cc6ada0f2a8c831a5f996cce2a44e03e91c038  iozone3_493.tgz
+sha256  114ce5c071873b9a2c7ba6e73d05d5ef7e66564392acbfcdc0b3261db10fcbe7  iozone3_506.tar
+sha256  bff7909fd698708d15613a4fb977a193cff98f44ef170c2dc1dd502974df75b2  docs/License.txt

+ 3 - 4
package/iozone/iozone.mk

@@ -4,12 +4,11 @@
 #
 ################################################################################
 
-IOZONE_VERSION = 3.493
-IOZONE_SOURCE = iozone$(subst .,_,$(IOZONE_VERSION)).tgz
+IOZONE_VERSION = 3.506
+IOZONE_SOURCE = iozone$(subst .,_,$(IOZONE_VERSION)).tar
 IOZONE_SITE = http://www.iozone.org/src/current
 IOZONE_LICENSE = IOzone license (NO DERIVED WORKS ALLOWED)
-# IOzone license details can be found at:
-# http://www.iozone.org/docs/Iozone_License.txt
+IOZONE_LICENSE_FILES = docs/License.txt
 
 # AIO support not available on uClibc, use the linux (non-aio) target.
 ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)

+ 2 - 2
package/mc/mc.hash

@@ -1,4 +1,4 @@
-# Hash from http://ftp.midnight-commander.org/mc-4.8.30.sha256
-sha256  5ebc3cb2144b970c5149fda556c4ad50b78780494696cdf2d14a53204c95c7df  mc-4.8.30.tar.xz
+# Hash from http://ftp.midnight-commander.org/mc-4.8.31.sha256
+sha256  24191cf8667675b8e31fc4a9d18a0a65bdc0598c2c5c4ea092494cd13ab4ab1a  mc-4.8.31.tar.xz
 # sha256 locally computed:
 sha256  5576bbec76296e1c8e081f7037ebd01bdada388635f58d844a2f20d37bbe4284  COPYING

+ 1 - 1
package/mc/mc.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-MC_VERSION = 4.8.30
+MC_VERSION = 4.8.31
 MC_SOURCE = mc-$(MC_VERSION).tar.xz
 MC_SITE = http://ftp.midnight-commander.org
 MC_LICENSE = GPL-3.0+

+ 1 - 1
package/mongoose/mongoose.hash

@@ -1,3 +1,3 @@
 # Locally computed:
-sha256  91e719e164816b349be3cb71293927f3f6abbe3fb02187e2d9b5e56f542c2063  mongoose-7.12.tar.gz
+sha256  5c9dc8d1d1762ef483b6d2fbf5234e421ca944b722225bb533d2d0507b118a0f  mongoose-7.13.tar.gz
 sha256  4ba646f5a7012d8b52f3a74398e446f56960dde0572f7241a2215430da5dd5a2  LICENSE

+ 1 - 1
package/mongoose/mongoose.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-MONGOOSE_VERSION = 7.12
+MONGOOSE_VERSION = 7.13
 MONGOOSE_SITE = $(call github,cesanta,mongoose,$(MONGOOSE_VERSION))
 MONGOOSE_LICENSE = GPL-2.0
 MONGOOSE_LICENSE_FILES = LICENSE

+ 1 - 1
package/musl/Config.in

@@ -15,7 +15,7 @@ config BR2_PACKAGE_MUSL_ARCH_SUPPORTS
 	default y if BR2_powerpc
 	default y if BR2_powerpc64
 	default y if BR2_powerpc64le
-	default y if BR2_RISCV_64
+	default y if BR2_riscv
 	default y if BR2_sh
 	default y if BR2_x86_64
 	depends on !BR2_POWERPC_CPU_HAS_SPE # not supported, build breaks

+ 2 - 2
package/musl/musl.hash

@@ -1,4 +1,4 @@
 # Locally calculated after checking pgp signature from
-# http://musl.libc.org/releases/musl-1.2.4.tar.gz.asc
-sha256  7a35eae33d5372a7c0da1188de798726f68825513b7ae3ebe97aaaa52114f039  musl-1.2.4.tar.gz
+# http://musl.libc.org/releases/musl-1.2.5.tar.gz.asc
+sha256  a9a118bbe84d8764da0ea0d28b3ab3fae8477fc7e4085d90102b8596fc7c75e4  musl-1.2.5.tar.gz
 sha256  f9bc4423732350eb0b3f7ed7e91d530298476f8fec0c6c427a1c04ade22655af  COPYRIGHT

+ 1 - 1
package/musl/musl.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-MUSL_VERSION = 1.2.4
+MUSL_VERSION = 1.2.5
 MUSL_SITE = http://musl.libc.org/releases
 MUSL_LICENSE = MIT
 MUSL_LICENSE_FILES = COPYRIGHT

+ 3 - 3
package/pcre2/pcre2.hash

@@ -1,5 +1,5 @@
 # Locally calculated after checking pgp signature:
-# https://github.com/PhilipHazel/pcre2/releases/download/pcre2-10.42/pcre2-10.42.tar.bz2.sig
-sha256  8d36cd8cb6ea2a4c2bb358ff6411b0c788633a2a45dabbf1aeb4b701d1b5e840  pcre2-10.42.tar.bz2
+# https://github.com/PhilipHazel/pcre2/releases/download/pcre2-10.43/pcre2-10.43.tar.bz2.sig
+sha256  e2a53984ff0b07dfdb5ae4486bbb9b21cca8e7df2434096cc9bf1b728c350bcb  pcre2-10.43.tar.bz2
 # Locally computed
-sha256  87d884eceb7fc54611470ce9f74280d28612b0c877adfc767e9676892a638987  LICENCE
+sha256  030087e2e8dd7c1bdd26057d25d4ded8f45bbf01ad458d68665ad04b8b0fbedf  LICENCE

+ 1 - 1
package/pcre2/pcre2.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-PCRE2_VERSION = 10.42
+PCRE2_VERSION = 10.43
 PCRE2_SITE = https://github.com/PCRE2Project/pcre2/releases/download/pcre2-$(PCRE2_VERSION)
 PCRE2_SOURCE = pcre2-$(PCRE2_VERSION).tar.bz2
 PCRE2_LICENSE = BSD-3-Clause

+ 12 - 0
package/python-jc/Config.in

@@ -0,0 +1,12 @@
+config BR2_PACKAGE_PYTHON_JC
+	bool "python-jc"
+	help
+	  Converts the output of popular command-line tools and file-
+	  types to JSON.
+
+	  Optionally requires python-pygments for syntax highlighting,
+	  python-ruamel-yaml for yaml parsing and output and
+	  python-xmltodict for xml parsing. PYTHON3_PYEXPAT is required
+	  for xml and plist parsers.
+
+	  https://github.com/kellyjonbrazil/jc

+ 5 - 0
package/python-jc/python-jc.hash

@@ -0,0 +1,5 @@
+# md5, sha256 from https://pypi.org/pypi/jc/json
+md5  80e4c7d46ec856255577c6b364e7f931  jc-1.25.1.tar.gz
+sha256  683352e903ece9a86eae0c3232188e40178139e710c740a466ef91ed87c4cc7e  jc-1.25.1.tar.gz
+# Locally computed sha256 checksums
+sha256  6493f2db400f4166ca0956cf192a41aa092bd1396ff463e7fdaf51f257c10497  LICENSE.md

+ 14 - 0
package/python-jc/python-jc.mk

@@ -0,0 +1,14 @@
+################################################################################
+#
+# python-jc
+#
+################################################################################
+
+PYTHON_JC_VERSION = 1.25.1
+PYTHON_JC_SOURCE = jc-$(PYTHON_JC_VERSION).tar.gz
+PYTHON_JC_SITE = https://files.pythonhosted.org/packages/53/a6/065f0796a0a21bc040bc88c8a33410c12729a2a6f4c269d0349f685796da
+PYTHON_JC_SETUP_TYPE = setuptools
+PYTHON_JC_LICENSE = MIT, BSD-3-Clause (bundled pbPlist)
+PYTHON_JC_LICENSE_FILES = LICENSE.md
+
+$(eval $(python-package))

+ 2 - 2
package/python-uvicorn/python-uvicorn.hash

@@ -1,5 +1,5 @@
 # md5, sha256 from https://pypi.org/pypi/uvicorn/json
-md5  a98f96c2578d9e6d454e271d0eae3ba3  uvicorn-0.27.0.post1.tar.gz
-sha256  54898fcd80c13ff1cd28bf77b04ec9dbd8ff60c5259b499b4b12bb0917f22907  uvicorn-0.27.0.post1.tar.gz
+md5  98f40515e34fb49e9d2842b6a147acec  uvicorn-0.27.1.tar.gz
+sha256  3d9a267296243532db80c83a959a3400502165ade2c1338dea4e67915fd4745a  uvicorn-0.27.1.tar.gz
 # Locally computed sha256 checksums
 sha256  efe1acf3e62fb99c288b0ec73e5a773b7268ef4320fe757ea994214e4b63c371  LICENSE.md

+ 2 - 2
package/python-uvicorn/python-uvicorn.mk

@@ -4,9 +4,9 @@
 #
 ################################################################################
 
-PYTHON_UVICORN_VERSION = 0.27.0.post1
+PYTHON_UVICORN_VERSION = 0.27.1
 PYTHON_UVICORN_SOURCE = uvicorn-$(PYTHON_UVICORN_VERSION).tar.gz
-PYTHON_UVICORN_SITE = https://files.pythonhosted.org/packages/38/56/7bc5cf1d693d0c8e5d9dd66c29808691c17260b31346e4ddfbee26ba9bc2
+PYTHON_UVICORN_SITE = https://files.pythonhosted.org/packages/09/d8/8aa69c76585035ca81851d99c3b00fd6be050aefd478a5376ff9fc5feb69
 PYTHON_UVICORN_SETUP_TYPE = pep517
 PYTHON_UVICORN_LICENSE = BSD-3-Clause
 PYTHON_UVICORN_LICENSE_FILES = LICENSE.md

+ 1 - 1
package/quickjs/quickjs.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  e8afe386f875d0e52310ea91aa48e2b0e04182e821f19147794e3e272f4c8d8c  quickjs-2023-12-09.tar.xz
+sha256  3c4bf8f895bfa54beb486c8d1218112771ecfc5ac3be1036851ef41568212e03  quickjs-2024-01-13.tar.xz
 sha256  f41baf09eef895d468d18c23055d74f711e4b8b2641cef279b5d71285c07bfe8  LICENSE

+ 1 - 1
package/quickjs/quickjs.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-QUICKJS_VERSION = 2023-12-09
+QUICKJS_VERSION = 2024-01-13
 QUICKJS_SOURCE = quickjs-$(QUICKJS_VERSION).tar.xz
 QUICKJS_SITE = https://bellard.org/quickjs
 QUICKJS_LICENSE = MIT

+ 3 - 3
package/xz/xz.hash

@@ -1,9 +1,9 @@
 # Locally calculated after checking pgp signature
-# https://tukaani.org/xz/xz-5.4.5.tar.bz2.sig
-sha256  8ccf5fff868c006f29522e386fb4c6a1b66463fbca65a4cfc3c4bd596e895e79  xz-5.4.5.tar.bz2
+# https://github.com/tukaani-project/xz/releases/download/v5.4.6/xz-5.4.6.tar.bz2.sig
+sha256  913851b274e8e1d31781ec949f1c23e8dbcf0ecf6e73a2436dc21769dd3e6f49  xz-5.4.6.tar.bz2
 
 # Hash for license files
-sha256  72d7ef9c98be319fd34ce88b45203b36d5936f9c49e82bf3198ffee5e0c7d87e  COPYING
+sha256  29a1e305b2e34eefe5d4602d00cde1d528b71c5d9f2eec5106972cf6ddb6f73f  COPYING
 sha256  8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  COPYING.GPLv2
 sha256  3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986  COPYING.GPLv3
 sha256  dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551  COPYING.LGPLv2.1

+ 2 - 2
package/xz/xz.mk

@@ -4,9 +4,9 @@
 #
 ################################################################################
 
-XZ_VERSION = 5.4.5
+XZ_VERSION = 5.4.6
 XZ_SOURCE = xz-$(XZ_VERSION).tar.bz2
-XZ_SITE = https://tukaani.org/xz
+XZ_SITE = https://github.com/tukaani-project/xz/releases/download/v$(XZ_VERSION)
 XZ_INSTALL_STAGING = YES
 XZ_CONF_ENV = ac_cv_prog_cc_c99='-std=gnu99'
 XZ_LICENSE = Public Domain, GPL-2.0+, GPL-3.0+, LGPL-2.1+

+ 1 - 1
package/zlib-ng/zlib-ng.hash

@@ -1,3 +1,3 @@
 # Locally calculated
-sha256  d20e55f89d71991c59f1c5ad1ef944815e5850526c0d9cd8e504eaed5b24491a  zlib-ng-2.1.3.tar.gz
+sha256  a5d504c0d52e2e2721e7e7d86988dec2e290d723ced2307145dedd06aeb6fef2  zlib-ng-2.1.6.tar.gz
 sha256  d3c80be055d94d798eaa786116e84fa0b010bc11420b5d2060d978ea77845436  LICENSE.md

+ 1 - 1
package/zlib-ng/zlib-ng.mk

@@ -4,7 +4,7 @@
 #
 ################################################################################
 
-ZLIB_NG_VERSION = 2.1.3
+ZLIB_NG_VERSION = 2.1.6
 ZLIB_NG_SITE = $(call github,zlib-ng,zlib-ng,$(ZLIB_NG_VERSION))
 ZLIB_NG_LICENSE = Zlib
 ZLIB_NG_LICENSE_FILES = LICENSE.md

+ 2 - 2
support/config-fragments/autobuild/br-arm-internal-glibc.config

@@ -1,6 +1,6 @@
 BR2_arm=y
 BR2_cortex_a8=y
 BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
-BR2_BINUTILS_VERSION_2_39_X=y
-BR2_GCC_VERSION_12_X=y
+BR2_BINUTILS_VERSION_2_42_X=y
+BR2_GCC_VERSION_13_X=y
 BR2_TOOLCHAIN_BUILDROOT_CXX=y

+ 22 - 0
support/testing/tests/package/test_python_jc.py

@@ -0,0 +1,22 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy3Jc(TestPythonPackageBase):
+    __test__ = True
+    # We deliberately run the test without the optional dependencies,
+    # as this configuration is less tested upstream.
+    config = TestPythonPackageBase.config + \
+        """
+        BR2_PACKAGE_PYTHON3=y
+        BR2_PACKAGE_PYTHON_JC=y
+        """
+    timeout = 60
+
+    def test_run(self):
+        self.login()
+        cmd = "jc -h > /dev/null 2>&1"
+        self.assertRunOk(cmd, timeout=self.timeout)
+        cmd = "jc id | grep -q root"
+        self.assertRunOk(cmd, timeout=self.timeout)
+        cmd = "jc env | grep -q PATH"
+        self.assertRunOk(cmd, self.timeout)